标签:
Tomcat提供了两种配置数据源的方式:
全局数据源(可以让所有的web应用访问)
局部数据源(单个web应用访问)
使用tomcat的web部署:
在tomcat的conf目录下新建Catalina目录,在该目录下新建localhost目录,在localhost目录下创建一个任意名字的xml文件(部署web应用的配置文件),该文件的主文件名做为web应用的虚拟路径.例:在conf/Catalina/localhost 下创建一个test.xml文件,该文件内容如下:
<Context docBase="D:/web/test/aa" debug="0" privileged="true" > </Context>
上面配置文件里的"D:/web/test/aa" 就是web应用的绝对路径,当tomcat启动的时候,就会把"D:/web/test"下的文件夹部署成Web应用
该应用的url地址就是 http://localhost:8080/test
局部数据源和特定的web应用有关:
修改test.xml
<Context docBase="D:/web/test/aa" debug="0" privileged="true" >
<Resource name="jdbc/dstest" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql:///testdb"
username="root" password="root" maxActive="5"
maxIdle="2" maxWait="10000" />
</Context>
java测试代码
//初始化Context,使用InitialContext初始化Context
Context ctx = new InitialContext();
/*
通过JNDI查找数据源,JNDI意思:为某个java对象起个名字 , 上面数据源的JNDI是 jdbc/dstest
java:comp/env 是tomcat固定的, tomcat提供的JNDI必须加上 这个前缀
*/
DataSource dataSource = (DataSource)ctx.lookup("java:comp/env/jdbc/dstest");
//获取数据库连接
Connetcion conn = dataSource.getConnection();
//获取statement
Statement stmt = conn.createStatement();
//执行查询,返回ResultSet对象
ResultSet rs = stmt.executeQuery("select * from test");
while(rs.next()){
out.println(rs.getString(1))+rs.getString(2));
}
以上就是配置局部数据源的步骤
如果想配置全局数据源,需要修改sever.xml文件,一般不适用全局,容易破坏tomcat
标签:
原文地址:http://www.cnblogs.com/TerrySunShine/p/5311471.html