上代码啦啦啦
管理员的登录界面:
package com.artisan.dao;
import com.artisan.model.Admin;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class AdminDao extends BaseDao {
/**
* 管理员登陆
*/
public Admin login(Admin admin){
String sql = "select * from s_admin where name=? and password=?";
Admin adminRst = null;
try {
PreparedStatement prst = con.prepareStatement(sql);//把sql语句传给数据库操作对象
prst.setString(1, admin.getName());
prst.setString(2, admin.getPassword());
ResultSet executeQuery = prst.executeQuery();
if(executeQuery.next()){
adminRst = new Admin();
adminRst.setId(executeQuery.getInt("id"));
adminRst.setName(executeQuery.getString("name"));
adminRst.setPassword(executeQuery.getString("password"));
adminRst.setCreateDate(executeQuery.getString("createDate"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return adminRst;
}
public String editPassword(Admin admin,String newPassword){
String sql = "select * from s_admin where id=? and password=?";
PreparedStatement prst = null;
int id = 0;
try {
prst = con.prepareStatement(sql);
prst.setInt(1, admin.getId());
prst.setString(2, admin.getPassword());
ResultSet executeQuery = prst.executeQuery();
if(!executeQuery.next()){
String retString = "旧密码错误!";
return retString;
}
id = executeQuery.getInt("id");
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}//把sql语句传给数据库操作对象
String retString = "修改失败";
String sqlString = "update s_admin set password = ? where id = ?";
try {
prst = con.prepareStatement(sqlString);
prst.setString(1, newPassword);
prst.setInt(2, id);
int rst = prst.executeUpdate();
if(rst > 0){
retString = "密码修改成功!";
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//把sql语句传给数据库操作对象
return retString;
}
}
创建对数据库的连接对象,整个程序与数据库相关都用这个对象
package com.artisan.dao;
import java.sql.Connection;
import java.sql.SQLException;
import com.artisan.util.DbUtil;
/**
*
* @author llq
*创建对数据库连接对象,整个项目与数据库打交道都用这一个对象.
*/
public class BaseDao {
public Connection con = new DbUtil().getCon();
public void closeDao(){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
班级信息与数据库的操作:
package com.artisan.dao;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.artisan.model.StudentClass;
import com.artisan.util.StringUtil;
/**
*
* 班级信息与数据库的操作
* @author llq
*
*/
public class ClassDao extends BaseDao {
public boolean addClass(StudentClass scl){
String sql = "insert into s_class values(null,?,?)";
try {
java.sql.PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, scl.getName());
preparedStatement.setString(2, scl.getInfo());
if(preparedStatement.executeUpdate() > 0)return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public List getClassList(StudentClass studentClass){
List retList = new ArrayList();
String sqlString = "select * from s_class";
if(!StringUtil.isEmpty(studentClass.getName())){
sqlString += " where name like '%"+studentClass.getName()+"%'";
}
try {
PreparedStatement preparedStatement = con.prepareStatement(sqlString);
ResultSet executeQuery = preparedStatement.executeQuery();
while(executeQuery.next()){
StudentClass sc = new StudentClass();
sc.setId(executeQuery.getInt("id"));
sc.setName(executeQuery.getString("name"));
sc.setInfo(executeQuery.getString("info"));
retList.add(sc);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return retList;
}
public boolean delete(int id){
String sql = "delete from s_class where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, id);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean update(StudentClass sc){
String sql = "update s_class set name=?, info=? where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, sc.getName());
preparedStatement.setString(2, sc.getInfo());
preparedStatement.setInt(3, sc.getId());
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
}
课程信息的操作
package com.artisan.dao;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.artisan.model.Course;
import com.artisan.util.StringUtil;
/**
*
* @author llq
*课程信息操作数据库
*/
public class CourseDao extends BaseDao {
public boolean addCourse(Course course){
String sql = "insert into s_course values(null,?,?,?,?,0)";
try {
java.sql.PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, course.getName());
preparedStatement.setInt(2, course.getTeacher_id());
preparedStatement.setInt(3, course.getMax_student_num());
preparedStatement.setString(4, course.getInfo());
if(preparedStatement.executeUpdate() > 0)return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public List getCourseList(Course course){
List retList = new ArrayList();
StringBuffer sqlString = new StringBuffer("select * from s_course");
if(!StringUtil.isEmpty(course.getName())){
sqlString.append(" and name like '%"+course.getName()+"%'");
}
if(course.getTeacher_id() != 0){
sqlString.append(" and teacher_id ="+course.getTeacher_id());
}
try {
PreparedStatement preparedStatement = con.prepareStatement(sqlString.toString().replaceFirst("and", "where"));
ResultSet executeQuery = preparedStatement.executeQuery();
while(executeQuery.next()){
Course c = new Course();
c.setId(executeQuery.getInt("id"));
c.setName(executeQuery.getString("name"));
c.setTeacher_id(executeQuery.getInt("teacher_id"));
c.setMax_student_num(executeQuery.getInt("max_student_num"));
c.setInfo(executeQuery.getString("info"));
c.setSelected_num(executeQuery.getInt("selected_num"));
retList.add(c);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return retList;
}
public boolean delete(int id){
String sql = "delete from s_course where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, id);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean update(Course course){
String sql = "update s_course set name=?, teacher_id=?,max_student_num=?,info=? where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, course.getName());
preparedStatement.setInt(2, course.getTeacher_id());
preparedStatement.setInt(3, course.getMax_student_num());
preparedStatement.setString(4, course.getInfo());
preparedStatement.setInt(5, course.getId());
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean selectedEnable(int course_id){
String sql = "select * from s_course where id=?";
try {
PreparedStatement prst = con.prepareStatement(sql);//把sql语句传给数据库操作对象
prst.setInt(1, course_id);
ResultSet executeQuery = prst.executeQuery();
if(executeQuery.next()){
int max_student_num = executeQuery.getInt("max_student_num");
int selected_num = executeQuery.getInt("selected_num");
if(selected_num >= max_student_num)return false;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return true;
}
public boolean updateSelectedNum(int course_id,int num){
String sql = "update s_course set selected_num = selected_num + ? where id = ?";
if(num < 0){
sql = "update s_course set selected_num = selected_num - ? where id = ?";
}
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, 1);
preparedStatement.setInt(2, course_id);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
}
选课表的相关操作
package com.artisan.dao;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.artisan.model.SelectedCourse;
/**
*
* @author llq
*选课表操作
*/
public class SelectedCourseDao extends BaseDao {
public boolean addSelectedCourse(SelectedCourse selectedCourse){
String sql = "insert into s_selected_course values(null,?,?)";
try {
java.sql.PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, selectedCourse.getStudent_id());
preparedStatement.setInt(2, selectedCourse.getCourse_id());
if(preparedStatement.executeUpdate() > 0)return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean updateSelectedCourse(SelectedCourse selectedCourse){
String sql = "update s_selected_course set student_id = ?,course_id = ? where id = ?";
try {
java.sql.PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, selectedCourse.getStudent_id());
preparedStatement.setInt(2, selectedCourse.getCourse_id());
preparedStatement.setInt(3, selectedCourse.getId());
if(preparedStatement.executeUpdate() > 0)return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public List getSelectedCourseList(SelectedCourse selectedCourse){
List retList = new ArrayList();
StringBuffer sqlString = new StringBuffer("select * from s_selected_course");
if(selectedCourse.getStudent_id() != 0){
sqlString.append(" and student_id = "+selectedCourse.getStudent_id());
}
if(selectedCourse.getCourse_id() != 0){
sqlString.append(" and course_id ="+selectedCourse.getCourse_id());
}
try {
PreparedStatement preparedStatement = con.prepareStatement(sqlString.toString().replaceFirst("and", "where"));
ResultSet executeQuery = preparedStatement.executeQuery();
while(executeQuery.next()){
SelectedCourse sc = new SelectedCourse();
sc.setId(executeQuery.getInt("id"));
sc.setStudent_id(executeQuery.getInt("student_id"));
sc.setCourse_id(executeQuery.getInt("course_id"));
retList.add(sc);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return retList;
}
public boolean isSelected(SelectedCourse selectedCourse){
String sql = "select * from s_selected_course where student_id=? and course_id = ?";
try {
PreparedStatement prst = con.prepareStatement(sql);//把sql语句传给数据库操作对象
prst.setInt(1, selectedCourse.getStudent_id());
prst.setInt(2, selectedCourse.getCourse_id());
ResultSet executeQuery = prst.executeQuery();
if(executeQuery.next()){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean delete(int id){
String sql = "delete from s_selected_course where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, id);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public Boolean deleteBySids(int parseInt) {
// TODO Auto-generated method stub
String sql = "delete from s_selected_course where student_id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, parseInt);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
}
学生表的操作
package com.artisan.dao;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.artisan.model.Admin;
import com.artisan.model.Student;
import com.artisan.model.StudentClass;
import com.artisan.util.StringUtil;
public class StudentDao extends BaseDao {
public boolean addStudent(Student student){
String sql = "insert into s_student values(null,?,?,?,?)";
try {
java.sql.PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, student.getName());
preparedStatement.setInt(2, student.getClassId());
preparedStatement.setString(3, student.getPassword());
preparedStatement.setString(4, student.getSex());
if(preparedStatement.executeUpdate() > 0)return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public List getStudentList(Student student){
List retList = new ArrayList();
StringBuffer sqlString = new StringBuffer("select * from s_student");
if(!StringUtil.isEmpty(student.getName())){
sqlString.append(" and name like '%"+student.getName()+"%'");
}
if(student.getClassId() != 0){
sqlString.append(" and classId ="+student.getClassId());
}
try {
PreparedStatement preparedStatement = con.prepareStatement(sqlString.toString().replaceFirst("and", "where"));
ResultSet executeQuery = preparedStatement.executeQuery();
while(executeQuery.next()){
Student s = new Student();
s.setId(executeQuery.getInt("id"));
s.setName(executeQuery.getString("name"));
s.setClassId(executeQuery.getInt("classId"));
s.setSex(executeQuery.getString("sex"));
s.setPassword(executeQuery.getString("password"));
retList.add(s);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return retList;
}
public boolean delete(int id){
String sql = "delete from s_student where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, id);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean update(Student student){
String sql = "update s_student set name=?, classId=?,sex=?,password=? where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, student.getName());
preparedStatement.setInt(2, student.getClassId());
preparedStatement.setString(3, student.getSex());
preparedStatement.setString(4, student.getPassword());
preparedStatement.setInt(5, student.getId());
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public String editPassword(Student student,String newPassword){
String sql = "select * from s_student where id=? and password=?";
PreparedStatement prst = null;
int id = 0;
try {
prst = con.prepareStatement(sql);
prst.setInt(1, student.getId());
prst.setString(2, student.getPassword());
ResultSet executeQuery = prst.executeQuery();
if(!executeQuery.next()){
String retString = "旧密码错误!";
return retString;
}
id = executeQuery.getInt("id");
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}//把sql语句传给数据库操作对象
String retString = "修改失败";
String sqlString = "update s_student set password = ? where id = ?";
try {
prst = con.prepareStatement(sqlString);
prst.setString(1, newPassword);
prst.setInt(2, id);
int rst = prst.executeUpdate();
if(rst > 0){
retString = "密码修改成功!";
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//把sql语句传给数据库操作对象
return retString;
}
public Student login(Student student){
String sql = "select * from s_student where name=? and password=?";
Student studentRst = null;
try {
PreparedStatement prst = con.prepareStatement(sql);//把sql语句传给数据库操作对象
prst.setString(1, student.getName());
prst.setString(2, student.getPassword());
ResultSet executeQuery = prst.executeQuery();
if(executeQuery.next()){
studentRst = new Student();
studentRst.setId(executeQuery.getInt("id"));
studentRst.setClassId(executeQuery.getInt("classId"));
studentRst.setName(executeQuery.getString("name"));
studentRst.setPassword(executeQuery.getString("password"));
studentRst.setSex(executeQuery.getString("sex"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return studentRst;
}
}
教师信息的操作
package com.artisan.dao;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.artisan.model.Admin;
import com.artisan.model.Student;
import com.artisan.model.StudentClass;
import com.artisan.util.StringUtil;
public class StudentDao extends BaseDao {
public boolean addStudent(Student student){
String sql = "insert into s_student values(null,?,?,?,?)";
try {
java.sql.PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, student.getName());
preparedStatement.setInt(2, student.getClassId());
preparedStatement.setString(3, student.getPassword());
preparedStatement.setString(4, student.getSex());
if(preparedStatement.executeUpdate() > 0)return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public List getStudentList(Student student){
List retList = new ArrayList();
StringBuffer sqlString = new StringBuffer("select * from s_student");
if(!StringUtil.isEmpty(student.getName())){
sqlString.append(" and name like '%"+student.getName()+"%'");
}
if(student.getClassId() != 0){
sqlString.append(" and classId ="+student.getClassId());
}
try {
PreparedStatement preparedStatement = con.prepareStatement(sqlString.toString().replaceFirst("and", "where"));
ResultSet executeQuery = preparedStatement.executeQuery();
while(executeQuery.next()){
Student s = new Student();
s.setId(executeQuery.getInt("id"));
s.setName(executeQuery.getString("name"));
s.setClassId(executeQuery.getInt("classId"));
s.setSex(executeQuery.getString("sex"));
s.setPassword(executeQuery.getString("password"));
retList.add(s);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return retList;
}
public boolean delete(int id){
String sql = "delete from s_student where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setInt(1, id);
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean update(Student student){
String sql = "update s_student set name=?, classId=?,sex=?,password=? where id=?";
try {
PreparedStatement preparedStatement = con.prepareStatement(sql);
preparedStatement.setString(1, student.getName());
preparedStatement.setInt(2, student.getClassId());
preparedStatement.setString(3, student.getSex());
preparedStatement.setString(4, student.getPassword());
preparedStatement.setInt(5, student.getId());
if(preparedStatement.executeUpdate() > 0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public String editPassword(Student student,String newPassword){
String sql = "select * from s_student where id=? and password=?";
PreparedStatement prst = null;
int id = 0;
try {
prst = con.prepareStatement(sql);
prst.setInt(1, student.getId());
prst.setString(2, student.getPassword());
ResultSet executeQuery = prst.executeQuery();
if(!executeQuery.next()){
String retString = "旧密码错误!";
return retString;
}
id = executeQuery.getInt("id");
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}//把sql语句传给数据库操作对象
String retString = "修改失败";
String sqlString = "update s_student set password = ? where id = ?";
try {
prst = con.prepareStatement(sqlString);
prst.setString(1, newPassword);
prst.setInt(2, id);
int rst = prst.executeUpdate();
if(rst > 0){
retString = "密码修改成功!";
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//把sql语句传给数据库操作对象
return retString;
}
public Student login(Student student){
String sql = "select * from s_student where name=? and password=?";
Student studentRst = null;
try {
PreparedStatement prst = con.prepareStatement(sql);//把sql语句传给数据库操作对象
prst.setString(1, student.getName());
prst.setString(2, student.getPassword());
ResultSet executeQuery = prst.executeQuery();
if(executeQuery.next()){
studentRst = new Student();
studentRst.setId(executeQuery.getInt("id"));
studentRst.setClassId(executeQuery.getInt("classId"));
studentRst.setName(executeQuery.getString("name"));
studentRst.setPassword(executeQuery.getString("password"));
studentRst.setSex(executeQuery.getString("sex"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return studentRst;
}
}
获得管理员信息
package com.artisan.model;
public class Admin{
private int id;
private String name;
private String password;
private String createDate;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getCreateDate() {
return createDate;
}
public void setCreateDate(String createDate) {
this.createDate = createDate;
}
}
获得课程信息的实体
package com.artisan.model;
/**
*
* @author llq
*课程信息实体
*/
public class Course {
private int id;
private String name;
private int teacher_id;
private int max_student_num;
private String info;
private int selected_num = 0;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getTeacher_id() {
return teacher_id;
}
public void setTeacher_id(int teacher_id) {
this.teacher_id = teacher_id;
}
public int getMax_student_num() {
return max_student_num;
}
public void setMax_student_num(int max_student_num) {
this.max_student_num = max_student_num;
}
public String getInfo() {
return info;
}
public void setInfo(String info) {
this.info = info;
}
public int getSelected_num() {
return selected_num;
}
public void setSelected_num(int selected_num) {
this.selected_num = selected_num;
}
public String toString(){
return this.name;
}
}
获得选课表信息
package com.artisan.model;
/**
*
* @author llq
*选课表
*/
public class SelectedCourse {
private int id;
private int student_id;
private int course_id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getStudent_id() {
return student_id;
}
public void setStudent_id(int student_id) {
this.student_id = student_id;
}
public int getCourse_id() {
return course_id;
}
public void setCourse_id(int course_id) {
this.course_id = course_id;
}
}
获得学生信息
package com.artisan.model;
public class Student {
private int id;
private String name;
private int classId;
private String password;
private String sex;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getClassId() {
return classId;
}
public void setClassId(int classId) {
this.classId = classId;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String toString(){
return this.name;
}
}
获得班级信息
package com.artisan.model;
/**
*
* @author llq
*班级信息entity
*/
public class StudentClass {
private int id;
private String name;
private String info;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getInfo() {
return info;
}
public void setInfo(String info) {
this.info = info;
}
@Override
public String toString(){
return this.name;
}
}
获得教师信息表
package com.artisan.model;
/**
*
* @author llq
*教师信息表
*/
public class Teacher {
private int id;
private String name;
private String sex;
private String title;
private int age;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String toString(){
return this.name;
}
}
用户类型
package com.artisan.model;
public enum UserType {
ADMIN("系统管理员",0),TEACHER("教师",1),STUDENT("学生",2);
private String name;
private int index;
private UserType(String name,int index){
this.name = name;
this.index = index;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
@Override
public String toString(){
return this.name;
}
}
数据库的连接与关闭
package com.artisan.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DbUtil {
private String dbUrl="jdbc:mysql://localhost:3306/db_student?useUnicode=true&characterEncoding=utf8"; // 数据库连接地址
private String dbUserName="root"; // 用户名
private String dbPassword="123"; // 密码
private String jdbcName="com.mysql.jdbc.Driver"; // 驱动名称
/**
* 获取数据库连接
* @return
* @throws Exception
*/
public Connection getCon(){
try {
Class.forName(jdbcName);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Connection con = null;
try {
con = DriverManager.getConnection(dbUrl, dbUserName, dbPassword);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
/**
* 关闭数据库连接
* @param con
* @throws Exception
*/
public void closeCon(Connection con)throws Exception{
if(con!=null){
con.close();
}
}
public static void main(String[] args) {
DbUtil dbUtil=new DbUtil();
try {
dbUtil.getCon();
System.out.println("数据库连接成功!");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("数据库连接失败");
}
}
}
检测是否为空
package com.artisan.util;
public class StringUtil {
public static boolean isEmpty(String str){
if("".equals(str)|| str == null){
return true;
}
return false;
}
}
添加课程
package com.artisan.view;
import java.awt.EventQueue;
import javax.swing.JInternalFrame;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.JComboBox;
import javax.swing.JTextArea;
import javax.swing.JButton;
import com.artisan.dao.CourseDao;
import com.artisan.dao.TeacherDao;
import com.artisan.model.Course;
import com.artisan.model.Teacher;
import com.artisan.util.StringUtil;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.List;
public class AddCourseFrm extends JInternalFrame {
private JTextField courseNameTextField;
private JTextField studentNumTextField;
private JComboBox teacherListComboBox;
private JTextArea courseInfoTextArea;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
AddCourseFrm frame = new AddCourseFrm();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public AddCourseFrm() {
setClosable(true);
setIconifiable(true);
setTitle("\u6DFB\u52A0\u8BFE\u7A0B");
setBounds(100, 100, 453, 471);
JLabel label = new JLabel("\u8BFE\u7A0B\u540D\u79F0\uFF1A");
label.setIcon(new ImageIcon(AddCourseFrm.class.getResource("/images/\u8BFE\u7A0B.png")));
label.setFont(new Font("微软雅黑", Font.PLAIN, 14));
courseNameTextField = new JTextField();
courseNameTextField.setColumns(10);
JLabel label_1 = new JLabel("\u6388\u8BFE\u8001\u5E08\uFF1A");
label_1.setIcon(new ImageIcon(AddCourseFrm.class.getResource("/images/\u8001\u5E08.png")));
label_1.setFont(new Font("微软雅黑", Font.PLAIN, 14));
teacherListComboBox = new JComboBox();
JLabel label_2 = new JLabel("\u5B66\u751F\u4EBA\u6570\uFF1A");
label_2.setIcon(new ImageIcon(AddCourseFrm.class.getResource("/images/\u4EBA\u6570.png")));
label_2.setFont(new Font("微软雅黑", Font.PLAIN, 14));
studentNumTextField = new JTextField();
studentNumTextField.setColumns(10);
JLabel label_3 = new JLabel("\u8BFE\u7A0B\u4ECB\u7ECD\uFF1A");
label_3.setIcon(new ImageIcon(AddCourseFrm.class.getResource("/images/\u4ECB\u7ECD.png")));
label_3.setFont(new Font("微软雅黑", Font.PLAIN, 14));
courseInfoTextArea = new JTextArea();
JButton addCourseButton = new JButton("\u786E\u8BA4\u6DFB\u52A0");
addCourseButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
addCourseAct(ae);
}
});
addCourseButton.setIcon(new ImageIcon(AddCourseFrm.class.getResource("/images/\u786E\u8BA4.png")));
addCourseButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
JButton resetButton = new JButton("\u91CD\u7F6E\u4FE1\u606F");
resetButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
resetValue(ae);
}
});
resetButton.setIcon(new ImageIcon(AddCourseFrm.class.getResource("/images/\u91CD\u7F6E.png")));
resetButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
GroupLayout groupLayout = new GroupLayout(getContentPane());
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(Alignment.TRAILING, groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(88)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_2)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(studentNumTextField, GroupLayout.DEFAULT_SIZE, 149, Short.MAX_VALUE))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_1)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(teacherListComboBox, 0, 149, Short.MAX_VALUE))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(courseNameTextField, GroupLayout.DEFAULT_SIZE, 155, Short.MAX_VALUE))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_3)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(courseInfoTextArea, GroupLayout.DEFAULT_SIZE, 149, Short.MAX_VALUE))))
.addGroup(Alignment.TRAILING, groupLayout.createSequentialGroup()
.addGap(103)
.addComponent(addCourseButton)
.addGap(18)
.addComponent(resetButton)))
.addGap(117))
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(19)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label)
.addComponent(courseNameTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(35)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_1)
.addComponent(teacherListComboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(37)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_2)
.addComponent(studentNumTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(38)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_3)
.addComponent(courseInfoTextArea, GroupLayout.PREFERRED_SIZE, 120, GroupLayout.PREFERRED_SIZE))
.addPreferredGap(ComponentPlacement.RELATED, 46, Short.MAX_VALUE)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(addCourseButton)
.addComponent(resetButton))
.addGap(57))
);
getContentPane().setLayout(groupLayout);
setTeacherCombox();
}
protected void resetValue(ActionEvent ae) {
// TODO Auto-generated method stub
courseNameTextField.setText("");
courseInfoTextArea.setText("");
studentNumTextField.setText("");
teacherListComboBox.setSelectedIndex(0);
}
protected void addCourseAct(ActionEvent ae) {
// TODO Auto-generated method stub
String couserName = courseNameTextField.getText().toString();
String courseInfo = courseInfoTextArea.getText().toString();
Teacher selectedTeacher = (Teacher)teacherListComboBox.getSelectedItem();
int studentMaxNum = 0;
try {
studentMaxNum = Integer.parseInt(studentNumTextField.getText());
} catch (Exception e) {
// TODO: handle exception
JOptionPane.showMessageDialog(this, "学生人数只能输入数字!");
return;
}
if(StringUtil.isEmpty(couserName)){
JOptionPane.showMessageDialog(this, "请输入课程名称!");
return;
}
if(studentMaxNum <= 0){
JOptionPane.showMessageDialog(this, "学生人数只能输入大于0的数字!");
return;
}
Course course = new Course();
course.setName(couserName);
course.setMax_student_num(studentMaxNum);
course.setInfo(courseInfo);
course.setTeacher_id(selectedTeacher.getId());
CourseDao courseDao = new CourseDao();
if(courseDao.addCourse(course)){
JOptionPane.showMessageDialog(this, "添加成功!");
}else{
JOptionPane.showMessageDialog(this, "添加失败!");
}
courseDao.closeDao();
resetValue(ae);
}
private void setTeacherCombox(){
TeacherDao teacherDao = new TeacherDao();
List teacherList = teacherDao.getTeacherList(new Teacher());
teacherDao.closeDao();
for (Teacher teacher : teacherList) {
teacherListComboBox.addItem(teacher);
}
}
}
添加学生班级
package com.artisan.view;
import java.awt.EventQueue;
import javax.swing.JInternalFrame;
import javax.swing.GroupLayout;
import javax.swing.JOptionPane;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.JTextArea;
import javax.swing.JButton;
import com.artisan.dao.ClassDao;
import com.artisan.model.StudentClass;
import com.artisan.util.StringUtil;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class AddStudentClassFrm extends JInternalFrame {
private JTextField classNameTextField;
private JTextArea classInfotextArea;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
AddStudentClassFrm frame = new AddStudentClassFrm();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public AddStudentClassFrm() {
setClosable(true);
setIconifiable(true);
setTitle("\u6DFB\u52A0\u73ED\u7EA7\u4FE1\u606F");
setBounds(100, 100, 450, 300);
JLabel label = new JLabel("\u73ED\u7EA7\u540D\u79F0\uFF1A");
label.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u73ED\u7EA7\u540D\u79F0.png")));
label.setFont(new Font("微软雅黑", Font.PLAIN, 14));
classNameTextField = new JTextField();
classNameTextField.setColumns(10);
JLabel label_1 = new JLabel("\u73ED\u7EA7\u4FE1\u606F\uFF1A");
label_1.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u73ED\u7EA7\u4ECB\u7ECD.png")));
label_1.setFont(new Font("微软雅黑", Font.PLAIN, 14));
classInfotextArea = new JTextArea();
JButton submitButton = new JButton("\u63D0\u4EA4");
submitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
submitClass(ae);
}
});
submitButton.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u786E\u8BA4.png")));
submitButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
JButton restButton = new JButton("\u91CD\u7F6E");
restButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
resetValue(e);
}
});
restButton.setIcon(new ImageIcon(AddStudentClassFrm.class.getResource("/images/\u91CD\u7F6E.png")));
restButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
GroupLayout groupLayout = new GroupLayout(getContentPane());
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.TRAILING)
.addGroup(groupLayout.createSequentialGroup()
.addContainerGap()
.addComponent(submitButton)
.addGap(72)
.addComponent(restButton))
.addGroup(Alignment.LEADING, groupLayout.createSequentialGroup()
.addGap(73)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_1)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(classInfotextArea))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(classNameTextField, GroupLayout.PREFERRED_SIZE, 173, GroupLayout.PREFERRED_SIZE)))))
.addContainerGap(88, Short.MAX_VALUE))
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(32)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label)
.addComponent(classNameTextField, GroupLayout.PREFERRED_SIZE, 32, GroupLayout.PREFERRED_SIZE))
.addGap(39)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_1)
.addComponent(classInfotextArea, GroupLayout.PREFERRED_SIZE, 101, GroupLayout.PREFERRED_SIZE))
.addPreferredGap(ComponentPlacement.RELATED, 36, Short.MAX_VALUE)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(restButton)
.addComponent(submitButton))
.addGap(18))
);
getContentPane().setLayout(groupLayout);
}
protected void submitClass(ActionEvent ae) {
// TODO Auto-generated method stub
String className = classNameTextField.getText().toString();
String classInfo = classInfotextArea.getText().toString();
if(StringUtil.isEmpty(className)){
JOptionPane.showMessageDialog(this, "班级名称不能为空!");
return;
}
StudentClass scl = new StudentClass();
scl.setName(className);
scl.setInfo(classInfo);
ClassDao classDao = new ClassDao();
if(classDao.addClass(scl)){
JOptionPane.showMessageDialog(this, "班级添加成功!");
}else{
JOptionPane.showMessageDialog(this, "班级添加失败!");
}
classDao.closeDao();
resetValue(ae);
}
protected void resetValue(ActionEvent e) {
// TODO Auto-generated method stub
classNameTextField.setText("");
classInfotextArea.setText("");
}
}
添加学生信息
package com.artisan.view;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import javax.swing.ButtonGroup;
import javax.swing.DefaultComboBoxModel;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import com.artisan.dao.ClassDao;
import com.artisan.dao.StudentDao;
import com.artisan.model.Student;
import com.artisan.model.StudentClass;
import com.artisan.util.StringUtil;
public class AddStudentFrm extends JInternalFrame {
private JTextField studentNameTextField;
private JPasswordField studentPasswordField;
private JComboBox studentClassComboBox;
private ButtonGroup sexButtonGroup;
private JRadioButton studentSexManRadioButton;
private JRadioButton studentSexFemalRadioButton;
private JRadioButton studentSexUnkonwRadioButton;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
AddStudentFrm frame = new AddStudentFrm();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public AddStudentFrm() {
setClosable(true);
setIconifiable(true);
setTitle("\u6DFB\u52A0\u5B66\u751F");
setBounds(100, 100, 450, 300);
JLabel label = new JLabel("\u5B66\u751F\u59D3\u540D\uFF1A");
label.setIcon(new ImageIcon(AddStudentFrm.class.getResource("/images/\u5B66\u751F\u7BA1\u7406.png")));
label.setFont(new Font("微软雅黑", Font.PLAIN, 14));
studentNameTextField = new JTextField();
studentNameTextField.setColumns(10);
JLabel label_1 = new JLabel("\u6240\u5C5E\u73ED\u7EA7\uFF1A");
label_1.setIcon(new ImageIcon(AddStudentFrm.class.getResource("/images/\u73ED\u7EA7\u540D\u79F0.png")));
label_1.setFont(new Font("微软雅黑", Font.PLAIN, 14));
studentClassComboBox = new JComboBox();
studentClassComboBox.setModel(new DefaultComboBoxModel(new String[] {}));
JLabel label_2 = new JLabel("\u767B\u5F55\u5BC6\u7801\uFF1A");
label_2.setIcon(new ImageIcon(AddStudentFrm.class.getResource("/images/password.png")));
label_2.setFont(new Font("微软雅黑", Font.PLAIN, 14));
studentPasswordField = new JPasswordField();
JLabel label_3 = new JLabel("\u5B66\u751F\u6027\u522B\uFF1A");
label_3.setIcon(new ImageIcon(AddStudentFrm.class.getResource("/images/\u6027\u522B.png")));
label_3.setFont(new Font("微软雅黑", Font.PLAIN, 14));
studentSexManRadioButton = new JRadioButton("\u7537");
studentSexManRadioButton.setSelected(true);
studentSexFemalRadioButton = new JRadioButton("\u5973");
studentSexUnkonwRadioButton = new JRadioButton("\u4FDD\u5BC6");
sexButtonGroup = new ButtonGroup();
sexButtonGroup.add(studentSexManRadioButton);
sexButtonGroup.add(studentSexFemalRadioButton);
sexButtonGroup.add(studentSexUnkonwRadioButton);
JButton submitButton = new JButton("\u786E\u8BA4");
submitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
studentAddAct(ae);
}
});
submitButton.setIcon(new ImageIcon(AddStudentFrm.class.getResource("/images/\u786E\u8BA4.png")));
submitButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
JButton resetButton = new JButton("\u91CD\u7F6E");
resetButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
resetValue(ae);
}
});
resetButton.setIcon(new ImageIcon(AddStudentFrm.class.getResource("/images/\u91CD\u7F6E.png")));
resetButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
GroupLayout groupLayout = new GroupLayout(getContentPane());
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(91)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_2)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(studentPasswordField, GroupLayout.DEFAULT_SIZE, 151, Short.MAX_VALUE))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_1)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(studentClassComboBox, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(studentNameTextField, GroupLayout.PREFERRED_SIZE, 151, GroupLayout.PREFERRED_SIZE)))
.addGap(92))
.addGroup(groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.TRAILING)
.addComponent(resetButton)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_3)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(studentSexManRadioButton)
.addGap(10)
.addComponent(studentSexFemalRadioButton)
.addGap(10)
.addComponent(studentSexUnkonwRadioButton)))
.addContainerGap())))
.addGroup(groupLayout.createSequentialGroup()
.addGap(132)
.addComponent(submitButton)
.addContainerGap(221, Short.MAX_VALUE))
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(30)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label)
.addComponent(studentNameTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(26)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_1)
.addComponent(studentClassComboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(32)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_2)
.addComponent(studentPasswordField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(29)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_3)
.addComponent(studentSexManRadioButton)
.addComponent(studentSexUnkonwRadioButton)
.addComponent(studentSexFemalRadioButton))
.addPreferredGap(ComponentPlacement.RELATED, 30, Short.MAX_VALUE)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(submitButton)
.addComponent(resetButton))
.addContainerGap())
);
getContentPane().setLayout(groupLayout);
setStudentClassInfo();
}
protected void resetValue(ActionEvent ae) {
// TODO Auto-generated method stub
studentNameTextField.setText("");
studentPasswordField.setText("");
studentClassComboBox.setSelectedIndex(0);
sexButtonGroup.clearSelection();
studentSexManRadioButton.setSelected(true);
}
protected void studentAddAct(ActionEvent ae) {
// TODO Auto-generated method stub
String studentName = studentNameTextField.getText().toString();
String studentPassword = studentPasswordField.getText().toString();
if(StringUtil.isEmpty(studentName)){
JOptionPane.showMessageDialog(this, "请填写学生姓名!");
return;
}
if(StringUtil.isEmpty(studentPassword)){
JOptionPane.showMessageDialog(this, "请填写密码!");
return;
}
StudentClass sc = (StudentClass)studentClassComboBox.getSelectedItem();
String sex = studentSexManRadioButton.isSelected() ? studentSexManRadioButton.getText() : (studentSexFemalRadioButton.isSelected() ? studentSexFemalRadioButton.getText() : studentSexUnkonwRadioButton.getText());
Student student = new Student();
student.setName(studentName);
student.setClassId(sc.getId());
student.setPassword(studentPassword);
student.setSex(sex);
StudentDao studentDao = new StudentDao();
if(studentDao.addStudent(student)){
JOptionPane.showMessageDialog(this, "添加成功!");
}else{
JOptionPane.showMessageDialog(this, "添加失败!");
}
resetValue(ae);
}
private void setStudentClassInfo(){
ClassDao classDao = new ClassDao();
List classList = classDao.getClassList(new StudentClass());
for (StudentClass sc : classList) {
studentClassComboBox.addItem(sc);
}
classDao.closeDao();
}
}
添加老师信息
package com.artisan.view;
import java.awt.EventQueue;
import javax.swing.ButtonGroup;
import javax.swing.JInternalFrame;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JLabel;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import java.awt.Font;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.JRadioButton;
import javax.swing.JButton;
import com.artisan.dao.TeacherDao;
import com.artisan.model.Teacher;
import com.artisan.util.StringUtil;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JPasswordField;
public class AddTeacherFrm extends JInternalFrame {
private JTextField teacherNameTextField;
private JTextField teacherTitleTextField;
private JTextField teacherAgeTextField;
private JRadioButton teacherSexManRadioButton;
private JRadioButton teacherSexFemalRadioButton;
private JPasswordField teacherPasswordField;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
AddTeacherFrm frame = new AddTeacherFrm();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public AddTeacherFrm() {
setClosable(true);
setIconifiable(true);
setTitle("\u6DFB\u52A0\u6559\u5E08");
setBounds(100, 100, 450, 371);
JLabel label = new JLabel("\u6559\u5E08\u59D3\u540D\uFF1A");
label.setFont(new Font("微软雅黑", Font.PLAIN, 14));
label.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u8001\u5E08.png")));
teacherNameTextField = new JTextField();
teacherNameTextField.setColumns(10);
JLabel label_1 = new JLabel("\u6559\u5E08\u6027\u522B\uFF1A");
label_1.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u6027\u522B.png")));
label_1.setFont(new Font("微软雅黑", Font.PLAIN, 14));
ButtonGroup buttonGroup = new ButtonGroup();
teacherSexManRadioButton = new JRadioButton("\u7537");
teacherSexManRadioButton.setSelected(true);
teacherSexManRadioButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
teacherSexFemalRadioButton = new JRadioButton("\u5973");
teacherSexFemalRadioButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
buttonGroup.add(teacherSexManRadioButton);
buttonGroup.add(teacherSexFemalRadioButton);
JLabel label_2 = new JLabel("\u6559\u5E08\u804C\u79F0\uFF1A");
label_2.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u804C\u79F0\u8BC4\u5B9A.png")));
label_2.setFont(new Font("微软雅黑", Font.PLAIN, 14));
teacherTitleTextField = new JTextField();
teacherTitleTextField.setColumns(10);
JLabel label_3 = new JLabel("\u6559\u5E08\u5E74\u9F84\uFF1A");
label_3.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u5E74\u9F84.png")));
label_3.setFont(new Font("微软雅黑", Font.PLAIN, 14));
teacherAgeTextField = new JTextField();
teacherAgeTextField.setColumns(10);
JButton submitButton = new JButton("\u786E\u8BA4\u6DFB\u52A0");
submitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
addTeacherAct(ae);
}
});
submitButton.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u786E\u8BA4.png")));
submitButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
JButton resetButton = new JButton("\u91CD\u7F6E\u8868\u5355");
resetButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
resetValue(ae);
}
});
resetButton.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u91CD\u7F6E.png")));
resetButton.setFont(new Font("微软雅黑", Font.PLAIN, 14));
JLabel label_4 = new JLabel("\u767B\u5F55\u5BC6\u7801\uFF1A");
label_4.setIcon(new ImageIcon(AddTeacherFrm.class.getResource("/images/\u5BC6\u7801.png")));
label_4.setFont(new Font("微软雅黑", Font.PLAIN, 14));
teacherPasswordField = new JPasswordField();
GroupLayout groupLayout = new GroupLayout(getContentPane());
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(104)
.addComponent(submitButton)
.addGap(40)
.addComponent(resetButton)
.addContainerGap(68, Short.MAX_VALUE))
.addGroup(groupLayout.createSequentialGroup()
.addGap(87)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label_1)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(teacherSexManRadioButton)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(teacherSexFemalRadioButton))
.addGroup(groupLayout.createSequentialGroup()
.addComponent(label)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(teacherNameTextField, GroupLayout.PREFERRED_SIZE, 152, GroupLayout.PREFERRED_SIZE))
.addGroup(groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addComponent(label_2)
.addComponent(label_3)
.addComponent(label_4))
.addPreferredGap(ComponentPlacement.UNRELATED)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addComponent(teacherPasswordField, GroupLayout.DEFAULT_SIZE, 152, Short.MAX_VALUE)
.addComponent(teacherAgeTextField, GroupLayout.DEFAULT_SIZE, 152, Short.MAX_VALUE)
.addComponent(teacherTitleTextField, 152, 152, Short.MAX_VALUE))))
.addGap(95))
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(26)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label)
.addComponent(teacherNameTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(18)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_1)
.addComponent(teacherSexManRadioButton)
.addComponent(teacherSexFemalRadioButton))
.addGap(18)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_2)
.addComponent(teacherTitleTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(27)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_3)
.addComponent(teacherAgeTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(30)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(label_4)
.addComponent(teacherPasswordField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addPreferredGap(ComponentPlacement.RELATED, 52, Short.MAX_VALUE)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(submitButton)
.addComponent(resetButton))
.addGap(32))
);
getContentPane().setLayout(groupLayout);
}
protected void resetValue(ActionEvent ae) {
// TODO Auto-generated method stub
teacherNameTextField.setText("");
teacherTitleTextField.setText("");
teacherAgeTextField.setText("");
teacherSexManRadioButton.setSelected(true);
teacherPasswordField.setText("");
}
protected void addTeacherAct(ActionEvent ae) {
// TODO Auto-generated method stub
String teacherName = teacherNameTextField.getText().toString();
String teacherSex = teacherSexManRadioButton.isSelected() ? teacherSexManRadioButton.getText().toString() : teacherSexFemalRadioButton.getText().toString();
String teacherTitle = teacherTitleTextField.getText().toString();
String teacherPassword = teacherPasswordField.getText().toString();
int teacherAge = 0;
try {
teacherAge = Integer.parseInt(teacherAgeTextField.getText().toString());
} catch (Exception e) {
// TODO: handle exception
JOptionPane.showMessageDialog(this, "年龄只允许输入数字!");
return;
}
if(StringUtil.isEmpty(teacherName)){
JOptionPane.showMessageDialog(this, "教师姓名必须填写!");
return;
}
if(StringUtil.isEmpty(teacherTitle)){
JOptionPane.showMessageDialog(this, "教师职称必须填写!");
return;
}
if(teacherAge == 0 || teacherAge < 0){
JOptionPane.showMessageDialog(this, "教师年龄必须大于0!");
return;
}
if(StringUtil.isEmpty(teacherPassword)){
JOptionPane.showMessageDialog(this, "教师登录密码必须填写!");
return;
}
Teacher teacher = new Teacher();
teacher.setName(teacherName);
teacher.setSex(teacherSex);
teacher.setTitle(teacherTitle);
teacher.setAge(teacherAge);
teacher.setPassword(teacherPassword);
TeacherDao teacherDao = new TeacherDao();
if(teacherDao.addTeacher(teacher)){
JOptionPane.showMessageDialog(this, "教师添加成功!");
}else{
JOptionPane.showMessageDialog(this, "教师添加失败!");
}
resetValue(ae);
}
}
写不下啦,见下一篇哦~~