package stu;
import java.sql.ResultSet;
import java.sql.SQLException; //例外
public class ControlMysql {
private static String SqlStatement; //准备声明
private static ConnectMysql database; //建立数据库的连接
private static ResultSet resultSet; //用于存储结果集
private final static String tab = "\t\t";
private static boolean flog = false; //flog用来标记是否有这个老师的id
public static int SumOfTeacher(){ //得到老师的数量
SqlStatement = "select count(tid) from tea;"; //查询语句不多说
database = new ConnectMysql(SqlStatement); //前边的写的连接类, 里边的是准备执行的语句
try{
resultSet = database.pStatement.executeQuery(); //这里的executeQuery函数是说执行的是一个查询语句, 然后呢用resultset 来存储它返回的结果集
resultSet.next(); //resultset存储的貌似是从null开始的, 也就是说resultset 是一个空头指针似的只有指向下一个信息块才能正常使用
return resultSet.getInt(1); //得到结果集的第1列(select count(tid) from tea;这个返回的是一个int类型数字而且我们需要的是一个int类型的数据,所以用getint方法)
} //这里getInt(1)为什么为什么不是getInt(0) 呢 找到源码的注释是这样的:columnIndex the first column is 1, the second is 2
catch (Exception e) {
e.printStackTrace();
}
MysqlClose(1);
return 0;
}
public static int SumOfStudent(){ //得到学生的数量
SqlStatement = "select count(sid) from stu;";
database = new ConnectMysql(SqlStatement);
try{
resultSet = database.pStatement.executeQuery();
resultSet.next();
return resultSet.getInt(1);
}
catch (Exception e) {
e.printStackTrace();
}
MysqlClose(1); //关闭连接(我自己写的)如果用到了结果集也就是说是查询操作的参数就写1,因为1 被我规定为 resultSet.close(); database.close();
return 0;
}
public static Teacher gettea(String ID, String pass){ //得到老师的信息,返回一个教师类的数据
SqlStatement = "select * from tea;";
database = new ConnectMysql(SqlStatement);
String id = null, password = null, name = null, sex = null, birthday = null, position = null;
try{
resultSet = database.pStatement.executeQuery();
while(resultSet.next()){
if(resultSet.getString(1).equals(ID)){
flog = true; //flog用来标记是否有这个老师的id
if(resultSet.getString(2).equals(pass)){
id = resultSet.getString(1);
password = resultSet.getString(2);
name = resultSet.getString(3);
sex = resultSet.getString(4);
birthday = resultSet.getString(5);
position = resultSet.getString(6);
// System.out.println(id + tab + password + tab + name + tab + sex + tab + birthday + tab + position);
}
else {
System.out.println("Wrong Password!");
}
}
}
if(!flog) System.out.println("No This ID!");
}
catch(SQLException e){
e.printStackTrace();
}
MysqlClose(1);
return new Teacher(id, password, name, sex, birthday, position);
}
public static Student getstu(String ID, String pass){
SqlStatement = "select * from stu;";
database = new ConnectMysql(SqlStatement);
String id = null, password = null, name = null, sex = null, birthday = null, major = null;
try{
resultSet = database.pStatement.executeQuery();
while(resultSet.next()){ //前边忘了写了resultSet.next() 返回的是一个Boolean类型的变量值, 如果下一个数据为空就返回false不然就是true
if(resultSet.getString(1).equals(ID)){ //验证id
flog = true;
if(resultSet.getString(2).equals(pass)){
id = resultSet.getString(1);
password = resultSet.getString(2);
name = resultSet.getString(3);
sex = resultSet.getString(4);
birthday = resultSet.getString(5);
major = resultSet.getString(6);
// System.out.println(id + tab + password + tab + name + tab + sex + tab + birthday + tab + major);
}
else {
System.out.println("Wrong Password!");
}
}
}
if(!flog) System.out.println("No This ID!");
}
catch(SQLException e){
e.printStackTrace();
}
MysqlClose(1);
return new Student(id, password, name, sex, birthday, major);
}
public static boolean addStudent(Student stu){
String id = stu.getID(), password = stu.getPassword(), name = stu.getName(),
sex = stu.getSex(), birthday = stu.getbirthday(), major = stu.getmajor();
System.out.println(id);
System.out.println(password);
System.out.println(name);
System.out.println(sex);
System.out.println(birthday);
System.out.println(major);
SqlStatement = "insert into stu(sid, spassword, sname, ssex, sbirthday, smajor)" +
"select '"+ id +"','" + password + "','" + name + "','" + sex + "','" + birthday + "','" + major + "';";
database = new ConnectMysql(SqlStatement);
System.out.println(SqlStatement);
try{
database.pStatement.executeUpdate();
}
catch(SQLException e){
e.printStackTrace();
return false;
}
MysqlClose(2);
return true;
}
public static boolean addTeacher(Teacher tea){
String id = tea.getID(), password = tea.getPassword(), name = tea.getName(),
sex = tea.getSex(), birthday = tea.getbirthday(), position = tea.getPosition();
System.out.println(id);
System.out.println(password);
System.out.println(name);
System.out.println(sex);
System.out.println(birthday);
System.out.println(position);
SqlStatement = "insert into tea(tid, tpassword, tname, tsex, tbirthday, tposition)" +
"select '"+ id +"','" + password + "','" + name + "','" + sex + "','" + birthday + "','" + position + "';";
database = new ConnectMysql(SqlStatement);
System.out.println(SqlStatement);
try{
database.pStatement.executeUpdate();
}
catch(SQLException e){
e.printStackTrace();
return false;
}
MysqlClose(2); //这里关闭连接的参数是2 , 没有用到结果集所以只有database.close();
return true;
}
public static Student getOnestu(String ID){
SqlStatement = "select * from stu where sid = '" + ID + "';";
database = new ConnectMysql(SqlStatement);
String id = null, password = null, name = null, sex = null, birthday = null, major = null;
try{
resultSet = database.pStatement.executeQuery();
while(resultSet.next()){
if(resultSet.getString(1).equals(ID)){
flog = true;
id = resultSet.getString(1);
password = resultSet.getString(2);
name = resultSet.getString(3);
sex = resultSet.getString(4);
birthday = resultSet.getString(5);
major = resultSet.getString(6);
}
}
if(!flog) System.out.println("No This ID!");
}
catch(SQLException e){
e.printStackTrace();
}
MysqlClose(1);
return new Student(id, password, name, sex, birthday, major);
}
public static Student[] getSomestus(int sum){
SqlStatement = "select * from stu;";
database = new ConnectMysql(SqlStatement);
int i = 0;
String id = null, password = null, name = null, sex = null, birthday = null, major = null;
Student []stus;
stus= new Student[sum];
try{
resultSet = database.pStatement.executeQuery();
while(resultSet.next() && i < sum){
flog = true;
id = resultSet.getString(1);
password = resultSet.getString(2);
name = resultSet.getString(3);
sex = resultSet.getString(4);
birthday = resultSet.getString(5);
major = resultSet.getString(6);
stus[i++] = new Student(id, password, name, sex, birthday, major);
}
}
catch(SQLException e){
e.printStackTrace();
}
MysqlClose(1);
return stus;
}
public static void MysqlClose(int ok){
if(1 == ok){
try{
resultSet.close();
database.close();
}
catch(SQLException e){
e.printStackTrace();
}
}
else if(2 == ok){
try{
database.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Java开发学生管理系统-project
共31个文件
class:17个
java:11个
prefs:1个
需积分: 13 9 下载量 134 浏览量
2017-05-04
09:33:05
上传
评论 3
收藏 19KB 7Z 举报
温馨提示
http://blog.csdn.net/deathislikethewind/article/details/71122647
资源推荐
资源详情
资源评论
收起资源包目录
project.7z (31个子文件)
Project
bin
stu
Main$2.class 607B
TeacherUI.class 5KB
TeacherSignin.class 5KB
Human.class 1KB
StudentUI.class 2KB
ConnectMysql.class 1KB
Main.class 5KB
Teacher.class 1KB
ControlMysql.class 6KB
Person.class 2KB
Student.class 1KB
Main$1.class 607B
StudentSignin.class 6KB
Main$3.class 841B
Main$4.class 947B
Main$5.class 949B
Main$6.class 949B
.settings
org.eclipse.jdt.core.prefs 598B
src
stu
Teacher.java 420B
Person.java 673B
Student.java 402B
StudentSignin.java 5KB
TeacherUI.java 5KB
StudentUI.java 1KB
Human.java 558B
ConnectMysql.java 2KB
ControlMysql.java 8KB
Main.java 7KB
TeacherSignin.java 5KB
.project 383B
.classpath 461B
共 31 条
- 1
资源评论
GoesOn
- 粉丝: 20
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功