JDBC API提供了以下接口及类似,java数据库一连)是同样栽用于实践SQL语句之Java

同、JDBC的概述–(来源于百度)

  JDBC(Java DataBase
Connectivity,java数据库接连)是千篇一律种植用于执行SQL语句的Java
API,可以为强关系数据库提供合看,它由同组用Java语言编写的类似与接口组成。JDBC提供了千篇一律种口径,据这可以构建更高级的工具和接口,使数据库开发人员可以编写数据库应用程序。JDBC对Java程序员而言是API,对落实与数据库连接的服务提供商而言是接口模型。

  JDBC 可进行三件事:与数据库建立连接、发送操作数据库的语并处理结果。

  JDBC API提供了以下接口和好像:

  • DriverManager:
    那些仿佛管理数据库驱动程序的列表。确定内容是否顺应从Java应用程序使用的通信子协议是的数据库驱动程序的总是要。识别JDBC在一定子协议的率先只驱动器将被用来建立数据库连接。

  • Driver:
    此接口处理和数据库服务器通信。很少直接直接用驱动程序(Driver)对象,一般用DriverManager遭受的目的,它用来管理此类型的目的。它吗抽象和驱动程序对象工作息息相关的详细音讯

  • Connection :
    此接口及接触数据库的富有办法。连接对象表示通信上下文,即,与数据库中之备的通信是经过此唯一的连接对象。

  • Statement :
    可以使用这些接口创制的对象的SQL语句提交至数据库。一些派生的接口接受除履行存储过程的参数。

  • ResultSet:
    那些目标保存于数据库后,执行下Statement靶的SQL查询中觅数据。它当做一个迭代器,可以由此走她来寻觅下一个数。

  • SQLException: 这些近乎用于拍卖暴发在数据库应用程序中之别不当。

相同、JDBC的概述–(来源于百度)

  JDBC(Java DataBase
Connectivity,java数据库一连)是一样栽用于执行SQL语句之Java
API,可以呢强关系数据库提供联合看,它由同组用Java语言编写的好像和接口组成。JDBC提供了相同种植规格,据这可以构建更尖端的工具及接口,使数据库开发人员可以编写数据库应用程序。JDBC对Java程序员而言是API,对实现同数据库连接的服务提供商而言是接口模型。

  JDBC 可做三起事:与数据库建立连接、发送操作数据库的话语并处理结果。

  JDBC API提供了以下接口和接近:

  • DriverManager:
    那么些看似管理数据库驱动程序的列表。确定内容是否可从Java应用程序使用的通信子协议是的数据库驱动程序的连日要。识别JDBC在一定子协议的首先个驱动器将受用来树立数据库连接。

  • Driver:
    此接口处理同数据库服务器通信。很少间接直接动用驱动程序(Driver)对象,一般下DriverManager未遭之靶子,它用于管理此类型的靶子。它呢抽象和驱动程序对象工作不无关系的详细音讯

  • Connection :
    此接口和接触数据库的有着方。连接对象表示通信上下文,即,与数据库被之兼具的通信是透过之唯一的总是对象。

  • Statement :
    可以选用是接口创立的目的的SQL语句提交到数据库。一些派生的接口接受除执行存储过程的参数。

  • ResultSet:
    那多少个目的保存于数据库后,执行下Statement目标的SQL查询中搜寻数据。它当一个迭代器,能够透过走她来寻找下一个数。

  • SQLException: 这么些看似用于拍卖发生在数据库应用程序中之其它不当。

二、CRUD

  crud是指在举办统计处理常之扩张(Create)、读取查询(Retrieve)、更新(Update)和去(Delete)几单单词的首字母简写。crud首要给用当描述软件系统面临数据库或者持久层(dao层)的基本操作效率。

二、CRUD

  crud是据在举办统计处理常之加码(Create)、读取查询(Retrieve)、更新(Update)和去(Delete)六只单词的首字母简写。crud重要受用当描述软件系统受数据库或者持久层(dao层)的基本操作效能。

老三、实现简单的CRUD

其三、实现简单的CRUD

1.兑现规范

  1.jar包, mysql-connector-java-5.1.26-bin.jar

  2.数据库MySQL

1.贯彻标准化

  1.jar包, mysql-connector-java-5.1.26-bin.jar

  2.数据库MySQL

