很久很久没有写博客了,发现再不写博客我都快忘了我有这个博客了!好了,不说废话了。
java
最近项目使用kettle的地方比较多,鉴于项目优化的思考决定使用jndi来为kettle脚本设置数据源。这样不只能够控制链接数,并且能够减小大量的数据库配置,那么咱们怎么样才能实如今Web项目中调度配置了jndi的kettle脚本呢?先留下一个伏笔,咱们来说一下kettle支持的jndi。web
对了忘了提一句,从笔记七开始kettle的版本升级为5.x。5.x提供不少新的类和组件功能。很好的支持了项目。若是在图形界面上配置kettle脚本并执行的话,那么咱们只须要在pdi-ce-5.1.0.0-752/data-integration/simple-jndi/jdbc.properties中配置咱们的数据库链接。可能和我说的路径有些出入,不过我相信聪明的网友能够明白个人意思并成功找到该文件。如图:数据库
修改好以后,咱们须要重启一下,咱们的kettle编辑器。app
重启以后,就能够成功经过jndi来配置DB链接来。如图:编辑器
这样就可使用jndi配置简单的数据库链接池来配置kettle脚本了。链接成功以后,还须要配置咱们的链接池,在上图能够很容易的找到链接池配置项,在里面进行简单的配置就能够了。ide
可能有人要问了为何要经过jndi配置DB链接?理由其实很是简单,就是能够统一配置,节约咱们配置的脚本的时间(要知道配置一个脚本很是容易,直接使用jdbc配置就能够了,一旦脚本几百上千数量级,那么只要修改一次数据库链接,那但是很是要命的)。优化
好了,说了简单的配置编辑器使用的jndi配置,那么接下来讲一下若是web项目调度kettle脚本而且使用jndi来配置kettle的jndi数据库链接。
3d
废话很少说,直接上图:blog
这样项目这样配置就能够了,可是须要注意的是simple-jndi须要配置一个系统属性,就是接下来这段代码。get
System.setProperty("org.osjava.sj.root", application.getRealPath("/META-INF/simple-jndi"));
这里的路径是指向上图中的simple-jndi文件夹。因此只要能够肯定到simple-jndi就能够了。直接执行就能够了。