项目要求,如dao.js等包含客户个性化配置的文件,放在项目外面,比如跟tomcat文件夹同级,这样要更新系统时,只要换一个war包就行了,不需要让用户重新输入数据库用户名密码?这样的话MaiModule的IocBy该怎么写?
12 回复
@wendal 还是没太懂,我在Mainsetup里面new JsonLoader(js文件路径),就ok了????
@wendal 很有道理!!!但是问题又来了,我如何动态的获取一个dao,就是用户和密码都是后来给的,然后再把这个dao交个ioc管理?整个环境都是nutz
dataSource = new SimpleDataSource();
dataSource.setJdbcUrl("jdbc:gbase://172.16.1.205:5258/tjbb_cms");
dataSource.setUsername("gbase");
dataSource.setPassword("gbase20110531");
dataSource.setDriverClassName("com.gbase.jdbc.Driver");
dao = new NutDao(dataSource);
这是我之前用的方法,动态获取的dao,然后怎么把他塞到ioc里面?
@wendal 不是put是save
@wendal 这个是mvc环境,但是dao是后来给的,你觉得是用sSimpleDataSource好呢还是DaoUp好呢?
@wendal 不支持postgresql?
2016-10-26 9:42:12.530 WARN [localhost-startStop-1] SimpleDataSource is NOT a Connection Pool, So it is slow but safe for debug/study
2016-10-26 9:42:12.531 ERROR [localhost-startStop-1] Error happend during start serivce!
java.lang.RuntimeException: java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:6443/dcm
at org.nutz.lang.Lang.wrapThrow(Lang.java:182)
at org.nutz.dao.jdbc.Jdbcs.getExpert(Jdbcs.java:113)
我显示不设置drivername,后来加了
source.setDriverClassName("org.postgresql.Driver");
然并卵
@wendal 嗯解决了,我觉得问题是这样的,因为我现在做的是二次开发,人家的数据库信息放在他特定格式的xml文件里,还加密了,所以我要用它的数据库,就打算在mainsetup的时候读xml并解密,然后生成dao再塞到ioc里面(为啥不生成自己的dao.js?因为他有个功能是前台修改数据库信息,他可以把修改后的信息塞到他自己的xml文件里,而我现在还不能同步修改dao.js,所以就打算在每次服务启动的时候新建一个dao。)因为是在mainsetup里面运行的,此时tomcat并没有完全启动,所以导致有的class没有读进来,导致driverclass not find,在new simpledatasource之前,写上class.forname就解决了,而且tomcat的读取顺序有点迷……我用mysql的时候并没有这个问题,所以没往这方面想
添加回复
请先登陆