老师信息管理系统(连接SQL)

连接数据库和关闭数据库

package dao;

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

public class DBUtil {
	private Connection conn = null;
	
	// 一个得到连接Connection的方法
	public Connection getConn() {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			 conn = DriverManager.getConnection(
					"jdbc:mysql://localhost:3306/lanoudb?useUnicode=true&characterEncoding=UTF-8", "root", "123456");
		} catch (Exception e) {
			e.printStackTrace();
		}
		return conn;
	}
	
	public void close(){
		try{
			if(!conn.isClosed()){
				conn.close();
			}
		}catch(Exception e){
			e.printStackTrace();
		}
	}
}

老师类

package dao;

public class Teacher {
	private String tid;
	private String tname;
	
	public String getTid() {
		return tid;
	}
	public void setTid(String tid) {
		this.tid = tid;
	}
	public String getTname() {
		return tname;
	}
	public void setTname(String tname) {
		this.tname = tname;
	}
	
	
}

对SQL 的CRUD

package dao;

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

public class TeacherDao extends DBUtil {
	private List<Teacher> teachers = null;
	
	//添加
	public int saveTeacher(Teacher teacher){
		Connection conn = getConn();
		try {
		    String sql = "insert into t_teacher(tid,tname) values(?,?)";
		    PreparedStatement pstm = conn.prepareStatement(sql);
		    
		    pstm.setString(1, teacher.getTid());
		    pstm.setString(2, teacher.getTname());
		    return pstm.executeUpdate();
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			close();
		}
		return 0;
	}
	
	//删除
	public int deleteTeacher(String tid){
		Connection conn = getConn();
		try {
			String sql = "delete from t_teacher where tid=?";
		    PreparedStatement pstm = conn.prepareStatement(sql);
		    
		    pstm.setString(1, tid);

		    return pstm.executeUpdate();
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			close();
		}
		return 0;
	}
	
	//修改
	public int updateTeacher(Teacher teacher){
		Connection conn = getConn();
		try {
		    String sql = "update t_teacher set tname=? where tid=?";
		    PreparedStatement pstm = conn.prepareStatement(sql);
		    
		    pstm.setString(2, teacher.getTid());
		    pstm.setString(1, teacher.getTname());
		    return pstm.executeUpdate();
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			close();
		}
		return 0;
	}
	
	//查询
	public List<Teacher> getTeachers(){
		teachers = new ArrayList<Teacher>();
		Connection conn = getConn();
		try {
		    String sql = "select tid,tname from t_teacher";
		    PreparedStatement pstm = conn.prepareStatement(sql);
		    
		    ResultSet rs =  pstm.executeQuery();
		    while(rs.next()){
		    	Teacher teacher = new Teacher();
		    	teacher.setTid(rs.getString("tid"));
		    	teacher.setTname(rs.getString("tname"));
		    	
		    	teachers.add(teacher);
		    }
		}catch(Exception e){
			e.printStackTrace();
		}finally{
			close();
		}
		
		return teachers;
	}
	
}

测试主类

package dao;

import java.util.Scanner;

public class UI {
	public static void main(String[] args) {
		TeacherDao teacherDao = new TeacherDao();
		while(true){
			System.out.println("欢迎使用老师管理系统v1.0beta");
			System.out.println("1.添加老师...\n2.修改老师...\n3.删除老师...\n4.查询老师...\n5.退出系统...");

			Scanner scanner = new Scanner(System.in);

			int choice = scanner.nextInt();

			switch (choice) {
			case 1:
				System.out.println("请输入老师工号...");
				String tid = scanner.next();
				System.out.println("请输入老师姓名...");
				String tname = scanner.next();
				
				//封装
				Teacher teacher = new Teacher();
				teacher.setTid(tid);
				teacher.setTname(tname);
				
				if(teacherDao.saveTeacher(teacher) > 0){
					System.out.println("数据成功录入系统...");
				}else{
					System.out.println("对不起,数据录入失败...");
				}
				break;
			case 2:

				break;
			case 3:

				break;
			case 4:

				break;
			case 5:
				System.exit(0);
				break;
			default:
				break;
			}
		}
	}
}

猜你喜欢

转载自blog.csdn.net/qq_42651904/article/details/81393235
今日推荐