DBUtil 實戰學生管理系統

實戰要求:使用DBUtil工具實現簡單學生管理系統,要求: 添加學生信息,不允許添加學號相同的學生信息; 刪除學生信息,根據學號刪除學生信息; 修改學生信息,根據學號獲取學生信息,修改後保存到集合中; 查詢學生信息,根據學號在控制檯顯示學生基本信息:

定義抽象類接口:

import java.sql.ResultSet;

public interface IRowMapper {
        void rowMapper(ResultSet resultSet);
}

 

 

 

import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

import jdbc.IRowMapper;

public class shuju {
    public static void main(String[] args) {
	System.out.println("*****************************");
	System.out.println("*                           *");
	System.out.println("*   歡迎使用學生信息管理系統     *");
	System.out.println("*                            ");
	System.out.println("*****************************");

	for (;;) {
		System.out.println("1.添加學生信息");
		System.out.println("2.刪除學生信息");
		System.out.println("3.修改學生信息");
		System.out.println("4.查詢學生信息");
		System.out.println("5.按enter鍵以進行下步操作");
		Scanner scanner = new Scanner(System.in);
		int option = scanner.nextInt();
		switch (option) {
		case 1: {
			System.out.println("請輸入學生的學號");
			String id = scanner.next();
			System.out.println("請輸入學生的姓名");
			String name = scanner.next();
			if (Utibil.Exsit("select * from student where id=?", id)) {
				System.out.println("學號不能重複");
				return;
			}
			if (Utibil.Exsit("insert into student (name,id)values(??)", name, id)) {
				System.out.println("添加成功");
			} else {
				System.out.println("添加失敗");
			}
			break;
		}

		case 2: {
			System.out.println("請輸入學生的學號");
			String id = scanner.next();
			if (Utibil.update("delect * from student where id=?", id)) {
				System.out.println("刪除成功");
			} else {
				System.out.println("刪除失敗");
			}
			break;

		}
		case 3: {
			System.out.println("請輸入學生的學號");
			String id = scanner.next();
			String sql = "select name from user_info where id=" + id + "";
			if (!Utibil.Exsit("select * from student where id=?", id)) {
				System.out.println("學號不存在,修改失敗");
			}
			System.out.println("請輸入學生的新學號");
			id = scanner.next();
			System.out.println("請輸入學生的新姓名");
			String name = scanner.next();
			
				if (Utibil.update("update student set name? where id?", name,id)) {
					System.out.println("修改成功");
				} else {
					System.out.println("修改失敗");
    			        }
			break;
		}

		case 4: {
			System.out.println("請輸入學生的學號");
			String id = scanner.next();
			    class RowMapper implements IRowMapper{
                                @Override
				public void rowMapper(ResultSet resultSet) {
				    try {
					if(resultSet.next()) {
					String id = resultSet.getString("id");
					String name = resultSet.getString("name");
					String mobile = resultSet.getString("mobile");
					String address = resultSet.getString("address");
					System.out.println("id="+id+",name="+name+",mobile="+mobile+",address="+address);
					}else {
						System.out.println("不存在");
					}
					} catch (SQLException e) {
						e.printStackTrace();
					}
				}
			}
		DBUtil.select("select * from student where id=?", new RowMapper(), id);
			IRowMapper rowMapper=(ResultSet resultSet)->{			                  try {
				if(resultSet.next()) {
				String name = resultSet.getString("name");
				String mobile = resultSet.getString("mobile");
				String address = resultSet.getString("address");
				System.out.println("id="+id+",name="+name+",mobile="+mobile+",address="+address);
			    }else {
				System.out.println("不存在");
			    }
			   } catch (SQLException e) {
				e.printStackTrace();
			}
		};	
	DBUtil.select("select * from student where id=?", rowMapper, id);
		
	DBUtil.select("select * from student where id=?", (ResultSet resultSet)->{
		        try {
			if(resultSet.next()) {
				String name = resultSet.getString("name");
				String mobile = resultSet.getString("mobile");
				String address = resultSet.getString("address");
				System.out.println("id="+id+",name="+name+",mobile="+mobile+",address="+address);
			}else {
				System.out.println("不存在");
			}
			} catch (SQLException e) {
			    e.printStackTrace();
			}
		}, id);		   	    }    
		          }
		        break;

		    }
	       }
	 }
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章