【问题标题】:Generating xml from database in spring boot java [closed]在spring boot java中从数据库生成xml [关闭]
【发布时间】:2019-11-19 15:37:17
【问题描述】:

我想生成/编组我通过 jpa 查询从表中获得的 java 对象的流/集合到 xml。我正在处理这些 java 对象并将它们批量转换为 xml。我想知道如果 xml 的大小将来增长,其中哪些会表现得更好并且可以更好地扩展: 1. 斯塔克斯 2.JAXB 3. 超流

或者是否有任何其他将 java 对象转换为性能更好的 xml 的 api?我尝试浏览所有这些,但只能找到将 xml 解组/转换为 java 对象的示例。

【问题讨论】:

    标签: java xml spring stax


    【解决方案1】:

    我喜欢使用 JAXB,我尝试过使用非常庞大的 xml,并且效果很好。

    这将是一个将对象编组为字符串的示例。

    namespace 是一个Map,其中我有类和.xsd 相关的映射

    private String marshallXml(Object request, Class<?> clazz) {
    
            try {
    
                JAXBContext context = JAXBContext.newInstance(clazz);
                Marshaller marshaller = null;
    
                if (context != null) {
                    marshaller = context.createMarshaller();
                    marshaller.setProperty("jaxb.noNamespaceSchemaLocation", namespacesMap.get(clazz));
                    StringWriter sw = new StringWriter();
                    marshaller.marshal(request, sw);
                    return sw.toString();
                }
    
            } catch (Exception e) {
                return null;
            }
    
        return null;
    }
    

    Map 的示例:

    Map<Class<?>, String> map = new HashMap<>();
    map.put(MyClass.class,"http://urlWhereTheXSDisUploaded/MyClass.xsd");
    

    【讨论】:

      猜你喜欢
      • 2017-05-28
      • 2019-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多