zoukankan      html  css  js  c++  java
  • Java连接数据库,及增删改查

    自定义连接数据库的util类

    package com.shuzf.jdbc;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    public class JDBCUtil {
        // 定义驱动器类的路径
        private static final String DRIVER = "oracle.jdbc.driver.OracleDriver";
        // 定义用于连接数据库的URL
        private static final String URL = "jdbc:oracle:thin****l";
        // 定义用于访问数据库的用户名及密码
        private static final String USERNAME = "s****t";
        private static final String PASSWORD = "t***r";
    
        // 加载驱动器类
        static {
            try {
                Class.forName(DRIVER);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
    
        // 定义获得连接的方法
        public static Connection getConnection() {
            Connection conn = null;
            ;
            try {
                conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
            } catch (SQLException e) {
                e.printStackTrace();
            }
            return conn;
        }
    
        // 定义释放数据库资源的方法
        public static void destory(Connection con, Statement stat, ResultSet rs) {
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
            if (stat != null) {
                try {
                    stat.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
    
            if (con != null) {
                try {
                    con.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    
    }

    基本类

    package com.shuzf.jdbc;
    
    public class Student {
        private Integer Id;
        private String Name;
        private String Sex;
        private int Age;
         
        public Student() {
            super();
        }
        public Student(String name, String sex, int age) {
            Id = null;
            Name = name;
            Sex = sex;
            Age = age;
        }
        public Integer getId() {
            return Id;
        }
        public void setId(Integer id) {
            Id = id;
        }
        public String getName() {
            return Name;
        }
        public void setName(String name) {
            Name = name;
        }
        public String getSex() {
            return Sex;
        }
        public void setSex(String sex) {
            Sex = sex;
        }
        public int getAge() {
            return Age;
        }
        public void setAge(int age) {
            Age = age;
        }
    
    }

    增删改查

    package com.shuzf.jdbc;
    
    import java.sql.Connection;
    import java.sql.Date;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    
    public class JdbcTest {
    
        public int insert(Student student) {
            Connection conn = JDBCUtil.getConnection();
            int i = 0;
            PreparedStatement pst = null;
            String sql = "insert into students (Name,Sex,Age,Addtime) values(?,?,?,?)";
            try {
                pst = conn.prepareStatement(sql);
                pst.setString(1, student.getName());
                pst.setString(2, student.getSex());
                pst.setInt(3, student.getAge());
                pst.setDate(4, new Date(new java.util.Date().getTime()));
                i = pst.executeUpdate();
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                JDBCUtil.destory(conn, pst, null);
            }
            return i;
        }
    
        public int update(Student student) {
            Connection conn = JDBCUtil.getConnection();
            int i = 0;
            PreparedStatement pst = null;
            String sql = "update students set Age='" + student.getAge() + "' where Name='" + student.getName() + "'";
            try {
                pst = conn.prepareStatement(sql);
                i = pst.executeUpdate();
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                JDBCUtil.destory(conn, pst, null);
            }
            return i;
        }
    
        public int delete(Student student) {
            Connection conn = JDBCUtil.getConnection();
            int i = 0;
            PreparedStatement pst = null;
            String sql = "delete from students where Name='" + student.getName() + "'";
            try {
                pst = conn.prepareStatement(sql);
                i = pst.executeUpdate();
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                JDBCUtil.destory(conn, pst, null);
            }
            return i;
        }
    
        public ArrayList<Student> getStudent(String name) {
            Connection conn = JDBCUtil.getConnection();
            PreparedStatement pst = null;
            ResultSet rs = null;
            ArrayList<Student> students = new ArrayList<Student>();
            String sql = "select * from students where Name='" + name + "'";
            try {
                pst = conn.prepareStatement(sql);
                rs = pst.executeQuery();
                // int count = rs.getMetaData().getColumnCount();// 指示列数目的 int值
                while (rs.next()) {
                    Student s = new Student();
                    s.setId(rs.getInt("id"));
                    s.setName(rs.getString("name"));
                    s.setSex(rs.getString("sex"));
                    s.setAge(rs.getInt("age"));
                    students.add(s);
                }
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                JDBCUtil.destory(conn, pst, rs);
            }
            return students;
        }
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
    
        }
    
    }
  • 相关阅读:
    【概念】using 三种使用方式
    2019-7-2 作业1 2 3
    异常
    java.lang.NullPointerException
    课外作业(建立double类型的小数,按照四舍五入保留2位小数)
    作业1.2.3.4
    左自增与右自增的区别
    深入了解JVM(Java虚拟机)
    Eclipse报错Could not resolve archetype
    ThinkPad E550 连蓝牙鼠标logitech M557
  • 原文地址:https://www.cnblogs.com/shuzf/p/10026609.html
Copyright © 2011-2022 走看看