tomcat内置了DBCP数据源
<1>在tomcat的安装目录下的lib目录下导入数据库驱动包
<2>在Context.XML中配置数据源,有五个位置可以配置,参考tomcat文档
tomcat内置的数据源(DBCP):
1、在WebRoot目录下----META-INF目录下---context.xml目录中:
为tomcat配置数据源(跟c3p0配置信息一样,可参看c3p0文档查询可配置信息)
<?xml version=”1.0” encoding=”utf-8”?>
<Context>
<Resourcename="mySource"
auth="Container"
type="javax.sql.DataSource"
username="root"
password="root"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql:///day11"
maxActive="8"
maxIdle="4"/>
</Context>
方式1:tomcat/conf/context.xml文件中配置<Context>配置在这个位置的信息将会被所有的web应用所共享
方式2:tomcat/conf/[engin]/[Host]/context.xml文件中可以配置<Context>标签,这里配置的信息将会被这台虚拟主机中的所有web应用所共享
方式3:tomcat/conf/server.xml文件中的<Host>标签中配置<Context>标签,这是web应用的第一种配置方式,在这个标签中配置的信息将只对当前web应用
起作用
方式4:tomcat/conf/[engin]/[Host]/自己创建一个.xml文件,在这个文件中使用<Context>标签配置一个web应用,这是web应用第二种配置方式,在这个
<Context>标签中配置的信息将只会对当前web应用起作用
方式5:web应用还有第三种配置方式:将web应用直接放置到虚拟主机管理的目录.此时可以在web应用的META-INF文件夹下创建一个context.xml文件,在其
中可以写<Context>标签进行配置,这种配置信息将只会对当前web应用起作用
配置信息说明:
<Resource name="mySource" ---在数据源创建好以后绑定到jndi容器中时使用的名字
auth="Container"
type="javax.sql.DataSource"---当前对象的类型,默认就是数据源
username="root" --- 数据库用户名
password="root" --- 数据库密码
driverClassName="com.mysql.jdbc.Driver" ---数据库驱动名
url="jdbc:mysql:///day12" --- 数据库连接信息
maxActive="8"--- 最大连接数
maxIdle="4"/> --- 最大空闲连接数
2.如果在程序中获取这个数据源
想要访问jndi就必须在Servlet中才能执行下列代码:
//初始化容器的时候把jndi容器也加载进来
Context initCtx = newInitialContext();//获取最大那个容器
Context jndi = (Context)initCtx.lookup("java:comp/env");//在最大那个容器中获取jndi容器
DataSource source =jndi.lookUp("mySource");//配置信息那写的是mySource这个数据源的名字,这样获取了数据源配置信息