2.具体代码

  1.dao层接口

 1 public interface ILoginUserDao {
 2     /**
 3      * 增加
 4      * @param loginUser
 5      */
 6     void save(LoginUser loginUser);
 7 
 8     /**
 9      * 删除
10      * @param id
11      */
12     void delete(Integer id);
13 
14     /**
15      * 更新
16      * @param loginUser
17      */
18     void update(LoginUser loginUser);
19 
20     /**
21      * 查询
22      * @return
23      */
24     List query();
25 }

  2.dao层实现

  1 public class LoginUserDao implements ILoginUserDao {
  2     @Override
  3     public void save(LoginUser loginUser) {
  4         System.out.println("----save----");
  5         // 首先加载jdbc实现类
  6         try {
  7             // 1.加载驱动
  8             Class.forName("com.mysql.jdbc.Driver");
  9             // 2.创建链接
 10             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 11             // 3.创建编译语句
 12             Statement statement = connection.createStatement();
 13             // 4.执行sql语句
 14             String sql = "INSERT INTO loginuser(username, password) VALUES ('王五', '6666')";
 15             int i = statement.executeUpdate(sql);
 16             // 5.释放资源
 17             statement.close();
 18             connection.close();
 19 
 20         } catch (Exception e) {
 21             e.printStackTrace();
 22         }
 23     }
 24 
 25     @Override
 26     public void delete(Integer id) {
 27         System.out.println("----delete----");
 28         try {
 29             // 1.加载驱动
 30             Class.forName("com.mysql.jdbc.Driver");
 31             // 2.创建链接
 32             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 33             // 3.创建编译语句
 34             Statement statement = connection.createStatement();
 35             // 4.执行语句
 36             String sql = "DELETE FROM loginuser WHERE id = 2";
 37             int i = statement.executeUpdate(sql);
 38             // 5.释放资源
 39             statement.close();
 40             connection.close();
 41         } catch (Exception e) {
 42             e.printStackTrace();
 43         }
 44     }
 45 
 46     @Override
 47     public void update(LoginUser loginUser) {
 48         System.out.println("----update----");
 49         try {
 50             // 1.加载驱动
 51             Class.forName("com.mysql.jdbc.Driver");
 52             // 2.创建链接
 53             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 54             // 3.创建编译语句
 55             Statement statement = connection.createStatement();
 56             // 4.执行sql语句
 57             String sql = "UPDATE loginuser SET username = '王五', password = '55555' WHERE id = 1";
 58             int i = statement.executeUpdate(sql);
 59             // 5.释放资源
 60             statement.close();
 61             connection.close();
 62         } catch (Exception e) {
 63             e.printStackTrace();
 64         }
 65     }
 66 
 67     @Override
 68     public List query() {
 69         System.out.println("----query----");
 70         // new一个list集合对象
 71         List<LoginUser> list = new ArrayList<>();
 72         try {
 73             // 1.加载驱动
 74             Class.forName("com.mysql.jdbc.Driver");
 75             // 2.创建链接
 76             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 77             // 3.创建编译语句
 78             Statement statement = connection.createStatement();
 79             // 4.执行sql语句
 80             String sql = "SELECT id, username, password FROM loginuser WHERE id > 4";
 81             ResultSet resultSet = statement.executeQuery(sql);
 82             // 取出查询内容
 83             while (resultSet.next()) {
 84                 String username = resultSet.getString("username");
 85                 String password = resultSet.getString("password");
 86                 // 创建LoginUser对象
 87                 LoginUser loginUser = new LoginUser();
 88                 loginUser.setUsername(username);
 89                 loginUser.setPassword(password);
 90                 // 添加到集合
 91                 list.add(loginUser);
 92             }
 93             // 5.释放资源
 94             resultSet.close();
 95             statement.close();
 96             connection.close();
 97 
 98         } catch (Exception e) {
 99             e.printStackTrace();
100         }
101         return list;
102     }
103 }

