JDBC多数据库WEB系统的设计讨论。
最近开发一套产品,要求支持oracle,mssql.沿用MVC架构,使用struts框架。最先想到的便是两套SQL语句。
DB连接类通过读取配置文件获得连接,service类控制所有dao层的方法.凡是SQL语句不能通用的方法,全部写两个。在调用service类时判断,如果是oracle数据库,便调用dao的oracle方法,反之调用mssql方法。
配置文件和DAO类省略。以下是service中的一个方法
public List<Product> findAll(PageModel page) { if(DB.getServer().equals("oracle")) return ProductDaoImp.findAllForsun(PageModel page); else return ProductDaoImp.findAllForms(PageModel page); }
起初用的还可以,但闲暇时觉得还是有些麻烦和浪费性能,因为产品给客户,客户只会选用一种数据库部署,所以每次都ifelse应该会浪费性能的,虽然大概是纳秒级的。有没有一种方法,能在部署时初始化一下什么的,免去每次都ifelse.现在多数据应用应该很多,不知道各位是如何解决的呢?大家一起探讨下,现阶段最稳定和主流的方法。
相关推荐
lbyd0 2020-11-17
sushuanglei 2020-11-12
腾讯soso团队 2020-11-06
gaobudong 2020-11-04
yangkang 2020-11-09
85477104 2020-11-17
KANSYOUKYOU 2020-11-16
wushengyong 2020-10-28
lizhengjava 2020-11-13
星月情缘 2020-11-13
huangxiaoyun00 2020-11-13
luyong0 2020-11-08
Apsaravod 2020-11-05
PeterChangyb 2020-11-05
wwwjun 2020-11-02
gyunwh 2020-11-02
EchoYY 2020-10-31
dingyahui 2020-10-30