1、JDBC的概念:Java数据库连接技术(Java DataBase Connectivity)能实现java程序对各种数据库的访问,由一组使用java语言编写的类和接口(jdbc api)组成,他们位于java.sql以及javax.sql中。2、JDBC API 使用JDB ...
1、JDBC的概念:
Java数据库连接技术(Java DataBase Connectivity)能实现java程序对各种数据库的访问,由一组使用java语言编写的类和接口(jdbc api)组成,他们位于java.sql以及javax.sql中。
2、JDBC API 使用JDBC访问数据库就要用JDBC API完成3件事:与数据库链接,返送sql语句和处理结果。
Java应用程序可以使用java.sql和javax.sql包中的JDBC APL来链接和操作;
工作的4个重要环节:
(1).DriverManager类:依据数据库的不同,管理JDBC驱动;
(2).Connection接口:负责链接数据库并担任传送数据的任务。
(3).Statement接口:由Connection产生,负责执行SQL语句。
(4).ResultSet接口:负责保存Statement执行后所参数的查询结果。
3、JDBC访问数据库的步骤:
(1)Class.forName(oracle.jdbc.driver.OracleDriver);//加载驱动
(2)Connection conn=DriverManager.getConnection(“jdbc:oracle:thin:@127.0.0.1:1521:orcl”,”scott”,”orcl”);//创建连接
(3).Statement stmt=conn.createStatement();//创建Statement对象
String sql=””;
ResultSet rs= Stmt.executeQuery(sql);
(4)while(rs.next()){int id=rs.getInt(1);
Timestamp time=rs.getTimestamp(“createdate”);}//循环读取结果集
4.资源的释放
Re.close();
Stmt.close();
Conn.close();
5、通过DatasourceFactory和创建database.properties配置文件链接数据库
1.建BaseDao文件,提取建立数据库连接的通用方法
package demo.mysql.dao;import java.sql.Connection;import java.sql.DriverManager;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 demo.mysql.util.ConfigManager;public class BaseDao { protected Connection conn; protected PreparedStatement ps; protected Statement stmt; protected ResultSet rs; // 获取数据库链接 public boolean getConnection() { String driver = ConfigManager.getInstance().getString("jdbc.driver_class"); String url = ConfigManager.getInstance().getString("jdbc.connection.url"); String username = ConfigManager.getInstance().getString("jdbc.connection.username"); String password = ConfigManager.getInstance().getString("jdbc.connection.password"); try { // (1).Class.forName()加载驱动 Class.forName(driver); // (2).DriverManager.getConnection(数据库url,用户名,密码);onnection1521 conn = DriverManager.getConnection(url, username, password); } catch (ClassNotFoundException e) { e.printStackTrace(); return false; } catch (SQLException e) { e.printStackTrace(); return false; } return true; } public Connection getConnection2(){ try { //初始话上下文 Context cxt=new InitialContext(); //获取与逻辑名相关联的数据源对象 DataSource ds=(DataSource)cxt.lookup("java:comp/env/jdbc/orcl"); conn=ds.getConnection(); } catch (NamingException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return conn; } // 增删改 public int executeUpdate(String sql, Object[] params) { int updateRows = 0; getConnection(); try { ps=conn.prepareStatement(sql); //填充占位符 for (int i = 0; i < params.length; i++) { ps.setObject(i+1, params[i]); } updateRows=ps.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } return updateRows; } // 查询 public ResultSet executeSQL(String sql, Object[] params) { try { getConnection(); ps=conn.prepareStatement(sql); //填充占位符 for (int i = 0; i < params.length; i++) { ps.setObject(i+1, params[i]); } rs=ps.executeQuery(); } catch (SQLException e) { e.printStackTrace(); } return rs; } // 关闭资源 public boolean closeResource() { if (rs!=null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } if (ps!=null) { try { ps.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } if (stmt!=null) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } if (conn!=null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } return true; }}
原标题:JDBC与javaBean知识
关键词:JAVA
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。