tomcat连接常用数据库的用法

空扰寡人 提交于 2020-04-06 10:24:46

一、用于数据库连接的术语:

    JDBC:(Java database connectivity)是基于java数据访问技术的一个API通过客户端访问服务器的数据库,是一个面向关系型数据库并提供一种方法查询和更新数据库;

    JNDI:(Java naming and directory interface)JNDI服务提供了对应用程序命名和目录功 能的一种用java程序编写的基于API的java平台;

    DataSource:是一个通过JDBC API访问关系型数据库的java对象,当与JNDI整合并在JDNI 名称服务中注册后能更好的工作;

二、tomcat连接常用数据库的操作步骤:

(1)Tomcat配置Oracle DataSource:

1、在server.xml全局文件中定义如下内容:

  1. <GlobalNamingResources
  2. <!-- Editable user database that can also be used by 
  3. UserDatabaseRealm to authenticate users--
  4. <Resource name="jdbc/tomcat7" auth="Container" 
  5. type="javax.sql.DataSource" 
  6. driverClassName="oracle.jdbc.OracleDriver" 
  7. url="jdbc:oracle:thin:@127.0.0.1:1521:test" 
  8. description="test database for tomcat 7" 
  9. Configuration and Deployment 
  10. [ 46 ] 
  11. username="admin" password="admin" maxActive="20" maxIdle="10" 
  12. maxWait="-1"/> 
  13. </GlobalNamingResources

2、http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html 下载Oracle JDBC驱动程序类并放在CATALINA_HOME/lib/目录下,tomcat默认只接 受.jar结尾的类,如果是zip压缩格式需要将其重名为.jar结尾,然后放到 CATALINA_HOME/lib/目录下;

3、在应用下面的WEB-INF/web.xml文件中强制定义文档类型定义,示例如下:

  1. <resource-ref
  2. <description>Oracle Datasource for tomcat </description
  3. <res-ref-name>jdbc/tomcat7 </res-ref-name
  4. <res-type>javax.sql.DataSource</res-type
  5. <res-auth>Container</res-auth
  6. </resource-ref

4、开发人员在代码中引用JNDI并连接到数据库;

(2)Tomcat配置mysql DataSource:

1、在server.xml全局文件中定义如下内容:

  1. <Resource name="jdbc/tomcat7" auth="Container" 
  2. type="javax.sql.DataSource" 
  3. maxActive="100" maxIdle="30" maxWait="10000" 
  4. username="tomcatuser" password="tomcat" 
  5. driverClassName="com.mysql.jdbc.Driver" 
  6. url="jdbc:mysql://localhost:3306/tomcat7"/> 

2、在应用下面的WEB-INF/web.xml文件中强制定义文档类型定义,示例如下:

  1. <web-app xmlns="http://java.sun.com/xml/ns/j2ee" 
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  3. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
  4. http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
  5. version="2.4"
  6. <description>Tomcat 7 test DB</description
  7. <resource-ref
  8. <description>DB Connection</description
  9. <res-ref-name>jdbc/tomcat7</res-ref-name
  10. <res-type>javax.sql.DataSource</res-type
  11. <res-auth>Container</res-auth
  12. </resource-ref
  13. </web-app

3、http://dev.mysql.com/downloads/下载MYSQL JDBC驱动程序类并放在 CATALINA_HOME/lib/目录下,tomcat默认只接受.jar结尾的类,如果是zip压缩格式需 要将其重名为.jar结尾,然后放到CATALINA_HOME/lib/目录下;

4、对连接tomcat的用户授予全部权限,格式如下:

  1. mysql> GRANT ALL PRIVILEGES ON *.* TO tomcatuser@localhost 
  2. IDENTIFIED BY 'tomcat7' WITH GRANT OPTION; 
  3. mysql> create database tomcat7; 
  4. mysql> use tomcat7; 
  5. mysql> create table testdata ( id int not null auto_increment 
  6. primary key,foo varchar(25), bar int); 
  7. 注:用户密码一定不要为空,否则会造成连接tomcat认证错误; 

(3)Tomcat配置Postgresql DataSource:

1、在server.xml全局文件中定义如下内容:

  1. <Resource name="jdbc/tomcat7" auth="Container" 
  2. type="javax.sql.DataSource" 
  3. driverClassName="org.postgresql.Driver" 
  4. url="jdbc:postgresql://127.0.0.1:5432/tomcat7" 
  5. username="tomcat7" password="tomcat" maxActive="20" maxIdle="10" 
  6. maxWait="-1"/> 

2、http://jdbc.postgresql.org/download.html下载PostgreSQL JDBC驱动类并放在 CATALINA_HOME/lib/目录下,tomcat默认只接受.jar结尾的类,如果是zip压缩格式需 要将其重名为.jar结尾,然后放到CATALINA_HOME/lib/目录下;

3、在应用下面的WEB-INF/web.xml文件中强制定义文档类型定义,示例如下:

  1. <resource-ref
  2. <description>postgreSQL Tomcat datasource </description
  3. <res-ref-name>jdbc/tomcat7 </res-ref-name
  4. <res-type>javax.sql.DataSource</res-type
  5. <res-auth>Container</res-auth
  6. </resource-ref

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!