今天终于做完了JSP期末项目------学生宿舍管理系统,本项目是自己纯手工敲制的...别人看来自己手工敲制可能会很2B但个人觉得初学JSP还是自己敲,自己体会做整个项目的经历,才能更好的总结自己的不足。本项目不是做的很完美,但基本实现了增删改查~系统的扩展也是比较容易实现的......不多说了,还是展示一下下..哈哈~
登陆界面:
系统内部界面就不先上传了,贴一点控制系统的java文件好了~
Dbdao.java
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class Dbdao {
private static final String DRIVER_CLASS = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static final String DATABASE_URL = "jdbc:sqlserver://localhost:1433;DatabaseName=manageSystem";
private static final String DATABASE_USER = "sa1";
private static final String DATABASE_PASSWORD = "123";
//获取数据库链接
public static Connection getConnection(){
Connection conn = null;
try {
Class.forName(DRIVER_CLASS);
conn = DriverManager.getConnection(DATABASE_URL,DATABASE_USER,DATABASE_PASSWORD);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return conn;
}
//关闭链接1
public static void closeAll(ResultSet rs,Statement stm,Connection conn){
try {
if(rs!=null){
rs.close();
}
if(stm!=null){
stm.close();
}
if(conn!=null){
conn.close();
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
//关闭链接2
public static void closeAll(ResultSet rs,PreparedStatement pstm,Connection conn){
try {
if(rs!=null){
rs.close();
}
if(pstm!=null){
pstm.close();
}
if(conn!=null){
conn.close();
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
Delete.java
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import entity.Cx_Select;
import entity.Student;
public class Delete {
public List delete(Student Gxstudent){
Connection conn = null;
PreparedStatement pstm = null;
ResultSet rs = null;
Select sc = new Select();
Cx_Select cx_select = new Cx_Select();
List list = new ArrayList();
try {//删除 操作
conn = Dbdao.getConnection();
String sql = "delete from student where id =? ";
pstm = conn.prepareStatement(sql);
pstm.setInt(1,Gxstudent.getId());
pstm.executeUpdate();
cx_select.setBj(Gxstudent.getClassname());
cx_select.setGy(Gxstudent.getDormitory());
cx_select.setSs(Gxstudent.getRoom());
list = sc.chaxu(cx_select);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
Dbdao.closeAll(rs, pstm, conn);
}
return list;
}
}
Insert.java
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import entity.sg_register;
import entity.Student;
public class Insert {
//插入操作 ------学生信息录入
public boolean insert(Student std){
boolean flag = false;//判断是否插入,初始值尾false,成功插入false=ture
int line = 0;//此函数执行影响的行数
Connection conn = null;
PreparedStatement pstm =null;
try {
conn = Dbdao.getConnection();
String sql= "insert into student (dormitory,room,classname,name,job,lphone,sphone,other) values (?,?,?,?,?,?,?,?)";//操作语句
pstm = conn.prepareStatement(sql);
pstm.setInt(1, std.getDormitory());
pstm.setInt(2, std.getRoom());
pstm.setString(3, std.getClassname());
pstm.setString(4, std.getName());
pstm.setString(5, std.getJob());
pstm.setString(6, std.getLphone());
pstm.setString(7, std.getSphone());
pstm.setString(8, std.getOther());
//执行操作
line=pstm.executeUpdate();//接受被影响的行数
if(line>0)flag=true;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
Dbdao.closeAll(null, pstm, conn);
}
return flag;
}
//插入操作 ------宿管注册
//插入操作 ------宿管注册
public boolean logininsert(sg_register sg){
boolean flag = false;//判断是否插入,初始值尾false,成功插入false=true
int line = 0;//此函数执行影响的行数
Connection conn=null;
PreparedStatement pstm=null;
try{
conn=Dbdao.getConnection();
String sql="insert into sg_register(sg_name,sg_sex,sg_log_name,sg_log_passwd,sg_log_rpasswd,sg_tel,sg_email,sg_id,sg_proving) values(?,?,?,?,?,?,?,?,?) ";
pstm = conn.prepareStatement(sql);
pstm.setString(1,sg.getSg_name());
pstm.setString(2,sg.getSg_sex());
pstm.setString(3,sg.getSg_log_name());
pstm.setString(4,sg.getSg_log_passwd());
pstm.setString(5,sg.getSg_log_rpasswd());
pstm.setString(6,sg.getSg_tel());
pstm.setString(7,sg.getSg_email());
pstm.setString(8,sg.getSg_id());
pstm.setString(9,sg.getSg_proving());
line=pstm.executeUpdate();//接受被影响的行数
if(line>0)
flag=true;
}catch(Exception e){
e.printStackTrace();
}finally{
Dbdao.closeAll(null,pstm,conn);
}
return flag;
}
}
Select.java
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import entity.Cx_Select;
import entity.Student;
public class Select {
public List chaxu(Cx_Select cx){
Connection conn = null;
PreparedStatement pstm = null;
ResultSet rs = null;
List list = new ArrayList();
try {
conn = Dbdao.getConnection();
String sql = "select * from student where dormitory=? and room=? and classname=?";
pstm = conn.prepareStatement(sql);
//System.out.println(cx.getBj());
//System.out.println(cx.getGy());
//System.out.println(cx.getSs());
pstm.setInt(1,cx.getGy());
pstm.setInt(2,cx.getSs());
pstm.setString(3,cx.getBj().trim());
rs = pstm.executeQuery();
//rs.next();
//System.out.println(rs.next());
//System.out.print(rs.getString("name"));
while(rs.next()){
Student student = new Student();//必须在这里(循环)实例化对象,保证每次add进去的都是新元素
student.setDormitory(Integer.parseInt(rs.getString("dormitory")));
student.setRoom(Integer.parseInt(rs.getString("room")));
student.setClassname(rs.getString("classname"));
student.setName(rs.getString("name"));
student.setJob(rs.getString("job"));
student.setLphone(rs.getString("lphone"));
student.setSphone(rs.getString("sphone"));
student.setOther(rs.getString("other"));
student.setId(rs.getInt("id"));
//System.out.println(student);
list.add(student);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
//System.out.print("11");
Dbdao.closeAll(rs, pstm, conn);
}
return list;
}
}
Update.java
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import entity.Student;
public class Update {
public List update(Student Gxstudent){
Connection conn = null;
PreparedStatement pstm = null;
ResultSet rs = null;
List list = new ArrayList();
try {//更新~
conn = Dbdao.getConnection();
String sql = "update student set dormitory =?,room=?,classname=?,name=?,job=?,lphone=?,sphone=?,other=? WHERE id = ? ";
pstm = conn.prepareStatement(sql);
pstm.setInt(1,Gxstudent.getDormitory());
pstm.setInt(2, Gxstudent.getRoom());
pstm.setString(3,Gxstudent.getClassname());
pstm.setString(4,Gxstudent.getName());
pstm.setString(5,Gxstudent.getJob());
pstm.setString(6,Gxstudent.getLphone());
pstm.setString(7,Gxstudent.getSphone());
pstm.setString(8,Gxstudent.getOther());
pstm.setInt(9,Gxstudent.getId());
pstm.executeUpdate();
String sql_1 = "select * from student where id=? ";
pstm = conn.prepareStatement(sql_1);
pstm.setInt(1,Gxstudent.getId());
rs = pstm.executeQuery();
while(rs.next()){
Student student = new Student();//必须在这里(循环)实例化对象,保证每次add进去的都是新元素
student.setDormitory(Integer.parseInt(rs.getString("dormitory")));
student.setRoom(Integer.parseInt(rs.getString("room")));
student.setClassname(rs.getString("classname"));
student.setName(rs.getString("name"));
student.setJob(rs.getString("job"));
student.setLphone(rs.getString("lphone"));
student.setSphone(rs.getString("sphone"));
student.setOther(rs.getString("other"));
student.setId(rs.getInt("id"));
//System.out.println(student);
list.add(student);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
Dbdao.closeAll(rs, pstm, conn);
}
return list;
}
}
实体类:
package entity;
public class Student {
private int dormitory;
private int room;
private String classname;
private String name;
private String job;
private String lphone;
private String sphone;
private String other;
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getDormitory() {
return dormitory;
}
public void setDormitory(int string) {
this.dormitory = string;
}
public int getRoom() {
return room;
}
public void setRoom(int room) {
this.room = room;
}
public String getClassname() {
return classname;
}
public void setClassname(String classname) {
this.classname = classname;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
public String getLphone() {
return lphone;
}
public void setLphone(String lphone) {
this.lphone = lphone;
}
public String getSphone() {
return sphone;
}
public void setSphone(String sphone) {
this.sphone = sphone;
}
public String getOther() {
return other;
}
public void setOther(String other) {
this.other = other;
}
}
package entity;
public class sg_register {
private String sg_name;
private String sg_sex;
private String sg_log_name;
private String sg_log_passwd;
private String sg_log_rpasswd;
private String sg_tel;
private String sg_email;
private String sg_id;
private String sg_proving;
public String getSg_name() {
return sg_name;
}
public void setSg_name(String sgName) {
sg_name = sgName;
}
public String getSg_sex() {
return sg_sex;
}
public void setSg_sex(String sgSex) {
sg_sex = sgSex;
}
public String getSg_log_name() {
return sg_log_name;
}
public void setSg_log_name(String sgLogName) {
sg_log_name = sgLogName;
}
public String getSg_log_passwd() {
return sg_log_passwd;
}
public void setSg_log_passwd(String sgLogPasswd) {
sg_log_passwd = sgLogPasswd;
}
public String getSg_log_rpasswd() {
return sg_log_rpasswd;
}
public void setSg_log_rpasswd(String sgLogRpasswd) {
sg_log_rpasswd = sgLogRpasswd;
}
public String getSg_tel() {
return sg_tel;
}
public void setSg_tel(String sgTel) {
sg_tel = sgTel;
}
public String getSg_email() {
return sg_email;
}
public void setSg_email(String sgEmail) {
sg_email = sgEmail;
}
public String getSg_id() {
return sg_id;
}
public void setSg_id(String sgId) {
sg_id = sgId;
}
public String getSg_proving() {
return sg_proving;
}
public void setSg_proving(String sgProving) {
sg_proving = sgProving;
}
}
package entity;
public class Cx_Select {
private int gy;//公寓
private int ss;//宿舍
private String bj;//班级
public int getGy() {
return gy;
}
public void setGy(int gy) {
this.gy = gy;
}
public int getSs() {
return ss;
}
public void setSs(int ss) {
this.ss = ss;
}
public String getBj() {
return bj;
}
public void setBj(String bj) {
this.bj = bj;
}
}
java文件就这么几个,其他的都是JSP ,css,js,数据库和图片文件了...下次上传,请指教~
附上下载地址: http://download.csdn.net/download/longfu2012/5799579