記錄那些在jboss卻須要遷移到tomcat8的那些項目。java
因爲該tomcat下的項目數據源都在同一個數據庫(oracle),因此將數據源配置在容器中。spring
一、在tomcat的lib文件夾中添加javassist.jar、ojdbc6.jar、demo.jar(這個jar包是爲了加密容器中數據源的配置)。sql
二、hibernate映射文件修改數據庫
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource"><ref local="dataSource"/></property>
<property name="mappingLocations">
<list>
<value>/WEB-INF/hbm/cpExternal.hbm.xml</value>apache
三、tomcat配置同一數據源tomcat
找到Tomcat的server.xml中GlobalNamingResources節點,在節點下加一個全局數據源
<Resource
name="jdbc/oracle"
scope="Shareable"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp2.MyBasicDataSourceFactory" //(該類調用了自定義的加密方法加密用戶名密碼)
url="jdbc:oracle:thin:@10.243.194.74:1521:trustel"
driverClassName ="oracle.jdbc.driver.OracleDriver"
username="a96731a9f7481e0317b5ddb7ee739c1b"
password="e32c9a96ac8f9e5fe69777b1da6c3201"
/>session
找到Tomcat的context.xml,在Context節點下加一個ResourceLink節點對第一步配置的數據源進行引用
<ResourceLink global="jdbc/oracle" name="jdbc/oracle" type="javax.sql.DataSource" />oracle
4.tomcat數據源加密
在tomcat的lib路徑運行命令:java -cp demo.jar org.apache.tomcat.dbcp.dbcp2.CipherEncrypter xxx (xxx爲帳號或密碼)
生成的方括號中的字符串即爲加密後的密文,替代3中的username或password便可。app
注意事項:加密
一、找不到org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory。
改爲org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory
二、找不到constants-config.xml
將constants-config.xml放在指定位置
相關文件:
https://i.cnblogs.com/Files.aspx的Desktop.zip