码迷,mamicode.com
首页 > 其他好文 > 详细

配置tomcat8数据源(采用局部数据源方式)

时间:2017-10-19 16:05:19      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:next   while   点击   har   pre   min   执行   word   sele   

  tomcat提供两种数据源配置方式,全局和局部。全局的话对于所有web应用都生效,局部只对于配置的某一个web生效。

  步骤:

  1.将mysql的jdbc驱动复制到tomcat的lib路径下。

  2.在tomcat目录下,conf/Catalina/localhost下新建一个xml文件,例如为dd.xml。添加如下内容。

   其中docBase为web应用的文件夹。这里有个特别要注意的地方!!!!虽然我们的web应用是aa文件夹,但是我们通过“locahost:端口号/web名称”访问时这里的web名称要写dd而不是aa。aa是直接访问了这个web应用,但是并没有与数据源进行连接,也就是没有与数据库进行连接,因为数据库连接的代码在dd.xml中,所以要通过dd访问。

   这里在mysql数据库中有一个名为javaee的数据库,里面有一个news_inf的表,表有两个字段,第一个为编号,第二个为任意字符串。

<Context  docBase="D:/java EE/codes/01/aa" debug="0" privileged="true">
    <!-- 其中name指定数据源在容器中的JNDI名
    driverClassName指定连接数据库的驱动
    url指定数据库服务的URL
    username指定连接数据库的用户名
    password指定连接数据库的密码
    maxActive指定数据源最大活动连接数
    maxIdle指定数据池中最大的空闲连接数
    maxWait指定数据池中最大等待获取连接的客户端
    -->
    <Resource name="jdbc/dstest" auth="Container"
        type="javax.sql.DataSource" 
        driverClassName="com.mysql.jdbc.Driver"
        url="jdbc:mysql://localhost:3306/javaee"
        username="root" 
        password="314159" 
        maxActive="5"
        maxIdle="2" 
        maxWait="10000"/>
</Context>

 

  3.访问数据源测试

  tomcatTest.jsp

<%--
网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
author  yeeku.H.lee kongyeeku@163.com
version  1.0
Copyright (C), 2001-2016, yeeku.H.Lee
This program is protected by copyright laws.
Program Name:
Date: 
--%>

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
<%@ page import="javax.naming.*,java.sql.*,javax.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>测试Tomcat数据源</title>
</head>
<body>
<%
// 初始化Context,使用InitialContext初始化Context
Context ctx=new InitialContext(); 
/*
通过JNDI查找数据源,该JNDI为java:comp/env/jdbc/dstest,分成两个部分
java:comp/env是Tomcat固定的,Tomcat提供的JNDI绑定都必须加该前缀
jdbc/dstest是定义数据源时的数据源名
*/
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/dstest");
// 获取数据库连接
Connection conn=ds.getConnection();
// 获取Statement
Statement stmt=conn.createStatement();
// 执行查询,返回ResulteSet对象
ResultSet rs=stmt.executeQuery("select * from news_inf");
while(rs.next())
{
    out.println(rs.getString(1) 
        + "\t" + rs.getString(2) + "<br/>");
}
%>
</body>
</html>

  根据上面的红字部分,访问,localhost:8080/dd,即可看到tomcatTest.jsp文件,点击即可。技术分享技术分享

 

总结:局部数据源无需修改系统的配置文件,如web.xml,server.xml,comtext.xml等,只需修改用户自己的web部署文件即可,不会造成系统的混乱,而且数据源被封装在一个web应用之内,防止被其他的web应用访问,提供了更好的封装性。另外特别注意访问的web名(见上述红字)。

 

  

配置tomcat8数据源(采用局部数据源方式)

标签:next   while   点击   har   pre   min   执行   word   sele   

原文地址:http://www.cnblogs.com/GoForMyDream/p/7692659.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!