我应该如何使用Spring / Hibernate项目设置业务对象
我是第一次设置Spring 3 / Hibernate 3.6应用程序架构并配置了所有部件,但需要有关业务层的正确架构设计的更多信息。 请提供建议或指向资源的链接,这些资源将建议在我的控制器和DAO之间建立单独的业务层。 是否有针对业务对象的建议技术或通常使用的POJO? 对于业务对象,应用程序是否仅使用与我的控制器位于同一级别的单独文件夹进行划分?
这取决于应用程序的大小,业务对象的作用以及它们彼此之间的依赖关系。
通常,业务对象将驻留在一个或多个文件夹/包中,具体取决于
- function,和
- 他们相互依赖
POJO通常会在您拥有Spring时专门负责处理交易性和其他交叉问题。
我还看到了非常大的应用程序的设计,其中服务层和DAO被分离到不同的应用程序中以实现更松散的耦合。 所以它实际上取决于你如何布局应用程序结构的各种因素。
使用业务层来注释和定义您的事务上下文(事务控制)。 您可以根据function要求打包它。 没有固定规则。 只要您明确区分您的问题,就可以使用简单的Java对象。
确保您不在业务/服务对象中使用特定于hibernate / db的API。
在POJO上使用注释来定义关系/映射。
- 如何使用JPA检索多个对象?
- 无法阻止Hibernate将日志写入控制台(log4j.properties没问题)
- 事务注释在Spring Boot中不起作用
- 数据未保存:对象引用未保存的瞬态实例 – 在刷新之前保存瞬态实例
- 使用Oracle 10g时,Hibernate对浮点列的模式validation的已知问题有哪些最佳解决方法?
- Hibernate的会话线程安全吗?
- 当数据正确显示时,为什么我在Spring MVC Web应用程序中获得Hibernate LazyInitializationException?
- 与共享主键的OneToOne关系生成n + 1个选择; 任何解决方法?
- org.hibernate.LazyInitializationException:无法初始化代理 – 没有会话