2.有血有肉代码

  1.dao层接口

 1 public interface ILoginUserDao {
 2     /**
 3      * 增加
 4      * @param loginUser
 5      */
 6     void save(LoginUser loginUser);
 7 
 8     /**
 9      * 删除
10      * @param id
11      */
12     void delete(Integer id);
13 
14     /**
15      * 更新
16      * @param loginUser
17      */
18     void update(LoginUser loginUser);
19 
20     /**
21      * 查询
22      * @return
23      */
24     List query();
25 }

  2.dao层实现

  1 public class LoginUserDao implements ILoginUserDao {
  2     @Override
  3     public void save(LoginUser loginUser) {
  4         System.out.println("----save----");
  5         // 首先加载jdbc实现类
  6         try {
  7             // 1.加载驱动
  8             Class.forName("com.mysql.jdbc.Driver");
  9             // 2.创建链接
 10             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 11             // 3.创建编译语句
 12             Statement statement = connection.createStatement();
 13             // 4.执行sql语句
 14             String sql = "INSERT INTO loginuser(username, password) VALUES ('王五', '6666')";
 15             int i = statement.executeUpdate(sql);
 16             // 5.释放资源
 17             statement.close();
 18             connection.close();
 19 
 20         } catch (Exception e) {
 21             e.printStackTrace();
 22         }
 23     }
 24 
 25     @Override
 26     public void delete(Integer id) {
 27         System.out.println("----delete----");
 28         try {
 29             // 1.加载驱动
 30             Class.forName("com.mysql.jdbc.Driver");
 31             // 2.创建链接
 32             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 33             // 3.创建编译语句
 34             Statement statement = connection.createStatement();
 35             // 4.执行语句
 36             String sql = "DELETE FROM loginuser WHERE id = 2";
 37             int i = statement.executeUpdate(sql);
 38             // 5.释放资源
 39             statement.close();
 40             connection.close();
 41         } catch (Exception e) {
 42             e.printStackTrace();
 43         }
 44     }
 45 
 46     @Override
 47     public void update(LoginUser loginUser) {
 48         System.out.println("----update----");
 49         try {
 50             // 1.加载驱动
 51             Class.forName("com.mysql.jdbc.Driver");
 52             // 2.创建链接
 53             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 54             // 3.创建编译语句
 55             Statement statement = connection.createStatement();
 56             // 4.执行sql语句
 57             String sql = "UPDATE loginuser SET username = '王五', password = '55555' WHERE id = 1";
 58             int i = statement.executeUpdate(sql);
 59             // 5.释放资源
 60             statement.close();
 61             connection.close();
 62         } catch (Exception e) {
 63             e.printStackTrace();
 64         }
 65     }
 66 
 67     @Override
 68     public List query() {
 69         System.out.println("----query----");
 70         // new一个list集合对象
 71         List<LoginUser> list = new ArrayList<>();
 72         try {
 73             // 1.加载驱动
 74             Class.forName("com.mysql.jdbc.Driver");
 75             // 2.创建链接
 76             Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/user", "root", "admin");
 77             // 3.创建编译语句
 78             Statement statement = connection.createStatement();
 79             // 4.执行sql语句
 80             String sql = "SELECT id, username, password FROM loginuser WHERE id > 4";
 81             ResultSet resultSet = statement.executeQuery(sql);
 82             // 取出查询内容
 83             while (resultSet.next()) {
 84                 String username = resultSet.getString("username");
 85                 String password = resultSet.getString("password");
 86                 // 创建LoginUser对象
 87                 LoginUser loginUser = new LoginUser();
 88                 loginUser.setUsername(username);
 89                 loginUser.setPassword(password);
 90                 // 添加到集合
 91                 list.add(loginUser);
 92             }
 93             // 5.释放资源
 94             resultSet.close();
 95             statement.close();
 96             connection.close();
 97 
 98         } catch (Exception e) {
 99             e.printStackTrace();
100         }
101         return list;
102     }
103 }

3.注意事项

  1.行使DriverManager获取连接.

  Connection conn = DriverManager.getConnection(String url,String
user,String password)

  2.加、删除、修改执行sql语句 statement.executeUpdate(sql) 使用的凡
executeUpdate,而查询利用的凡 executeQuery ==》ResultSet resultSet =
statement.executeQuery(sql)

 

3.注意事项

  1.使用DriverManager获取连接.

  Connection conn = DriverManager.getConnection(String url,String
user,String password)

  2.加、删除、修改执行sql语句 statement.executeUpdate(sql) 使用的是
executeUpdate,而查询利用的凡 executeQuery ==》ResultSet resultSet =
statement.executeQuery(sql)

 

相关文章