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

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>

tomcat连接常用数据库的用法的更多相关文章

  1. mysql连接远程数据库的用法

    mysql -u root -p 等这些常用的参数外,你知道多少?来测试一下吧 一,mysql命令行参数 Usage: mysql [OPTIONS] [database]   //命令方式 -?,  ...

  2. jdbc的配置及jdbc连接常用数据库(mysql、sqlserver、Oracle)

    1.连接SQL Server数据库 import java.sql.*; publicclassMain{publicstaticvoid main(String[] args){String dri ...

  3. c3p0、dbcp、tomcat jdbc pool 连接池配置简介及常用数据库的driverClass和驱动包

    [-] DBCP连接池配置 dbcp jar包 c3p0连接池配置 c3p0 jar包 jdbc-pool连接池配置 jdbc-pool jar包 常用数据库的driverClass和jdbcUrl ...

  4. linux服务器初步印象,远程连接mysql数据库,传输文件,启动/关闭tomcat命令

    1.连接服务器数据库,以Navicat连接mysql为例 1.1 常规 新建连接,连接名,主机名或ip地址:127.0.0.1 端口:3306用户名:(服务器端)root密码:(服务器端)pwd 1. ...

  5. tomcat之jsp连接mysql数据库

    一.下载并部署mysql连接类 首先下载mysql连接类,下载地址https://dev.mysql.com/downloads/connector/j 如图所示,选择第一个箭头所指的平台无关版本,然 ...

  6. Data Base 常用数据库之top/limit/rownum用法

    常用数据库之top/limit/rownum用法 一.常用数据库: sql server: select top 10 from users where status=1 mysql: select ...

  7. Java Web工程连接MySQL数据库及Tomcat服务器页面中文乱码

    Java Web工程连接MySQL数据库 一. 准备工作 1.下载连接MySQL数据库的JDBC (可以去官网下,也可以去百度云找) 2.将下载的jar文件复制到Tomcat的lib目录下 3.新建一 ...

  8. C# 连接SQL数据库 常用连接字符串

    一:C# 连接SQL数据库 Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myP ...

  9. Tomcat 连接池详解

    (转) JDBC 连接池 org.apache.tomcat.jdbc.pool 是Apache-Commons DBCP连接池的一种替换或备选方案. 那究竟为何需要一个新的连接池? 原因如下: Co ...

随机推荐

  1. java开发人员win10配置

    1.让win10的cmd支持ll命令 新建ll.bat 编辑类容为: @echo off dir3.将该文件移动到C:\Windows下. CMD里就可以用ls来代替dir命令显示目录列表了. 2.i ...

  2. [TensorFlow]TensorFlow安装方法

    下载*.whl文件方法安装: 方法:http://www.python36.com/install-tensorflow-using-official-pip-pacakage/ 在线安装: 方法:h ...

  3. [原创] 扩展jquery-treegrid插件, 实现勾选功能和全删按钮.

    新上手一个项目, 因而正好想学习下bootstrap, 所以就采用asp.net mvc + bootstrap来做.  因为需要TreeGrid的控件, 本来想用easyUI.LingerUi.DW ...

  4. lucene复合条件查询案例——查询name域 或 description域 包含lucene关键字的两种方式

    方式一:使用语法表达式查询 //查询name域 或 description域包含lucene关键字 QueryParser queryParser = new QueryParser("na ...

  5. html注册栏网页练习代码

    html body>     <form action="#" method="get">         <div>       ...

  6. django项目 报错:ImportError: cannot import name choice

    今天项目开发中遇到一个错误,排查了很久才发现原因,现在分享出来,希望对大家有所帮助. 错误描述:在项目中添加了一个random.py的类,导入random中的choice,并在randstr方法中使用 ...

  7. IDEA 中tomcat日志位置

    参考 https://blog.csdn.net/dela_/article/details/78555977 /home/dela/.IntelliJIdea2017.1/system/tomcat ...

  8. Java基础第一天(标识符、变量)

    一.标识符 Java对各种变量.类.方法命名时的字符序列. 凡自己可以起名字的地方都叫标识符. 标识符特点: 1.26个英文字母大小写,0~9,$,_ 组成. 2.数字不可以做开头. 3.不可以使用关 ...

  9. springboot+maven多模块工程dependency not found

    参见:https://blog.csdn.net/m0_37943753/article/details/81031319. 重点是<dependencyManagement>标签的作用, ...

  10. H5(ionic2+VScode) 环境安装

    一:node.js.npm.cnpm.cordova环境安装 介绍下概念 node.js 非阻塞异步的Ajax 操作基础框架. npm 国外的node.js 包管理器 cnpm 国内淘宝的node.j ...