小编Fel*_* C.的帖子

Java 常量继承

我注意到我可以这样做:

public class Message {

    public static final int MIN_BYTES = 5;
}
Run Code Online (Sandbox Code Playgroud)

...并将此类设置为另一个类的父类,并使用另一个值设置相同的常量,例如:

public class Ack extends Message {

    public static final int MIN_BYTES = 1;
}
Run Code Online (Sandbox Code Playgroud)

由于编译器没有抱怨,这使我想到了上述问题:

  1. 这些变量真的一样吗?
  2. 我会说它是最具体的,所以在这种情况下来自 Ack 类。真的吗?
  3. 常量不能改变它们的值(它是最终的),所以如果问题 1 是真的,那怎么可能?

谢谢!

java

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

哪些方法可用于从Java中的文件返回有效和无效的XML数据?

我有以下数据应该是XML:

<?xml version="1.0" encoding="UTF-8"?>
<Product>
    <id>1</id>
    <description>A new product</description>
    <price>123.45</price>
</Product>

<Product>
    <id>1</id>
    <description>A new product</description>
    <price>123.45</price>
</Product>

<ProductTTTTT>
    <id>1</id>
    <description>A new product</description>
    <price>123.45</price>
</Product>

<Product>
    <id>1</id>
    <description>A new product</description>
    <price>123.45</price>
</ProductAAAAAA>
Run Code Online (Sandbox Code Playgroud)

所以,基本上我有多个根元素(product)...

关键是我正在尝试将这些数据转换为2个XML文档,1个用于有效节点,1个用于无效节点.

有效节点:

<Product>
   ...
</Product>
Run Code Online (Sandbox Code Playgroud)

节点无效:<ProductTTTTT>...</Product><Product>...</ProductAAAAAA>

然后我在想如何使用JAVA(而不是web)实现这一目标.

  • 如果我没有错,使用XSD验证它将使整个文件无效,因此不是一个选项.
  • 使用默认的JAXB解析器(unmarshaller)将导致上面的项目,因为它在内部创建了我的实体的XSD.
  • 使用XPath只是(据我所知)将只返回整个文件,我没有找到像GET这样的方法!VALID(这只是为了解释......)
  • 使用XQuery(可能?)..顺便说一下,如何在JAXB中使用XQuery?
  • XSL(T)将在XPath上引发同样的事情,因为它使用XPath来选择内容.

那么......我可以使用哪种方法来实现目标?(如果可能的话,请提供链接或代码)

java xml xslt xquery jaxb

3
推荐指数
1
解决办法
57
查看次数

标签 统计

java ×2

jaxb ×1

xml ×1

xquery ×1

xslt ×1