tomcat配置数据源

原创 2013年12月04日 10:01:59

最近想搞清楚什么是“连接池”,在网上查了相关资料,貌似要跟“服务器”中配置,

 

 

1、首先在WebRoot/META-INF目录下面建立一个context.xml配置文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<Context>

	<WatchedResource>WEB-INF/web.xml</WatchedResource>

	<Resource 
	name="myoracle" 
	auth="Container" 
	type="javax.sql.DataSource"
	driverClassName="oracle.jdbc.OracleDriver" 
	url="jdbc:oracle:thin:@localhost:1521:orcl"
	username="huangbiao" 
	password="huangbiao" 
	maxActive="200" 
	maxIdle="10" 
	maxWait="5000" />

</Context>

 

2、启动tomcat服务器(如果启动失败,可能原因是没有驱动,需要在tomcat的lib目录下面放驱动包)

 

3、在servlet中得到得到数据源,操作数据库

 

package hb.servlet.dbpool;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;

import org.apache.log4j.Logger;

public class ConnectDB extends HttpServlet {

	public static Logger log = Logger.getLogger(ConnectDB.class);
	
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doPost(request, response);
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		log.info("发送请求成功");
		try {
			InitialContext ic = new InitialContext();
			DataSource ds = (DataSource)ic.lookup("java:comp/env/myoracle");
			Connection conn = ds.getConnection();
			String sql = "select * from goods where GOODSNAME=?";
			PreparedStatement pre = conn.prepareStatement(sql);
			pre.setString(1, "7001");
			ResultSet rs = pre.executeQuery();
			while(rs.next()){
				 log.info(rs.getString(1));
				 log.info(rs.getString(2));
				 log.info(rs.getInt(3));
				 log.info(rs.getString(4));
				 log.info(rs.getString(5));
			}
			if(rs != null){
				log.info("关闭rs正常");
				rs.close();
			}
			if(pre != null){
				log.info("关闭pre正常");
				pre.close();
			}
			if(conn != null){
				log.info("关闭conn正常");
				conn.close();
			}
			PrintWriter pw = response.getWriter();
			String result = "操作数据库OK";
			pw.write(new String(result.getBytes("utf-8"),"ISO-8859-1"));
			pw.flush();
			
		} catch (NamingException e) {
			log.error("获取连接池异常");
			e.printStackTrace();
		} catch (SQLException e) {
			log.error("操作数据库失败");
			e.printStackTrace();
		}
	}

}

 

 

在这里我有一些不明白的地方:

1、这种方式算是“使用连接池”吗

2、conn.close()这种方式关闭了是断开了数据源吗

请路过的高手指点一二

Tomcat8.0配置JNDI数据源完整例子

jndi配置 :此种配置需要在Tomcat的server.xml中和context.xml中配置数据源,在项目中引用。  前言:需要在tomcat下加入数据库连接的jar包,相关包的下载地址见下...
  • qq_35624642
  • qq_35624642
  • 2017年03月11日 22:02
  • 2498

Tomcat中配置数据源和连接池

(1)为什么需要配置数据源和连接池? 我们知道在每次java程序俩接数据库的时候我们都需要请求连接数据库然后打开读取数据然后关闭, 这样使得每一个用户访问的时候都需要服务器做出相应,这样的话服务器...
  • u010870518
  • u010870518
  • 2014年09月01日 17:28
  • 2640

Tomcat配置数据源(JNDI方式)

一、直连接数据库 1 Java 连接 Oralce Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String u...
  • CYXLZZS
  • CYXLZZS
  • 2012年03月14日 14:29
  • 28050

tomcat配置多个数据源

应用场景:                公司tomcat服务器中运行着多个工程,工程链接的mysql数据库不同,所以每个工程的Spring总配置文件中都配置了数据源。 需求:   将数据源统一拿到t...
  • the_fool_
  • the_fool_
  • 2017年10月09日 17:47
  • 293

TOMCAT配置数据源

现在需要将访问数据库的JDBC接口发布到Axis2搭建的Tomcat7.0服务器上。 遇到的问题是,JDBC接口在本地测试正常,但是发布到服务器后,建立Client工程使用PRC方式调用则报错。 ...
  • ozwarld
  • ozwarld
  • 2012年07月13日 11:40
  • 7116

Tomcat配置数据源

 Jsp中使用数据库连接池. 1. 在tomcat服务器目录下面的conf中找到一个叫Context.xml的配置文件,在其中加入以下代码   Resource name="j...
  • starlight_520
  • starlight_520
  • 2014年05月20日 14:54
  • 317

Eclipse +Tomcat配置JNDI数据源

以下是具体配置的步骤: 1.首先配置Tomcat下的jndi数据源。具体存放目录apache-tomcat-7.0.59\conf\Catalina\localhost 下 osh.xml ...
  • zhixinhuacom
  • zhixinhuacom
  • 2015年06月14日 23:30
  • 2235

tomcat配置MySQL数据源

1.3.5 配置Tomcat的数据源 Tomcat提供了两种配置数据源的方式,区别是所配置的数据源的访问范围不同:一种数据源可以让所有的Web应用访问,被称为全局数据源;另一种只能在单个Web应用中访...
  • lzz_646297826
  • lzz_646297826
  • 2017年01月03日 14:14
  • 1745

jfinal 使用Tomcat JNDI

运行环境:Tomcat 7.0.x (1) Tomcat 配置  打开tomcat/conf/context.xml 在文件中增加
  • ifendou123456
  • ifendou123456
  • 2015年05月30日 17:47
  • 204

在Tomcat配置JNDI数据源的三种方式

在我过去工作的过程中,开发用服务器一般都是Tomcat 数据源的配置往往都是在applicationContext.xml中配置一个dataSource的bean 然后在部署时再修改JND...
  • z69183787
  • z69183787
  • 2014年04月02日 11:27
  • 2455
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:tomcat配置数据源
举报原因:
原因补充:

(最多只允许输入30个字)