方法一:
在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>
即可。