配置项目我用的是手工的方式配置的,不知道在Myeclipse中能不能用自动配置的方式配置。在Tomcat配置项目添加在server.xml中添加一句话就可以了
<Context path="/c3p0" docBase="C:\Documents and Settings\Administrator\Workspaces\MyEclipse 8.5\c3p0/WebRoot" debug="0" privileged="true" reloadable="true">
那么接下来就配置Tomcat下conf中的congtent.xml文件
<Resource name="jdbc/c3p0" auth="Container" type="javax.sql.DataSource"
    maxActive
="100" maxIdle="30" maxWait="1000" username="root" password="xiaoyang"
    driverClassName
="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/test"
    removeAbandoned
="true" removeAbandonedTimeout="60" logAbandoned="true"/>
然后再就可以用用java代码就能直接使用了
package com.yangtao.util;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class DBConnection {
    
private Connection conn = null;

    
public Connection getConnection() {

        
// 生成上下文对象,通过它可以向容器发送别名.
        Context context;
        
try {
            context 
= new InitialContext();
            
// 查找对象
            DataSource ds = (DataSource) context
                    .lookup(
"java:comp/env/jdbc/c3p0");// jdbc/liuwei为配置文件中的name
            
// 得到连接
            try {
                conn 
= ds.getConnection();
            } 
catch (SQLException e) {
                e.printStackTrace();
            }
        } 
catch (NamingException e) {
            
// TODO Auto-generated catch block
            e.printStackTrace();
        }

        
return conn;
    }
    
public  List<Integer> getAllID() throws SQLException {
        List
<Integer> list = new ArrayList<Integer>();
        DBConnection dbConnection 
= new DBConnection();
           Connection connection 
= dbConnection.getConnection();
           Statement statement 
= connection.createStatement();
           ResultSet resultSet 
= statement.executeQuery("select * from reply");
           
while(resultSet.next()){
               
int id = resultSet.getInt(1);
               
//System.out.println(id);
               list.add(id);
           }
           
if(resultSet != null){
               resultSet.close();
           }
           
if(statement != null){
               statement.close();
           }
           
if(connection != null){
               connection.close();
           }
           
return list;
    }
}
DAO层可以负责java增删改查之类的,然后再页面就可以直接使用了
不能直接写成main()方法来测试,测试会提示错误的。
基本这样配置就可以了,不过有个问题,就是在关闭Tomcat服务器的时候 下面会说有可能造成内存泄露 不知道这个是什么原因。还望高手指导!!!