java访问数据库的方式有很多种,这里我只说两种,一种是普通的访问方式,一种是用context的方式。下面分别就是这两种的代码片段:
普通的访问方式:
public class AccessDatabase {
private static Connection getConnection()throws SQLException, ClassNotFoundException{
Class.forName("com.mysql.jdbc.Driver");
Connection conn=null;
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root","root");
return conn;
}
public static boolean queryUser(String name){
boolean returnValue=false;
String sql="select * from user where userName='"+name+"'";
Connection conn=null;
Statement st=null;
ResultSet rs=null;
try{
conn=getConnection();
st=conn.createStatement();
System.out.println("SQL:"+sql);
rs=st.executeQuery(sql);
while(rs.next()){
returnValue=true;
}
if(rs!=null){
rs.close();
}
if(st!=null){
st.close();
}
if(conn!=null){
conn.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
System.out.println("返回值:"+returnValue);
return returnValue;
}
public static void main(String[] args) {
System.out.println("DataBase Operation Demo");
boolean b=queryUser("xiaoming");
System.out.println("is have:"+b);
}
}
context的访问方式:
package com.lina.tools;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
/**
* 数据源的连接
*
* @author admin
*
*/