0 0

关于dao的单例5

想问下dao单例问题, 如果系统全局只有一个dao  里面的方法都是通过泛型方式声明的方便service调用。这样写会不会有问题?
dao里面没有任何属性,不存在线程共享的问题。但是我担心session会不会混乱。比如之前一个用户提交数据,session关闭,紧接着又一个用户删除数据却拿不到session。请大牛帮忙解答下!!!


我说的是系统全局只有一个单例模式的dao。  并不是一个service对应一个dao那种的!!!
DAO 
2011年10月21日 13:41

3个答案 按时间排序 按投票排序

0 0

像你说的这样,其实根本都不需要用单例,用静态方法就全部解决了。
但其实Spring的IOC是让Service注入DAO的接口,这样达到松耦合。不管是单例和静态方法都不能很好的IOC。

2011年10月22日 11:14
0 0

但是要注意的是,假如你的dao里面有多个同步过的方法(比如F1,F2),那么在线程A调用F1的时候,线程B是不能调用到F2的,会被阻塞。影响性能。

2011年10月21日 13:59
0 0

你把session放在threadLocal里面管理,不会出现这种情况。
session里面是存放的connection,而这个connection是从连接池拿出来的,用完了放回连接池,需要的时候从里面提取。

2011年10月21日 13:57

相关推荐

Global site tag (gtag.js) - Google Analytics