写了个简单工厂,用来生成DAO的实现类,这个工厂应该用单例好还是静态好呢?
1个回答
展开全部
单例和静态有什么冲突吗?两个都可以用。
是否单例看你工厂的设计,如果这个工厂可以生成各种各样足够满足需求的dao,那当然单例就行了。如果你要生成用于连接不同数据库的dao,而连接的路径、帐号什么的又是写在工厂属性里面,显然就不能单例,否则并发时一个线程刚改好连接属性还没来得及生成就被另一个线程又改掉了,那就会出错,限制线程安全吧,又会影响性能。
静态也同样看设计,如果不需要new出多个工厂对象用于分别生产不同的dao,就可以设计成静态的
是否单例看你工厂的设计,如果这个工厂可以生成各种各样足够满足需求的dao,那当然单例就行了。如果你要生成用于连接不同数据库的dao,而连接的路径、帐号什么的又是写在工厂属性里面,显然就不能单例,否则并发时一个线程刚改好连接属性还没来得及生成就被另一个线程又改掉了,那就会出错,限制线程安全吧,又会影响性能。
静态也同样看设计,如果不需要new出多个工厂对象用于分别生产不同的dao,就可以设计成静态的
AiPPT
2024-09-19 广告
2024-09-19 广告
在北京饼干科技有限公司,我们致力于提供便捷高效的办公解决方案。关于AIPPT制作,我们虽不直接提供软件服务,但深知市场上有众多免费或成本效益高的PPT制作工具可供选择。用户可通过在线平台或软件市场轻松获取,享受从模板选择到内容编辑的一站式免...
点击进入详情页
本回答由AiPPT提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询