java web与数据库相连,具体怎么做

好像其中要弄什么驱动之类、谁可以帮忙说下具体一步一步怎么做啊... 好像其中要弄什么驱动之类、 谁可以帮忙说下具体一步一步怎么做啊 展开
 我来答
帖新垒49
2014-04-25 · 超过70用户采纳过TA的回答
知道答主
回答量:137
采纳率:100%
帮助的人:69.9万
展开全部
采用JDBC或JDBC-ODBC的方式连接。 例如 import java.sql.*; public class DB { private static final String DRIVER = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; // 驱动类 private static final String URL = "jdbc:sqlserver://127.0.0.1:1433;databaseName=customerDB"; // 连接字符串 private static final String UID = "sa"; // 登陆数据库用户 private static final String UPASS = ""; // 登陆数据库密码 private Connection con = null; // 数据库连接对象 private Statement st = null; // 数据库语句执行对象 private PreparedStatement pst = null; // 数据库预编译语句执行对象 // private CallableStatement cst=null; //数据库存储过程执行对象 private ResultSet rs = null; // 数据库查询结果对象 /** * 数据库操作类构造方法 */ public DB() { try { Class.forName(DRIVER); con = DriverManager.getConnection(URL, UID, UPASS); st = con.createStatement(); System.out.println("DataBase connected success."); } catch (ClassNotFoundException e) { e.printStackTrace(); System.out.println("DataBase connected error."); } catch (SQLException e) { e.printStackTrace(); System.out.println("DataBase connected error."); } } /** * 执行数据库查询语句 * * @param sql * 查询语句 * @return 查询结果集 */ public ResultSet execQuery(String sql) { try { System.out.println("execute '" + sql + "'"); rs = st.executeQuery(sql); } catch (SQLException e) { e.printStackTrace(); System.out.println("Erro:execute this statement '" + sql + "'"); } return rs; } /** * 执行数据库预编译查询语句 * * @param sql * 预编译查询语句 * @param param * 预编译查询语句参数 * @return 查询结果集 */ public ResultSet execQuery(String sql, String[] param) { try { pst = con.prepareStatement(sql); for (int i = 0; i < param.length; i++) { pst.addBatch(param[i]); } rs = pst.executeQuery(); } catch (SQLException e) { e.printStackTrace(); } return rs; } /** * 执行数据库增删改操作语句 * * @param sql * 增删改语句 * @return 影响行数 */ public int execUpdate(String sql) { int res = 0; try { System.out.println("execute '" + sql + "'"); res = st.executeUpdate(sql); } catch (SQLException e) { e.printStackTrace(); System.out.println("Erro:execute this statement '" + sql + "'"); } return res; } /** * 执行数据库预编译的增删改操作语句 * * @param sql * 预编译增删改语句 * @param param * 预编译语句参数 * @return 影响行数 */ public int execUpdate(String sql, String[] param) { int res = 0; try { pst = con.prepareStatement(sql); for (int i = 0; i < param.length; i++) { pst.addBatch(param[i]); } } catch (SQLException e) { e.printStackTrace(); } return res; } /** * 关闭数据库连接并释放资源 */ public void close() { try { if (rs != null) { rs.close(); rs = null; } if (st != null) { st.close(); st = null; } if (pst != null) { pst.close(); pst = null; } if (con != null && !con.isClosed()) { con.close(); con = null; } System.out.println("DataBase shutdown success."); } catch (SQLException e) { e.printStackTrace(); System.out.println("DataBase shutdown error."); } } }
如琬似花12hN
2014-04-25 · TA获得超过357个赞
知道答主
回答量:124
采纳率:50%
帮助的人:115万
展开全部
package dao; import java.sql.*; public class ConnDB { private Connection con =null; public Connection getCon() { return con; } public ConnDB() { //1.加驱动 try { Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); } catch (ClassNotFoundException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } //2.建连接 try { String url="jdbc:sqlserver://localhost:1433;databaseName=JavaDB"; con=DriverManager.getConnection(url,"sa",""); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鞠痴柏
2014-04-25 · TA获得超过299个赞
知道答主
回答量:138
采纳率:75%
帮助的人:63.5万
展开全部
Class.forName("驱动的类名") ; 会执行驱动类中的static语句块,注册驱动 Connection conn=DriverManager.getConnection("数据库url","用户名","密码"); conn.setAutoCommit(false);开启事务,设置自动提交为false; PrepareStatement stmt=conn.prepareStatement(String sql) ;//获得PrepareStatement对象 ResultSet rs=stmt.executeQuery();//获得结果集 记住抓异常 rs.close;//关闭结果集 conn.close;//关闭连接
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
灿蓓拔5537
2014-04-25 · TA获得超过346个赞
知道答主
回答量:128
采纳率:0%
帮助的人:62.1万
展开全部
JAVA的数据库连接每种数据库都有不同的加载驱动,通过Class.foName("加载字符串加载");通过DriverManager.getConnection("")来获取连接的,不管什么样的数据库都少不了这两部的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式