概览
这个项目建立了四个类
分别是:
1、function(功能类,实现增删改查的相关函数)
2、main(没什么实际的意义,只是项目执行的入口)
3、students(学生管理系统,当然需要学生类,里面定义了学生的一些属性以及他们的getter、setter方法)
4、stuService(服务类,里面主要是提供了各项功能的入口)
分类介绍
1、从main类执行,它的内容十分简单,只有一个简单的调用
public class Main {
public static void main(String[] args) {
stuService stu=new stuService();//实例化stuService对象
}
}
从main函数进入stuService
public class stuService {
public stuService()
{
System.out.println("1、添加学生信息 2、删除 3、修改 4、查询 5、退出");//打印功能列表
int choice;
Scanner sc=new Scanner(System.in);//输入功能
function f1=new function();
choice=sc.nextInt();//选择选项
if(choice>=1&&choice<=5)//是否符合输入要求
{
switch(choice) {//选择功能
case 1:
f1.Add();
new stuService();
break;
case 2:
f1.Dele();
new stuService();
break;
case 3:
f1.Update();
new stuService();
break;
case 4:
f1.Search();
new stuService();
break;
case 5:
System.exit(0);
}
}else {
System.out.println("输入错误!");
}
}
}
执行每一个功能进入功能类
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;
import org.junit.Test;
public class function {
private final String url="jdbc:mysql://127.0.0.1:3306/student";
Scanner sc=new Scanner(System.in);
Connection conn=null;
Statement stat=null;
@Test
public void Add()
{
String num;
String name;
int gender;
int grade;
System.out.println("请输入num:");
num=sc.next();
System.out.println("请输入name:");
name=sc.next();
System.out.println("请输入gender:");
gender=sc.nextInt();
System.out.println("请输入grade:");
grade=sc.nextInt();
student stu1=new student(num,name,gender,grade);
String sql="insert into student values("+stu1.getStuNo()+","+stu1.getStuName()+","+stu1.getGender()+","+stu1.getScore()+")";
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection(url,"root","password");
Statement stat=conn.createStatement();
if(stat.executeUpdate(sql)>0)
{
System.out.println("添加成功!");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e){
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
stat.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
@Test
public void Dele()
{
String num;
System.out.println("请输入要删除学生的学号:");
num=sc.next();
String sql="delete from student where("+"student.Stu_no="+num+")";
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection(url,"root","password");
Statement stat=conn.createStatement();
if(stat.executeUpdate(sql)>0)
{
System.out.println("删除成功!");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
stat.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
@Test
public void Update()
{
String num1;
System.out.println("请输入要修改学生的学号:");
num1=sc.next();
String num;
String name;
int gender;
int grade;
System.out.println("请输入num:");
num=sc.next();
System.out.println("请输入name:");
name=sc.next();
System.out.println("请输入gender:");
gender=sc.nextInt();
System.out.println("请输入grade:");
grade=sc.nextInt();
student stu1=new student(num,name,gender,grade);
String sql="Update student set Stu_no="+stu1.getStuNo()+","+"Stu_name="+stu1.getStuName()+","
+"Gender="+stu1.getGender()+","+"score="+stu1.getScore()+" "+"where Stu_no="+num1;
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection(url,"tangrong", "password");
stat=conn.createStatement();
if(stat.executeUpdate(sql)>0)
{
System.out.println("修改成功!");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
if(stat!=null)
{
try {
stat.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
public void Search()
{
System.out.println("请输入要查找的学生编号:");
String num=sc.next();
String sql="select * from student where Stu_no='"+num+"'";
ResultSet rs=null;
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection(url, "tangrong", "password");
stat=conn.createStatement();
rs=stat.executeQuery(sql);
while(rs.next())
{
System.out.println("学生姓名:"+rs.getString("stu_name"));
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
stat.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
students类
public class student {
private String stuNo;
private String stuName;
private int gender;
private int score;
public student(String stuNo, String stuName, int gender, int score) {
super();
this.stuNo = stuNo;
this.stuName = stuName;
this.gender = gender;
this.score = score;
}
public String getStuNo() {
return stuNo;
}
public void setStuNo(String stuNo) {
this.stuNo = stuNo;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public int getGender() {
return gender;
}
public void setGender(int gender) {
this.gender = gender;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}