import java.sql.*
public class ConnectionManager {
private static final String DRIVER_CLASS="com.microsoft.sqlserver.jdbc.SQLServerDriver"
private static final String DATABASE_URL="jdbc:sqlserver://localhost:1433DatabaseName=student"
private static final String DATABASE_USER="xz"
private static final String DATABASE_PASSWORD="test"
private ConnectionManager()
{}
/**
* 返回连接
* @return Connection
* @throws DBAccessException
*/
public static Connection getConnection()
{
Connection dbConnection=null
try {
Class.forName(DRIVER_CLASS)
dbConnection=DriverManager.getConnection(DATABASE_URL,DATABASE_USER,DATABASE_PASSWORD)
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace()
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
return dbConnection
}
/**
* 关闭连接
* @param conn
* Connection
*/
public static void closeConnection(Connection conn)
{
try{
if(conn!=null &&!conn.isClosed())
{
conn.close()
conn=null
}
}catch(Exception ex)
{
System.out.println(ex.getMessage())
}
}
/**
* 关闭结果集
* @param rs
* ResultSet
*/
public static void closeResultSet(ResultSet rs)
{
try{
if(rs!=null)
{
rs.close()
rs=null
}
}catch(Exception ex)
{
System.out.println(ex.getMessage())
}
}
/**
* 关闭SQL预处理语句
* @param pstmt
* PreparedStatement
*/
public static void closePreparedStatement(PreparedStatement pstmt)
{
try{
if(pstmt!=null)
{
pstmt.close()
pstmt=null
}
}catch(Exception ex)
{
System.out.println(ex.getMessage())
}
}
/**
* 关闭SQL语句
* @param stmt
* Statement
*/
public static void closeStatement(Statement stmt)
{
try{
if(stmt!=null)
{
stmt.close()
stmt=null
}
}catch(Exception ex)
{
System.out.println(ex.getMessage())
}
}
public static void main(String[]args)
{
try {
Connection con=ConnectionManager.getConnection()
if(!con.isClosed())
System.out.println("数据库连接成功。。。。。")
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
}
}
User.javapublic class User {
private String username
private String userpass
public String getUsername() {
return username
}
public void setUsername(String username) {
this.username = username
}
public String getUserpass() {
return userpass
}
public void setUserpass(String userpass) {
this.userpass = userpass
}
}
UserDAO.javaimport java.util.*
import java.sql.*
public class UserDAO {
public List<User>getAllUser()
{
Connection conn=null
PreparedStatement pstmt=null
ResultSet rs=null
List<User>userList=new ArrayList<User>()
String sql="select UserName,UserPas from Users"
try {
conn=ConnectionManager.getConnection()
pstmt=conn.prepareStatement(sql)
rs=pstmt.executeQuery()
while(rs.next())
{
User u=new User()
u.setUsername(rs.getString("UserName"))
u.setUserpass(rs.getString("UserPas"))
userList.add(u)
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}finally
{
ConnectionManager.closeConnection(conn)
ConnectionManager.closePreparedStatement(pstmt)
ConnectionManager.closeResultSet(rs)
}
return userList
}
}
1、加载驱动程序。
2、创建连接对象。
3、创建sql语句执行对象 。
4、执行sql语句。
5、对执行结果进行处理。
6、关闭相关的连接对象即可(顺序跟声明的顺序相反)。
处理结果两种情况:
1、执行更新返回的是本次 *** 作影响到的记录数。
2、执行查询返回的结果是一个ResultSet对象。
ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 行中数据的访问。
扩展资料:
Statement
要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3 种类型:
1、执行静态SQL语句。通常通过Statement实例实现。
2、执行动态SQL语句。通常通过PreparedStatement实例实现。
3、执行数据库存储过程。通常通过CallableStatement实例实现。
参考资料:百度百科JAVA
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)