繁体   English   中英

多模块 maven 项目中的 JAXBContext 缓存

[英]JAXBContext cache in multi-module maven project

JAXB 规范声明 JAXB 上下文是线程安全的。 因为它的创建非常耗时,所以鼓励只创建/初始化一次。 如何在多模块 maven 项目中正确执行? 将类传递为 arguments 可能会引入一些循环依赖关系,将字符串传递为 package 名称似乎很乏味且容易出错。 有什么推荐的方法吗?

而不是在每个模块中都有 JAXB 映射的类,将它们组合在一个模式jaxbapi模块(或任何最适合的名称)中。 在该模块中,您可以放置工厂以获取 JAXBContext 实例。

如果您不想在同一个模块中混合映射类,对于每个使用 JAXB 的模块,将映射类提取到另一个模块。 例如,如果您有moduleAmoduleBmoduleC ,提取 JAXB 映射类到moduleA-schemamoduleB-schemamoduleC-schema 这样,您可以将 JAXBContext 实例的工厂放在依赖于moduleA-schemamoduleB-schemamoduleC-schema的实用程序模块中,但不依赖于原始模块,这样您就可以避免循环依赖。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM