相关疑难解决方法(0)

具有动态字段的Java类

我正在寻找构建动态Java类的聪明方法,即可以在运行时添加/删除字段的类.使用场景:我有一个编辑器,用户应该能够在运行时向模型添加字段,甚至可以在运行时创建整个模型.

一些设计目标:

  • 如果可能的话,在没有强制转换的情况下键入safe,以用于动态字段的自定义代码(该代码将来自以不可预见的方式扩展模型的插件).
  • 性能良好(你能打败HashMap吗?也许在设置过程中使用数组并为字段分配索引?)
  • 字段"重用"(即如果您在多个位置使用相同类型的字段,则应该可以将其定义一次然后重复使用).
  • 计算字段取决于其他字段的值
  • 当字段更改值时(不一定通过Beans API),应发送信号
  • "自动"父子关系(当您将子项添加到父项时,子项中的父指针应设置为"free").
  • 容易明白
  • 使用方便

请注意,这是一个"圈外思考"的问题.我将在下面发布一个例子让你心情愉快:-)

java field dynamic

6
推荐指数
1
解决办法
2万
查看次数

JAXB Ant任务错误:xjc2 [ERROR] null未知位置

使用Ant的xjc2任务绑定一些有效的XML文档时,我收到以下失败消息:

[xjc2] [ERROR] null
[xjc2] unknown location
Run Code Online (Sandbox Code Playgroud)

这些文档与已成功绑定的其他文件非常相似,所有导入的模式都存在.生成以详细模式运行xjc:

Parent is not Defined Class...I cannot get the fields from this class
Run Code Online (Sandbox Code Playgroud)

任何人都知道这意味着什么?

java ant jaxb xjc

5
推荐指数
1
解决办法
5137
查看次数

JAXB解组树结构

我有 XML 输入,它本质上是一个树结构。目标是(取消)将代码编组到 Java 类中。

<config>

<key-value-pair>
   <key>Key1</key>
   <value>Value1</value>
</key-value-pair>

<key-value-pair>
   <key>Key2</key>
   <value>
      <key-value-pair>
         <key>Subkey2</key>
         <value>Value999</value>
      </key-value-pair>
   </value>
</key-value-pair>

</config>
Run Code Online (Sandbox Code Playgroud)

XML 包含典型的键/值对。和每一个值可以包含另一个键/值对,或列表键/值对或只是一个单一的字符串值

<config>

<key-value-pair>
   <key>Key1</key>
   <value>Value1</value>
</key-value-pair>

<key-value-pair>
   <key>Key2</key>
   <value>
      <key-value-pair>
         <key>Subkey2</key>
         <value>Value999</value>
      </key-value-pair>
   </value>
</key-value-pair>

</config>
Run Code Online (Sandbox Code Playgroud)

然后我只有另一个包装类

@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
static class KeyValuePair {

    @XmlElement(name="key")
    private String key;

    @XmlElement(name="value")
    private String value;   // here I don't know how to reflect
                            // the choice of String or another
                            // list of KeyValuePair objects
    @XmlElement(name="value")
    private List<KeyValuePair> valuePairs; …
Run Code Online (Sandbox Code Playgroud)

java xml tree jaxb unmarshalling

5
推荐指数
1
解决办法
1436
查看次数

标签 统计

java ×3

jaxb ×2

ant ×1

dynamic ×1

field ×1

tree ×1

unmarshalling ×1

xjc ×1

xml ×1