說明:首先配製好java開發環境,然後把MySql的jdbc驅動寫在classpath裏面面,然後先編譯DBManager.java
,之後編譯testcondb.java時,需用-classpath參數把DBManager.class所在目錄地址添加
上去。之後用java testcondb 命令運行,如果配製正確就可以看到結果了。
DBManager.java文件
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @awolf168
* @version 1.0
*/
import java.sql.Connection;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class DBManager
{ //需配製web服務器,然後通過數據源來連接
public static Connection getConnection()
{
try {
InitialContext initx = new InitialContext();
Context tx = (Context)initx.lookup("java:comp/env");
DataSource ds = (DataSource) tx.lookup("jdbc/dsmail");
return ds.getConnection();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
//直接用jdbc連接
public static Connection getNativeConnection() throws Exception
{
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection conn = java.sql.DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=GBK" ,
"用戶名" , "密碼");
return conn;
}
}
testcondb.java文件
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @awolf168
* @version 1.0
*/
import java.sql.*;
//連接mysql數據庫測試代碼
public class testcondb{
public String getTestStr()throws Exception
{
Connection con=null;
ResultSet res=null;
PreparedStatement ps=null;
String id=null;
try{
DBManager db=new DBManager();
con=db.getNativeConnection();
ps = con.prepareStatement("select * from test.ts");
res = ps.executeQuery();
while (res.next())
{
id = res.getString("id");
}
return id;
}
finally{
try{
res.close();
ps.close();
con.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
public static void main(String args[]) throws Exception
{
testcondb tb=new testcondb();
System.out.print("test db connection:");
System.out.print(tb.getTestStr());
}
}