`
icyheart
  • 浏览: 765260 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在Tomcat中配配置数据源

    博客分类:
  • J2EE
阅读更多

Tomcat本身不具备处理提供数据源的能力。借助于一些开源数据源实现,如:DBCP和C3P0等。

一、在http://commons.apache.org/可下载这些是Tomcat提供配置数据源所需的类库。
注意:Tomcat5.5以上标准版本自带dbcp,放在$Tomcat\common\lib目录;

下载三个文件后,将三个文件解压到Tomcat/common/lib,
1.The DBCP Component
commons-dbcp-1.2.1.jar
http://commons.apache.org/dbcp/

2.The Pool Component 1.2.jar
commons-pool-1.2.jar
http://commons.apache.org/pool/

3.Commons Collections 3.1
commons-collections-3.1.jar
http://commons.apache.org/collections/


There are several examples  of using DBCP available.
http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/doc/

4、把数据库JDBC驱动拷贝到%TOMCAT_HOME%/common/lib和
                           %TOMCAT_HOME%/webapps/yourweb/WEB-INF/lib下(我的web文件夹名字叫quickstart)

二、

   1.  SQL server2000
 <Resource
  name="jdbc/quickstart"
  type="javax.sql.DataSource"
  password="123456"
  driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
  maxIdle="2"
  maxWait="5000"
  username="sa"
  url="jdbc:microsoft:sqlserver://localhost;DatabaseName=quickstart"   maxActive="4"/>

   2.MySQL
   <Resource
        name="jdbc/hnport"
        type="javax.sql.DataSource"
        password="sharker"
        driverClassName="com.mysql.jdbc.Driver"
        maxIdle="2"
        maxWait="5000"
        username="root"
        url="jdbc:mysql://localhost:3306/hnport"
        maxActive="4"/>

三、按数据源使用范围来分数据源配置两个方法:

方法一:所用Web可使用(全局数据源)
 
  1、修改%TOMCAT_HOME%/conf/server.xml文件,在<GlobalNamingResources></GlobalNamingResources>之间加入如下代码:
       <Resource
        name="jdbc/hnport"
        type="javax.sql.DataSource"
        password="sharker"
        driverClassName="com.mysql.jdbc.Driver"
        maxIdle="2"
        maxWait="5000"
        username="root"
        url="jdbc:mysql://localhost:3306/hnport"
        maxActive="4"/>
  2、修改%TOMCAT_HOME%/webapps/yourweb/WEB-INF下的web.xml文件,在<web-app></web-app>之间添加以下内容
  
  <resource-ref>
  <description>mysql Connection</description>
  <res-ref-name>jdbc/hnport</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
  </resource-ref>

 3、在%TOMCAT_HOME%/conf/Catalina/localhost下新建一个与你web文件夹同名的xml文件(我的是quickstart.xml)
  
  这一步非常重要,如果没有这步就会出错,会出现org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/hnport" reloadable="true" docBase="d:\hnport\WebRoot" workDir="d:\hnport\work">
  <Resource name="jdbc/hnport"
   type="javax.sql.DataSource"
   password="sharker"
   driverClassName="com.mysql.jdbc.Driver"
   maxIdle="2"
   maxWait="5000"
   username="root"
   url="jdbc:mysql://localhost:3306/hnport"
   maxActive="4"/>
 </Context>

方法二:只有某个Web可用(局部数据源
        1.该方法不会造成系统混乱,只需修改%TOMCAT_CAT%\conf\Cattalin\localhost下的Web配置文件。如:hnport.xml

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/hnport" reloadable="true" docBase="d:\hnport\WebRoot" workDir="d:\hnport\work">
  <Resource name="jdbc/hnport"
   type="javax.sql.DataSource"
   password="sharker"
   driverClassName="com.mysql.jdbc.Driver"
   maxIdle="2"
   maxWait="5000"
   username="root"
   url="jdbc:mysql://localhost:3306/hnport"
   maxActive="4"/>
 </Context>


 2、修改%TOMCAT_HOME%/webapps/yourweb/WEB-INF下的web.xml文件,<web-app> </web-app>之间添加以下内容
  
  <resource-ref>
  <description>mysql Connection</description>
  <res-ref-name>jdbc/hnport</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
  </resource-ref>

<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->

 



四.测试
<%@page contentType="text/html;charset=big5"%>
<%@page import="java.sql.*"%>
<%@page import="javax.sql.*" %>
<%@page import="javax.naming.*" %>
<%
    try {
        Context initContext = new InitialContext();
        Context envContext  =
            (Context)initContext.lookup("java:/comp/env");
        DataSource ds =
            (DataSource)envContext.lookup("jdbc/hnport");
        Connection conn = ds.getConnection();
 
        if(!conn.isClosed())
           
            out.println("数据库连接测试成功");
        conn.close();
    }
    catch(SQLException e) {
        out.println(e.toString());
    }
%>

分享到:
评论

相关推荐

    tomcat中配置数据源

    NULL 博文链接:https://czq5783095.iteye.com/blog/1458651

    tomcat jboss数据源配置.rar

    jobss4.0 和tomcat5.5的数据源配置,是我自己配置过程中写下来的,在网上看了好多,总算配成功了,希望大家喜欢.

    Tomcat配置数据源

    配的是mysql数据源,其他请参考官方文档tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html

    tomcat配置数据源

    这是我自己替tomcat配置数据源的过程.一步一步教你怎么配.绝对可用. 当然,也有其他的配置方法.这里就不详说了.

    tomcat5.5配数据源必须的三个JAR包.zip

    用tomcat工具配置数据源比如名为mysql。则在meta-inf/context.xml中写上&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;&lt;br&gt;&lt;Context&gt;&lt;br&gt; &lt;ResourceLink&lt;br&gt; name=\"mysql\" global=\"mysql\" type=\"javax....

    tomcat 6.0 数据源的配置

    在tomcat 中使用jndi技术来配数据源, 用户可以远程通jndi名来查找数据源,来操作数据库

    Tomcat数据源配置方法_JBuilder中

    今天帮一同事配置一个数据源,采用tomcat5.5.9,本来是个很简单的事,以前也配过,但由于很长时间没用过容器提供的数据源了(IOC用惯了),也只记的个大概了,所以刚开始一配就出错了,google了一下,有很多资料,照...

    java数据源配置包JNDI

    java连接数据库所用数据源JAR包 很多人都忘记在在tomcat的lib的文件夹下放这两个包 导致配好的context.xml不管用

    JDK+Tomcat+MySQL的安装及配置教程图文

    MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双...

    基于SpringBoot+Thymeleaf的招聘系统,数据库为MySQL+Druid+MyBatis,搭配Redis内存数据库

    项目前端模板引擎使用Thymeleaf,数据源使用Druid。 使用注意 1、开发工具的选择 本项目使用 Intellij IDEA 2019.3.5 版本开发,若使用 Eclipse/MyEclipse导入项目,请注意文件编码为UTF-8,以避免乱码。 2、确保...

    落雨博客基于CAS框架的单点登录技术讲解(ppt+code实例+doc)配套资料

    [置顶] SSO单点登录系列3:cas-server端配置认证方式实践(数据源+自定义java类认证) http://blog.csdn.net/ae6623/article/details/8851801 [置顶] SSO单点登录系列2:cas客户端和cas服务端交互原理动画图解,cas...

    Spring.3.x企业应用开发实战(完整版).part2

    7.10.3 在Tomcat下的配置 7.10.4 在其他Web应用服务器下的配置 7.11 小结 第3篇 数据访问 第8章 Spring对DAO的支持 8.1 Spring的DAO理念 8.2 统一的异常体系 8.2.1 Spring的DAO异常体系 8.2.2 JDBC的异常转换器 ...

    Spring3.x企业应用开发实战(完整版) part1

    7.10.3 在Tomcat下的配置 7.10.4 在其他Web应用服务器下的配置 7.11 小结 第3篇 数据访问 第8章 Spring对DAO的支持 8.1 Spring的DAO理念 8.2 统一的异常体系 8.2.1 Spring的DAO异常体系 8.2.2 JDBC的异常转换器 ...

    JavaWeb开发实战经典(李兴华).part1

    内容包括Java Web开发简介,HTML、JavaScript简介,XML简介,Tomcat服务器的安装及配置,JSP基础语法,JSP内置对象,JavaBean,文件上传,Servlet程序开发,表达式语言,Tomcat数据源,JSP标签编程,JSP标准标签库...

    JavaWeb开发实战经典(李兴华).part2

    内容包括Java Web开发简介,HTML、JavaScript简介,XML简介,Tomcat服务器的安装及配置,JSP基础语法,JSP内置对象,JavaBean,文件上传,Servlet程序开发,表达式语言,Tomcat数据源,JSP标签编程,JSP标准标签库...

    JavaWeb开发实战经典(李兴华).part3

    内容包括Java Web开发简介,HTML、JavaScript简介,XML简介,Tomcat服务器的安装及配置,JSP基础语法,JSP内置对象,JavaBean,文件上传,Servlet程序开发,表达式语言,Tomcat数据源,JSP标签编程,JSP标准标签库...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    《Java Web编程宝典(十年典藏版)》附有配套DVD光盘,光盘中提供了书中全部实例和项目的源代码。这些源代码全部经过精心调试,能够在Windows XP、WindowsServer2003及Windows7操作系统下编译和运行。 《Java Web...

    java之路-项目搭建

    好了,到目前为止,红叉叉没了,上面步骤关键两点,一个要配置一下TOMCAT_HOME(其实可以算是一个环境变量),第二个选一下JDK,另外,刚下好的项目JAR全删了重加过,因为.classpath文件一般不会上传 3.配置数据库(项目采用...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

Global site tag (gtag.js) - Google Analytics