tomcat6连接池配置手记
方法一:
??? 在tomcat主目录下的conf\Catalina\localhost下新建 应用名.xml的配置文件,内容如下:
<?xml version='1.0' encoding='utf-8'?>
<Context reloadable="true" crossContext="true">
??? <Resource name="jdbc/train" type="javax.sql.DataSource"
??? ??? url="jdbc:mysql://localhost:3306/test"
??? ??? driverClassName="com.mysql.jdbc.Driver"
??? ??? username="root"
??? ??? password="root"
??? ??? autoReconnect="true" maxActive="100" maxIdle="2" maxWait="5000">
??? </Resource>
</Context>
?
java程序调用程序如下:
public class JdbcUtil{
??? public static DataSource ds;
??? public static InitialContext ic;
??? static {
??? ??? ServerConfig.logger.debug(" ***? Enter");
??? ??? if (JdbcUtil.ds == null)
??? ??? {
??????????? //ServerConfig.logger.debug("? **? Enter 1");
??? ??? ??? try
??? ??? ??? {
??? ??? ??? ??? JdbcUtil.ic = new InitialContext();
??? ??? ??? ??? ServerConfig.logger.info("正在获取数据源");
??? ??? ??? ??? JdbcUtil.ds = (DataSource)JdbcUtil.ic.lookup("java:comp/env/jdbc/train");
??? ??? ??? ???
??? ??? ??? }
??? ??? ??? catch (NamingException ex)
??? ??? ??? {
??? ??? ??? ??? //ServerConfig.logger.error(ex.toString());
??? ??? ??? ??? ex.printStackTrace();
??? ??? ??? }
??? ??? }
??? }
??? public static Connection getConnection()throws SQLException{
??? ??? return JdbcUtil.ds.getConnection();
??? }
}
方法二:
在项目的webRoot目录下的META-INFO文件夹中新建context.xml文件,文件内容与方法一的 应用名.xml文件内容相同,在程序中的调用方式也是与方法一同(在我的flex项目中用方法一总是会出错,搞了半天也没搞定,但用这种方法完全没有问题)。
如果使用Hibernate的话只需在hibernate.cfg.xml文件中添加
?<property name="connection.datasource">java:comp/env/jdbc/train</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
即可。