如何用java连接数据库_如何用java连接数据库方法

教会你java连接数据库

import java.sql.*;

public class DBConnect {

private Connection conn = null;

private Statement  stmt  = null;

private ResultSet  rs    = null;

private PreparedStatement ps = null;

public DBConnect()

{

try

{

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databasename=HcitPos", "sa", "123");

stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

}

catch (SQLException ex)

{

System.out.println(ex.getMessage() + "路径错误");

}

catch (ClassNotFoundException ex)

{

System.out.println(ex.getMessage() + "驱动错误");

}

}

public PreparedStatement getPs(String sql) throws SQLException {

try {

ps = conn.prepareStatement(sql);

conn.commit();

return ps;

} catch (Exception e) {

//conn.rollback();

e.printStackTrace();

return ps;

}

}

public ResultSet executeQuery(String ssql) throws SQLException{

try{

rs = stmt.executeQuery(ssql);

return rs;

}

catch(SQLException se){

//conn.rollback();

System.out.println("DBBean.executeQuery() ERROR:"+se.getMessage());

}

return rs;

}

public int executeUpdate(String ssql) throws SQLException{

int iupdate = 0;

try{

iupdate = stmt.executeUpdate(ssql);

return iupdate;

}

catch(SQLException se){

//conn.rollback();

System.out.println("DBBean.executeUpdate() ERROR:"+se.getMessage());

}

return iupdate;

}

public void free() throws SQLException{

try{

if(rs   != null) rs.close();

if(stmt != null) stmt.close();

if(conn != null) conn.close();

}

catch(SQLException se){

System.out.println("DBBean.free() ERROR:"+se.getMessage());

}

}

public Connection getConnection() {

return conn;

}

}

1. Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");获取到对应于你要使用的数据库的“连接插件”(驱动),有这个驱动你才能用java来连接SQL server。对应的,如果你用MySQL的话,那么这个驱动就变成了"com.mysql.jdbc.Driver"了。

2. DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databasename=HcitPos", "sa", "123");通过jdbc:sqlserver:里面的sqlserver来寻找需要的驱动,如果需要的驱动已经在上面的Class.forName中注册了,那就行啦,直接返回一个到数据库的连接给你了。如果没有找到需要的驱动,呃,那就抛出异常~~相对应于MySQL的,也给你个例子对比好了:DriverManager.getConnection("jdbc:mysql://localhost/HcitPos" , "sa", "123")。

3.conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);获得一个Statement对象,为什么要搞一个对象对来而不是直接就查询呢?这是因为一个Statement对象只能为你保存一个结果集ResultSet,所以如果你有多个结果集需要零时保存着的,那么就用Statement对象。如果你不需要的话,而且想要程序执行的效率高一点的话,那么用prepareStatement吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值