【发布时间】:2017-07-25 19:12:27
【问题描述】:
如今,通常很多应用程序都使用 Spring,它负责处理应用程序中 pojo 类的生命周期。但是如果我的应用程序由于其他一些问题而无法使用 Spring 怎么办。如何从应用的 Service 层到 DAO 层。
目前这就是我正在做的事情。
public class MyServiceImpl{
private static MyDAO daoInstance=new MyDAO();
public void someMethod(){
daoInstance.methodToCall();
}
}
public class MyDAO{
public void methodToCall(){
}
}
将 MyServiceImpl 中的 daoInstance 保持为静态可确保所有 ServiceImpl 对象中只有一个实例。但是如果很多用户同时访问同一段代码,这不会造成并发问题吗?
但是,如果我不保持静态,每个 MyServiceImpl 对象都会有一个 daoInstance。这不会在堆中留下这么多对象吗?如何管理这些对象的生命周期。
我想了解从应用程序的一层导航到另一层的正确方法是什么,同时牢记并发性、性能和其他此类因素。
感谢您的帮助。
【问题讨论】:
标签: java design-patterns concurrency object-lifetime