小编Ant*_*kov的帖子

log4j:输出文件取决于源调用类

假设我有一个公共类,其logger由其名称初始化:

public class SomeCalculationLogic {
private static final Log log = LogFactory.getLog(SomeCalculationLogic .class);

public void doCalculation() {
    log.info("doing calculations...");
    ...
    }
}
Run Code Online (Sandbox Code Playgroud)

这个类由两个逻辑上不同的流使用 - 比如从类"BackgroundTask"和"UserRequest"调用它.如何使SomeCalculationLogic的记录器的输出重定向到不同的日志文件(如background.log和main.log),具体取决于调用类是什么?

java log4j

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

使用 JAXB 解组 XML 文档的单个元素

我对 JAXB 很陌生。我有一个 XML 文档,其中包含一个元素中的序列化对象:

<?xml>
 <structure>
   ...blah-blah
   <serializedElement>
     ... JAXB xml block
   </serializedElement>
  </structure>
</xml>
Run Code Online (Sandbox Code Playgroud)

我如何解组这样的元素?

我写了以下内容:

org.w3c.dom.Document doc = db.parse(new StringInputStream(rawXml));
org.w3c.dom.Element obj = (org.w3c.dom.Element) doc.getElementsByTagName("serializedElement").item(0);
JAXBElement<MyJaxBObject> je = um.unmarshal(obj, MyJaxBObject.class);
System.out.println(je.getValue());  
Run Code Online (Sandbox Code Playgroud)

但这总是返回空值对象(尽管是正确的类)。

我究竟做错了什么?

谢谢!

xml jaxb unmarshalling

4
推荐指数
1
解决办法
5286
查看次数

标签 统计

java ×1

jaxb ×1

log4j ×1

unmarshalling ×1

xml ×1