ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java操作JDBC实现增删改查工具类

2022-02-08 15:34:02  阅读:154  来源: 互联网

标签:JDBC java 改查 st sql import null com


代码实现

1.提取工具类

  • 建立一个utils包

image-20220208110302433

  • 建立一个配置文件,增加耦合度

image-20220208111352091

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3307/school?useUnicode=true&characterEncoding=utf8&useSSL=true
username=root
password=201314
  • 建立工具类加载配置文件

    package com.util;

    import com.sun.xml.internal.fastinfoset.algorithm.IEEE754FloatingPointEncodingAlgorithm;
    import jdk.nashorn.internal.ir.CatchNode;

    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.*;
    import java.util.Properties;

    public class jdbcutils {
       private  static  String driver=null;
       private  static  String url=null;
       private  static  String username=null;
       private  static  String password=null;

         static{
             try{
                 //读取配置文件中的输入流
               InputStream inputStream= jdbcutils.class.getClassLoader().getResourceAsStream("db.properties");
               Properties properties=new Properties();//拿到输入流
                 properties.load(inputStream);//读出输入流
                 driver=properties.getProperty(driver);//获取配置文件中的对象
                 url=properties.getProperty(url);//获取配置文件中的对象
                 username=properties.getProperty(username);//获取配置文件中的对象
                 password=properties.getProperty(password;//获取配置文件中的对象
                //驱动只要加载一次
                   Class.forName(driver);
                }catch (Exception e){
                 e.printStackTrace();
            }
        }
         //获取连接
        public static Connection getConnection()throws SQLException {
            return DriverManager.getConnection(url,username,password);
        }
         //释放资源
       public static void release(Connection com, Statement st, ResultSet rs){
             if(rs!=null){
                 try {
                     rs.close();
                }catch (SQLException e){
                     e.printStackTrace();
                }
            }
           if(st!=null){
               try {
                   st.close();
              }catch (SQLException e){
                   e.printStackTrace();
              }
                  if(com!=null){
               try {
                   com.close();
              }catch (SQLException e){
                   e.printStackTrace();
              }
          }
      }
          }
      }
    }

    这些都是固定的唯一要改的就是sql语句

  • 编写语句

    1. 插入语句

      package com;

      import com.sun.xml.internal.bind.v2.model.core.ID;
      import com.util.jdbcutils;

      import java.sql.Connection;
      import java.sql.ResultSet;
      import java.sql.SQLException;
      import java.sql.Statement;

      public class test {
         public static void main(String[] args) {
             Connection com=null;
             Statement st=null;
             ResultSet rs=null;
             try {
                 com= jdbcutils.getConnection();//获取数据库连接
                  st= com.createStatement();//获取SQL执行对象
                 String  sql="insert into user(`id`,`name`,`password`,`email`,`birthday`)" +
                         "values( `4`,`kai`,`123456`,`2537159362@qq.com`,`1998`)";
                 int i=st.executeUpdate(sql);//执行sql语句,i表示受影响的行数
                 if(i>0){
                     System.out.println("插入成功!");
                }
            }catch (SQLException e){
                 e.printStackTrace();
            }finally {
                 jdbcutils.release(com,st,rs);//释放资源
            }
        }
      }
      1. 删除语句

        package com;

        import com.sun.xml.internal.bind.v2.model.core.ID;
        import com.util.jdbcutils;

        import java.sql.Connection;
        import java.sql.ResultSet;
        import java.sql.SQLException;
        import java.sql.Statement;

        public class test {
           public static void main(String[] args) {
               Connection com=null;
               Statement st=null;
               ResultSet rs=null;
               try {
                   com= jdbcutils.getConnection();//获取数据库连接
                    st= com.createStatement();//获取SQL执行对象
                   String  sql="delete from user ehere id=1";
                   int i=st.executeUpdate(sql);//执行sql语句,i表示受影响的行数
                   if(i>0){
                       System.out.println("删除成功!");
                  }
              }catch (SQLException e){
                   e.printStackTrace();
              }finally {
                   jdbcutils.release(com,st,rs);//释放资源
              }
          }
        }

        和插入相比就变了一个sql,增删改都用的.executeUpdate,都只要修改sql语句就行

        1. 修改语句

        package com;

        import com.sun.xml.internal.bind.v2.model.core.ID;
        import com.util.jdbcutils;

        import java.sql.Connection;
        import java.sql.ResultSet;
        import java.sql.SQLException;
        import java.sql.Statement;

        public class test {
           public static void main(String[] args) {
               Connection com=null;
               Statement st=null;
               ResultSet rs=null;
               try {
                   com= jdbcutils.getConnection();//获取数据库连接
                    st= com.createStatement();//获取SQL执行对象
                   String  sql="update user set name=kai ehere id=1";
                   int i=st.executeUpdate(sql);//执行sql语句,i表示受影响的行数
                   if(i>0){
                       System.out.println("修改成功!");
                  }
              }catch (SQLException e){
                   e.printStackTrace();
              }finally {
                   jdbcutils.release(com,st,rs);//释放资源
              }
          }
        }
  • 查询


    package com;

    import com.sun.xml.internal.bind.v2.model.core.ID;
    import com.util.jdbcutils;

    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;

    public class test {
       public static void main(String[] args) {
           Connection com=null;
           Statement st=null;
           ResultSet rs=null;
           try {
               com= jdbcutils.getConnection();//获取数据库连接
                st= com.createStatement();//获取SQL执行对象
               String  sql="select * from user   ehere id=1";
               rs==st.executeQuery(sql);//查询完毕,会返回结构集
            while(rs.next()){
                System.out.print(rs.getString(columnlabel:"name")//把结构集打印出来
            }
          }catch (SQLException e){
               e.printStackTrace();
          }finally {
               jdbcutils.release(com,st,rs);//释放资源
          }
      }
    }

标签:JDBC,java,改查,st,sql,import,null,com
来源: https://www.cnblogs.com/zrk0929/p/15871390.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有