JAVA JDBC

package com.autumn.jdbc.utils;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * @Author: autumn
 * @Date: 2021/11/2
 */
public class DBUtil {

    //数据库驱动
    private static final String DRIVERNAME= "com.mysql.jdbc.Driver";
    //URL
    private static final String URL = "jdbc:mysql://localhost:3306/shixun?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true";
    //数据库账号
    private static final String USER = "root";
    //数据库密码
    private static final String PASSWORD = "123456";

    private static Connection conn;

    public static Connection getConn(){
        try {
            //加载数据库驱动
            Class.forName(DRIVERNAME);
            //建立数据库链接
            conn = DriverManager.getConnection(URL, USER, PASSWORD);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        return conn;
    }

}

package com.autumn.jdbc.dao.impl;

import com.autumn.jdbc.dao.ClassInfoDao;
import com.autumn.jdbc.entity.ClassInfo;
import com.autumn.jdbc.utils.DBUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

/**
 * @Author: autumn
 * @Date: 2021/11/2
 */
public class ClassInfoDaoImpl implements ClassInfoDao {
    @Override
    public List<ClassInfo> findAll() {

        List<ClassInfo> lists = new ArrayList<>();

        Connection conn = DBUtil.getConn();
        PreparedStatement ps = null;
        ResultSet resultSet = null;
        try {
            ps = conn.prepareStatement("select * from shixun.classinfo");
            resultSet = ps.executeQuery();
            while (resultSet.next()){
                lists.add(new ClassInfo(resultSet.getInt(1),resultSet.getString(2)));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                if (resultSet!=null){
                    resultSet.close();
                }
                if (ps!=null){
                    ps.close();
                }
                if (conn!=null){
                    conn.close();
                }
            } catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }
        return lists;
    }

    @Override
    public ClassInfo findById(int classId) {
        Connection conn = DBUtil.getConn();
        PreparedStatement ps = null;
        ResultSet resultSet = null;
        ClassInfo classInfo = null;
        try {
            ps = conn.prepareStatement("select * from shixun.classinfo where classId = ?");
            ps.setInt(1,classId);
            resultSet = ps.executeQuery();
            if (resultSet.next()){
                classInfo = new ClassInfo(resultSet.getInt(1), resultSet.getString(2));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                if (resultSet!=null){
                    resultSet.close();
                }
                if (ps!=null){
                    ps.close();
                }
                if (conn!=null){
                    conn.close();
                }
            } catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }
        return classInfo;
    }

    @Override
    public int add(ClassInfo classInfo) {
        Connection conn = DBUtil.getConn();
        PreparedStatement ps = null;
        ResultSet resultSet = null;
        int n = 0;
        try {
            ps = conn.prepareStatement("insert into shixun.classInfo values(null,?)");
            ps.setString(1,classInfo.getClassName());
            n = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                if (resultSet!=null){
                    resultSet.close();
                }
                if (ps!=null){
                    ps.close();
                }
                if (conn!=null){
                    conn.close();
                }
            } catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }
        return n;
    }

    @Override
    public int delete(int classId) {
        Connection conn = DBUtil.getConn();
        PreparedStatement ps = null;
        ResultSet resultSet = null;
        int n = 0;
        try {
            ps = conn.prepareStatement("delete from shixun.classInfo where classId = ?");
            ps.setInt(1,classId);
            n = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                if (resultSet!=null){
                    resultSet.close();
                }
                if (ps!=null){
                    ps.close();
                }
                if (conn!=null){
                    conn.close();
                }
            } catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }
        return n;
    }

    @Override
    public int update(ClassInfo classInfo) {
        Connection conn = DBUtil.getConn();
        PreparedStatement ps = null;
        ResultSet resultSet = null;
        int n = 0;
        try {
            ps = conn.prepareStatement("update shixun.classInfo set className = ? where classId = ?");
            ps.setString(1,classInfo.getClassName());
            ps.setInt(2,classInfo.getClassId());
            n = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                if (resultSet!=null){
                    resultSet.close();
                }
                if (ps!=null){
                    ps.close();
                }
                if (conn!=null){
                    conn.close();
                }
            } catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }
        return n;
    }
}

package com.autumn.jdbc.dao;

import com.autumn.jdbc.entity.ClassInfo;

import java.util.List;

/**
 * @Author: autumn
 * @Date: 2021/11/2
 */
public interface ClassInfoDao {

    /**
     * 查询所有班级数据
     * @return  List<ClassInfo>
     */
    List<ClassInfo> findAll();

    /**
     * 根据classId查询班级对应数据
     * @param classId
     * @return  ClassInfo
     */
    ClassInfo findById(int classId);

    /**
     * 添加班级信息
     * @param classInfo
     * @return
     */
    int add(ClassInfo classInfo);

    /**
     * 根据classId删除对应班级信息
     * @param classId
     * @return
     */
    int delete(int classId);

    /**
     * 根据id修改班级信息
     * @param classInfo
     * @return
     */
    int update(ClassInfo classInfo);

}

package com.autumn.jdbc.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * @Author: autumn
 * @Date: 2021/11/2
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ClassInfo implements Serializable {

    private int classId;
    private String className;

    public ClassInfo(String className) {
        this.className = className;
    }

}

package com.autumn.jdbc;

import com.autumn.jdbc.dao.ClassInfoDao;
import com.autumn.jdbc.dao.impl.ClassInfoDaoImpl;
import com.autumn.jdbc.entity.ClassInfo;

import java.util.List;

/**
 * @Author: autumn
 * @Date: 2021/11/2
 */
public class Test {
    public static void main(String[] args) {
        //查询测试
//        ClassInfoDao cif = new ClassInfoDaoImpl();
//        List<ClassInfo> all = cif.findAll();
//        all.forEach(l -> {
//            System.out.println(l.getClassId()+"--->"+l.getClassName());
//        });

        //根据id查询数据
//        ClassInfoDao cif = new ClassInfoDaoImpl();
//        ClassInfo byId = cif.findById(1001);
//        System.out.println(byId);

        //新增数据
//        ClassInfoDao cif = new ClassInfoDaoImpl();
//        int add = cif.add(new ClassInfo("扫黄研发室"));
//        System.out.println(add);

        //根据id删除
//        ClassInfoDao cif = new ClassInfoDaoImpl();
//        int delete = cif.delete(1005);
//        System.out.println(delete);

        //修改数据
//        ClassInfoDao cif = new ClassInfoDaoImpl();
//        int update = cif.update(new ClassInfo(1003, "哈哈哈哈"));
//        System.out.println(update);

    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值