是否可以从xml加载java类型

时间:2013-04-02 16:56:49

标签: java class dynamic loading

以不同的角度将其与示例......

联系起来

我在xml文件中定义类属性(几乎就像hbm文件一样) 例如

<class name="my.package.Employee">
<prop name="ename" type="string"> <<legth of string in xml format>> </prop>
<prop name="dob" type="date"/> 
</class>

在我的java代码中,我应该能够直接使用这个类。

import my.package;

method1(){
    Employee e = new Employee();
    e.name = "My Name";
    e.dob = "04/02/2000";
}

我的实际问题是:如何告诉JVM从不同的格式加载/形成java类/类型,而不仅仅是'.java'文件。

- 以下事情只是对未来的一个想法。

今天我用XML格式解释了它。也许明天我会写一个翻译来理解文本段落中的类定义。

“每家公司都重新评估了许多员工。每位员工都有姓名和年龄。姓名使用最多50个字母,年龄将根据出生日期计算。”

使用此文本,JVM应加载Company类和Employee类。

公司类应该有一个list / set属性和相应的员工getter。 员工类应具有名称,dob属性和年龄,但计算年龄。

任何想法?

2 个答案:

答案 0 :(得分:1)

如何告诉JVM从不同的格式加载/形成java类/类型,而不仅仅是'.java'文件。

它实际上是一个类文件,你不能。 您有几个工具可以使用xjc compiler

等XML模式文件生成Java源文件

答案 1 :(得分:1)

您可以通过代码生成解决问题:您可以在运行时或构建时生成和编译。

基本上,您阅读了描述文件(无论是xml还是自然语言描述),并编写包含定义您类的所有代码的.java文件。 类似的东西写成here