标签:查询 系统维护 detail mic 优点 跨平台 oid ref for
一.JDBC简介
1.什么是JDBC?
JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
开发公司:sun
2.JDBC可以用来做什么?
简单地说,JDBC 可做三件事:与数据库建立连接、发送、操作数据库的语句并处理结果。
3.JDBC的优劣势?
优点:直接底层操作,提供了很简单、便捷的访问数据库的方法,跨平台性比较强。因为是底层的操作,所以访问速度相比较快。
缺点:sql语句修改,需要重新编译java代码,不利于系统维护。JDBC操作的数据是“瞬时”的,变量的值无法与数据库中的值保持一致。
需要及时处理异常并正确关闭数据源。
4.JDBC的工作原理(转自百度百科)
JDBC驱动程序总共有四种类型:
第一类:JDBC-ODBC桥。
第二类:部分本地API部分Java的驱动程序。
第三类:JDBC网络纯Java驱动程序。
第四类:本地协议的纯 Java 驱动程序。
二. JDBCD应用
1.添加jar包:方式一:在pom.xml中<dependencies></dependencies>节点下添加依赖(https://mvnrepository.com/artifact/mysql/mysql-connector-java),<dependency>
方式二; 或者官网上手动下载mysql-connector-java jar包 在项目WEB-INF下创建lib文件将jar包导入然后Add library
2.
public class NewsDao { //数据库URL public static final String URL = "jdbc:mysql://localhost:3306/kgcnews"; //数据库用户名 public static final String USER = "root"; //数据库密码 public static final String PASSWORD = "123456"; //数据库连接对象 Connection conn =null; //SQL执行对象 Statement stament = null; //结果集对象 ResultSet rs = null; //连接数据库方法 public Connection connection(){ try { //1.加载驱动程序 Class.forName("com.mysql.jdbc.Driver"); //2. 获得数据库连接 conn = DriverManager.getConnection(URL, USER, PASSWORD); System.out.println("成功连接数据库"); } catch (ClassNotFoundException e) { System.out.println("数据库异常"); e.printStackTrace(); } catch (SQLException e) { System.out.println("数据库异常"); e.printStackTrace(); } return conn; } //查询方法 public ResultSet query(String sql) throws SQLException { //获取数据库连接线程 connection(); // 3.通过connection 获取一个sql语句操作对象statement stament = conn.createStatement(); // 4.执行sql获得结果 rs = stament.executeQuery(sql); return rs; } //关闭资源 public boolean destory() throws SQLException { if(rs!=null){ try { rs.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } if(stament!=null){ try { stament.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } if(conn!=null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); return false; } } return true; } public static void main(String[] args) throws SQLException {
String sql = "SELECT `userName`,`password` FROM `news_user` WHERE `id` = 4";
String sql2 = "SELECT `title`,`createDate` FROM `news_detail`";
NewsDao nd = new NewsDao();
Connection conn = nd.connection();
ResultSet rs = nd.query(sql2);
//查询后操作结果集,得到相对应的数据
while(rs.next()){
System.out.println(rs.getString("title")+"-"+rs.getString("createDate"));
}
nd.destory();
}
}
标签:查询 系统维护 detail mic 优点 跨平台 oid ref for
原文地址:https://www.cnblogs.com/jiayiblog/p/10945992.html