目录
第一章 绪论
1.1项目研究的背景
学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改功能,能够快速的查询学校所需的住宿信息。学生宿舍,是大学生在高校校园里一个重要的学习、生活、交往的空间环境,大学生,大约有2/3的时间是在宿舍环境里度过的。随着高校规模的扩大,在校学生的学历层次、思想状态、文化水平呈多样化、复杂化趋势,这在很大程度上给学生管理工作带来许多新的问题。随着学生人数的增多,高校学生宿舍管理的信息量日益庞大,而目前我校学生宿舍管理仍采用传统的工作方式——账本化的工作模式,这种模式获取信息慢,查阅困难,准确性差,很难适应高水平宿舍管理的需要,同时带来了大量的人力的浪费,对于宿管的工作带来很多不便。基于此,我们想到需要开发一个“学生宿舍管理系统”来提高宿舍的管理效率,改善管理方式,使其与现代信息化的趋势接轨。由于数据库的存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。
1.2项目选择与目的意义
选择学生宿舍管理系统作为题目使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改功能,能够快速的查询学校所需的住宿信息,方便高校对学生宿舍的管理。
1.3项目研究的目标与要求
总体目标:成功的研发出学生宿舍管理系统。实现可以查询、添加、删除学生宿舍的信息等功能,便于管理,节省人力。
任务与要求:能运行宿舍管理系统,达到管理的目的。要求:界面美观,添加、删除、查询等功能齐全。
第二章 可行性分析与需求分析
2.1可行性分析
2.1.1操作可行性
本系统使用的操作系统是windows10,对于当今进入互联网时代的人们来说是比较简单操作的,在操作方面是可行的。
2.1.2技术可行性
本系统是由spring + springmvc 等技术结合开发而成的,技术方面是可行的。对于界面的开发使用的是当前流行的框架Bootstrap,在交互方面非常友好,并且易于操作和开发。在数据库方面采用的是mysql,在安全性上有保障,而且mysql的可移植性更强。
2.1.3设计可行性
本系统在设计方面采用的是MVC模式,能够将页面展示,业务逻辑处理,数据访问很好的划分出来,各个层次间的耦合性较低,大大的提高了项目的灵活性,系统的总体划分是比较清晰的,所以在设计方面也是可行的。
2.2需求分析
学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。
2.2.1处理对象分析
系统要处理的对象包括学生基本信息、宿舍基本信息、宿舍楼基本信息、楼栋管理员基本信息、来访人员出入基本信息等四个方面,各个对象包括信息如下所示:
1.学生基本信息(Student):包括学生学号、学生姓名、学生性别、学生入住与迁出、学生年龄和学生电话等方面的信息,可以方便学生信息的查询和更新;
2.宿舍学生基本信息(Dormitory):包括学生学号、学生姓名、楼栋号、宿舍房间、宿舍联系电话;
3.宿舍基本信息(Building):包括宿舍楼编号、宿舍楼性别分类信息、管理员姓名等方面,这样可以方便管理者对宿舍楼的管理,提高查询效率;
4.楼栋管理员基本信息(Teacher):包括工作人员编号、工作人员姓名、性别、工作宿舍、电话可以方便管理人员对宿舍管理人员的任用、信息查询及更改;
2.2.2功能需求分析
系统主要完成以下几个功能:
1.宿舍楼基本信息查询与修改;
2.学生基本信息查询与更新以及插入;
3.每一幢宿舍楼 中宿舍信息的查询与信息更新;
(1)宿舍信息管理系统实现对学生,管理员信息的全部读取;实现对某个学生或管理员特定信息的读取;
(2)实现对某个人员信息的删除;
4.宿舍楼入住人员的入住与迁出记录;
2.2.3安全性与完整性分析
安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过用户授权机制,欲用户登陆来识别用户级别,根据这个级别来分配用户权限,达到数据更高层次的安全保密功能。
完整性要求用于描述宿舍楼基本信息、学生基本信息、宿舍基本信息、楼栋管理员基本信息,以及一些用户自定义完整性(符合实际要求)
第三章 系统设计
3.1系统架构图
3.2 E-R图
E-R转化为关系模型
楼栋管理员:dormmanager(uresname,password,stuName,sex)
宿管:dorm(dormName,dormType,dormNumber,dormTel)
学生:student(stuName,stuNum,dormBuild,dormName,sex)
3.3 数据结构
3.3.1 用户信息结构
3.3.2 学生信息结构
3.3.3 宿舍信息结构
3.3.4 缺勤信息结构
3.4 数据字典
3.4.1住宿学生数据字典(表名:student)
属性名
字段名
类型
长度
约束
学生编号
stuNum
Varchar
20
主键
密码
password
Varchar
20
Not Null
姓名
name
Varchar
20
Not Null
性别
sex
Varchar
4
Not Null
宿舍楼号
dormBuildId
Int
6
Not Null
入住编号
stuNum
Varchar
20
Not Null
宿舍号
dormName
Varchar
20
Not Null
联系方式
tel
Varchar
20
Not Null
3.4.2 宿舍数据字典(表名:drom)
属性名
字段名
类型
长度
约束
宿舍号
Dno
Varchar2
6
主键
宿舍楼
Dbuild
Varchar2
10
Not Null
3.4.3 宿舍管理员数据字典(表名:dormmanager)
属性名
字段名
类型
长度
约束
宿管用户名
userName
Varchar
20
主键
登陆密码
password
Varchar
20
Not Null
宿管栋号
dormBuildId
int
4
Not Null
学生姓名
name
Varchar
6
Not Null
性别
sex
Varchar
20
Not Null
联系方式
tel
Varchar
20
Not Null
3.4.4 用户数据字典(表名:record)
属性名
字段名
类型
长度
约束
缺勤学生编号
studentNumber
Varchar
20
主键
缺勤学生姓名
studentName
Varchar
30
Not Null
宿舍楼号
dormBuildId
Int
4
Not Null
宿舍号
dormName
Varchar
6
Not Null
日期
date
Dat
20
Not Null
缺勤情况
detail
Varchar
20
Not Null
3.5 数据库的设计
(1)系统管理员表
(2)宿舍管理表
(3)宿舍管理表
(4)学生管理表
(5)宿舍管理员表
(6)缺勤记录表
第四章 系统实现与设计内容
4.1系统逻辑设计与实现
4.2连接数据库功能
public class JDBCUtil {
//获取数据库连接的方法
public Connection getConn(){
Connection conn=null;
try {
Class.forName(PropertiesUtil.getValue("jdbcName"));
conn= DriverManager.getConnection(PropertiesUtil.getValue("dbUrl"), PropertiesUtil.getValue("dbUserName"), PropertiesUtil.getValue("dbPassword"));
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
//关闭数据库连接、关闭执行对象、关闭结果集对象(关闭资源)
public void closeAll(ResultSet rs, Statement st,Connection conn){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(st!=null){
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
4.3 功能模块
登陆方式:系统管理员,宿舍管理员,学生
<1> 系统管理员
(1)后台首页显示
(2)宿舍管理员管理:可查询,添加和删除宿舍管理员,宿舍管理员的信息进行修改
(3)学生管理:可对学生进行入住登记,迁出,对学生信息进行查询,修改和删除
(4)宿舍楼管理:可添加宿舍,为宿舍分配宿舍管理员,对分配的宿舍管理员进行修改
(5)学生缺寝记录:记录学生的缺寝情况
(6)修改密码
(7)退出系统
<2> 宿舍管理员
(1)后台首页显示
(2)学生查看
(3)学生缺寝记录:由宿舍管理员登记学生缺寝情况
(4)修改密码
(5)退出系统
<3> 学生
(1)后台首页显示
(2)我的缺勤记录:查看缺寝情况
(3)修改密码
(4)退出系统
第五章 系统实现
5.1页面显示效果
5.1.1登录界面
有三种登录可选择: 1.系统管理员 2.宿舍管理员 3.学生。
(1) 主页面
第六章 测试与部署
6.1 运行环境
Jdk15 IDEA tomcat8.5 mysql Navicat Premium
6.2 系统测试
登录功能测试
系统管理员界面功能测试
(1)宿舍楼管理(首页+添加宿舍楼+添加成功显示页面)
(3)宿舍楼层管理(宿舍楼管理主界面+添加宿舍楼界面+添加成功显示界面)
附录核心代码实现
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="com.lero.model.Admin" %>
<%@ page import="com.lero.model.DormManager" %>
<%@ page import="com.lero.model.Student" %>
<%
if(request.getAttribute("user")==null){
String userName=null;
String password=null;
String userType=null;
String remember=null;
Cookie[] cookies=request.getCookies();
for(int i=0;cookies!=null && i<cookies.length;i++){
if(cookies[i].getName().equals("dormuser")){
userName=cookies[i].getValue().split("-")[0];
password=cookies[i].getValue().split("-")[1];
userType=cookies[i].getValue().split("-")[2];
remember=cookies[i].getValue().split("-")[3];
}
}
if(userName==null){
userName="";
}
if(password==null){
password="";
}
if(userType==null){
userType="";
} else if("admin".equals(userType)){
pageContext.setAttribute("user", new Admin(userName,password));
pageContext.setAttribute("userType", 1);
} else if("dormManager".equals(userType)) {
pageContext.setAttribute("user", new DormManager(userName,password));
pageContext.setAttribute("userType", 2);
} else if("student".equals(userType)) {
pageContext.setAttribute("user", new Student(userName,password));
pageContext.setAttribute("userType", 3);
}
if("yes".equals(remember)) {
pageContext.setAttribute("remember", 1);
}
}
%>
<html lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>宿舍管理系统登录</title>
<link href="${pageContext.request.contextPath}/bootstrap/css/bootstrap.css" rel="stylesheet">
<link href="${pageContext.request.contextPath}/bootstrap/css/bootstrap-responsive.css" rel="stylesheet">
<script src="${pageContext.request.contextPath}/bootstrap/js/jQuery.js"></script>
<script src="${pageContext.request.contextPath}/bootstrap/js/bootstrap.js"></script>
<script type="text/javascript">
function checkForm() {
var userName = document.getElementById("userName").value;
var password = document.getElementById("password").value;
var userTypes = document.getElementsByName("userType");
var userType = null;
for(var i=0;i<userTypes.length;i++) {
if(userTypes[i].checked) {
userType=userTypes[i].value;
break;
}
}
if (userName == null || userName == "") {
document.getElementById("error").innerHTML = "用户名不能为空";
return false;
}
if (password == null || password == "") {
document.getElementById("error").innerHTML = "密码不能为空";
return false;
}
if (userType == null || userType == "") {
document.getElementById("error").innerHTML = "请选择用户类型";
return false;
}
return true;
}
</script>
<style type="text/css">
body {
padding-top: 200px;
padding-bottom: 40px;
background-image: url('images/单车男孩背影是骑士2.jpg');
background-position: center;
background-attachment: fixed;
}
.radio {
padding-top: 10px;
padding-bottom:10px;
}
.form-signin-heading{
text-align: center;
}
.form-signin {
max-width: 300px;
padding: 19px 29px 0px;
margin: 0 auto 20px;
background-color: #fff;
border: 1px solid #e5e5e5;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.05);
-moz-box-shadow: 0 1px 2px rgba(0,0,0,.05);
box-shadow: 0 1px 2px rgba(0,0,0,.05);
}
.form-signin .form-signin-heading,
.form-signin .checkbox {
margin-bottom: 10px;
}
.form-signin input[type="text"],
.form-signin input[type="password"] {
font-size: 16px;
height: auto;
margin-bottom: 15px;
padding: 7px 9px;
}
</style>
</head>
<body>
<div class="container">
<form name="myForm" class="form-signin" action="login" method="post" onsubmit="return checkForm()">
<h2 class="form-signin-heading"><font color="gray">宿舍管理系统</font></h2>
<input id="userName" name="userName" value="${user.userName }" type="text" class="input-block-level" placeholder="用户名...">
<input id="password" name="password" value="${user.password }" type="password" class="input-block-level" placeholder="密码..." >
<label class="radio inline">
<input id="admin" type="radio" name="userType" value="admin" checked/> 系统管理员
</label>
<label class="radio inline">
<input id="dormManager" type="radio" name="userType" value="dormManager" ${userType==2?'checked':''} /> 宿舍管理员
</label>
<label class="radio inline">
<input id="student" type="radio" name="userType" value="student" ${userType==3?'checked':''}/> 学生
</label>
<label class="checkbox">
<input id="remember" name="remember" type="checkbox" value="remember-me" ${remember==1?'checked':''}>记住我 <font id="error" color="red">${error }</font>
</label>
<button class="btn btn-large btn-primary" type="submit">登录</button>
<button class="btn btn-large btn-primary" type="button" >重置</button>
</form>
</div>
</body>
</html>
package com.lero.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import com.lero.model.DormBuild;
import com.lero.model.Student;
import com.lero.util.StringTool;
public class StudentDao {
// public List<Student> studentList(Connection con, PageBean pageBean, Student s_student)throws Exception {
// List<Student> studentList = new ArrayList<Student>();
// StringBuffer sb = new StringBuffer("select * from t_student t1");
// if(StringUtil.isNotEmpty(s_student.getName())) {
// sb.append(" and t1.name like '%"+s_student.getName()+"%'");
// } else if(StringUtil.isNotEmpty(s_student.getStuNumber())) {
// sb.append(" and t1.stuNum like '%"+s_student.getStuNumber()+"%'");
// } else if(StringUtil.isNotEmpty(s_student.getDormName())) {
// sb.append(" and t1.dormName like '%"+s_student.getDormName()+"%'");
// }
// if(s_student.getDormBuildId()!=0) {
// sb.append(" and t1.dormBuildId="+s_student.getDormBuildId());
// }
// if(pageBean != null) {
// sb.append(" limit "+pageBean.getStart()+","+pageBean.getPageSize());
// }
// PreparedStatement pstmt = con.prepareStatement(sb.toString().replaceFirst("and", "where"));
// ResultSet rs = pstmt.executeQuery();
// while(rs.next()) {
// Student student=new Student();
// student.setStudentId(rs.getInt("studentId"));
// int dormBuildId = rs.getInt("dormBuildId");
// student.setDormBuildId(dormBuildId);
// student.setDormBuildName(DormBuildDao.dormBuildName(con, dormBuildId));
// student.setDormName(rs.getString("dormName"));
// student.setName(rs.getString("name"));
// student.setSex(rs.getString("sex"));
// student.setStuNumber(rs.getString("stuNum"));
// student.setTel(rs.getString("tel"));
// student.setPassword(rs.getString("password"));
// studentList.add(student);
// }
// return studentList;
// }
public List<Student> studentList(Connection con, Student s_student)throws Exception {
List<Student> studentList = new ArrayList<Student>();
StringBuffer sb = new StringBuffer("select * from t_student t1");
if(StringTool.isNotEmpty(s_student.getName())) {
sb.append(" and t1.name like '%"+s_student.getName()+"%'");
} else if(StringTool.isNotEmpty(s_student.getStuNumber())) {
sb.append(" and t1.stuNum like '%"+s_student.getStuNumber()+"%'");
} else if(StringTool.isNotEmpty(s_student.getDormName())) {
sb.append(" and t1.dormName like '%"+s_student.getDormName()+"%'");
}
if(s_student.getDormBuildId()!=0) {
sb.append(" and t1.dormBuildId="+s_student.getDormBuildId());
}
PreparedStatement pstmt = con.prepareStatement(sb.toString().replaceFirst("and", "where"));
ResultSet rs = pstmt.executeQuery();
while(rs.next()) {
Student student=new Student();
student.setStudentId(rs.getInt("studentId"));
int dormBuildId = rs.getInt("dormBuildId");
student.setDormBuildId(dormBuildId);
student.setDormBuildName(DormBuildDao.dormBuildName(con, dormBuildId));
student.setDormName(rs.getString("dormName"));
student.setName(rs.getString("name"));
student.setSex(rs.getString("sex"));
student.setStuNumber(rs.getString("stuNum"));
student.setTel(rs.getString("tel"));
student.setPassword(rs.getString("password"));
studentList.add(student);
}
return studentList;
}
public static Student getNameById(Connection con, String studentNumber, int dormBuildId)throws Exception {
String sql = "select * from t_student t1 where t1.stuNum=? and t1.dormBuildId=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, studentNumber);
pstmt.setInt(2, dormBuildId);
ResultSet rs=pstmt.executeQuery();
Student student = new Student();
if(rs.next()) {
student.setName(rs.getString("name"));
student.setDormBuildId(rs.getInt("dormBuildId"));
student.setDormName(rs.getString("dormName"));
}
return student;
}
public boolean haveNameByNumber(Connection con, String studentNumber)throws Exception {
String sql = "select * from t_student t1 where t1.stuNum=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, studentNumber);
ResultSet rs=pstmt.executeQuery();
Student student = new Student();
if(rs.next()) {
student.setName(rs.getString("name"));
student.setDormBuildId(rs.getInt("dormBuildId"));
student.setDormName(rs.getString("dormName"));
return true;
}
return false;
}
public List<Student> studentListWithBuild(Connection con, Student s_student, int buildId)throws Exception {
List<Student> studentList = new ArrayList<Student>();
StringBuffer sb = new StringBuffer("select * from t_student t1");
if(StringTool.isNotEmpty(s_student.getName())) {
sb.append(" and t1.name like '%"+s_student.getName()+"%'");
} else if(StringTool.isNotEmpty(s_student.getStuNumber())) {
sb.append(" and t1.stuNum like '%"+s_student.getStuNumber()+"%'");
} else if(StringTool.isNotEmpty(s_student.getDormName())) {
sb.append(" and t1.dormName like '%"+s_student.getDormName()+"%'");
}
sb.append(" and t1.dormBuildId="+buildId);
PreparedStatement pstmt = con.prepareStatement(sb.toString().replaceFirst("and", "where"));
ResultSet rs = pstmt.executeQuery();
while(rs.next()) {
Student student=new Student();
student.setStudentId(rs.getInt("studentId"));
int dormBuildId = rs.getInt("dormBuildId");
student.setDormBuildId(dormBuildId);
student.setDormBuildName(DormBuildDao.dormBuildName(con, dormBuildId));
student.setDormName(rs.getString("dormName"));
student.setName(rs.getString("name"));
student.setSex(rs.getString("sex"));
student.setStuNumber(rs.getString("stuNum"));
student.setTel(rs.getString("tel"));
student.setPassword(rs.getString("password"));
studentList.add(student);
}
return studentList;
}
public List<DormBuild> dormBuildList(Connection con)throws Exception {
List<DormBuild> dormBuildList = new ArrayList<DormBuild>();
String sql = "select * from t_dormBuild";
PreparedStatement pstmt = con.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
while(rs.next()) {
DormBuild dormBuild=new DormBuild();
dormBuild.setDormBuildId(rs.getInt("dormBuildId"));
dormBuild.setDormBuildName(rs.getString("dormBuildName"));
dormBuild.setDetail(rs.getString("dormBuildDetail"));
dormBuildList.add(dormBuild);
}
return dormBuildList;
}
public int studentCount(Connection con, Student s_student)throws Exception {
StringBuffer sb = new StringBuffer("select count(*) as total from t_student t1");
if(StringTool.isNotEmpty(s_student.getName())) {
sb.append(" and t1.name like '%"+s_student.getName()+"%'");
} else if(StringTool.isNotEmpty(s_student.getStuNumber())) {
sb.append(" and t1.stuNum like '%"+s_student.getStuNumber()+"%'");
} else if(StringTool.isNotEmpty(s_student.getDormName())) {
sb.append(" and t1.dormName like '%"+s_student.getDormName()+"%'");
}
if(s_student.getDormBuildId()!=0) {
sb.append(" and t1.dormBuildId="+s_student.getDormBuildId());
}
PreparedStatement pstmt = con.prepareStatement(sb.toString().replaceFirst("and", "where"));
ResultSet rs = pstmt.executeQuery();
if(rs.next()) {
return rs.getInt("total");
} else {
return 0;
}
}
public Student studentShow(Connection con, String studentId)throws Exception {
String sql = "select * from t_student t1 where t1.studentId=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, studentId);
ResultSet rs=pstmt.executeQuery();
Student student = new Student();
if(rs.next()) {
student.setStudentId(rs.getInt("studentId"));
int dormBuildId = rs.getInt("dormBuildId");
student.setDormBuildId(dormBuildId);
student.setDormBuildName(DormBuildDao.dormBuildName(con, dormBuildId));
student.setDormName(rs.getString("dormName"));
student.setName(rs.getString("name"));
student.setSex(rs.getString("sex"));
student.setStuNumber(rs.getString("stuNum"));
student.setTel(rs.getString("tel"));
student.setPassword(rs.getString("password"));
}
return student;
}
public int studentAdd(Connection con, Student student)throws Exception {
String sql = "insert into t_student values(null,?,?,?,?,?,?,?)";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, student.getStuNumber());
pstmt.setString(2, student.getPassword());
pstmt.setString(3, student.getName());
pstmt.setInt(4, student.getDormBuildId());
pstmt.setString(5, student.getDormName());
pstmt.setString(6, student.getSex());
pstmt.setString(7, student.getTel());
return pstmt.executeUpdate();
}
public int studentDelete(Connection con, String studentId)throws Exception {
String sql = "delete from t_student where studentId=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, studentId);
return pstmt.executeUpdate();
}
public int studentUpdate(Connection con, Student student)throws Exception {
String sql = "update t_student set stuNum=?,password=?,name=?,dormBuildId=?,dormName=?,sex=?,tel=? where studentId=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, student.getStuNumber());
pstmt.setString(2, student.getPassword());
pstmt.setString(3, student.getName());
pstmt.setInt(4, student.getDormBuildId());
pstmt.setString(5, student.getDormName());
pstmt.setString(6, student.getSex());
pstmt.setString(7, student.getTel());
pstmt.setInt(8, student.getStudentId());
return pstmt.executeUpdate();
}
}
源码以及数据库文件获取
请到我的主页中心下载 都是大学生 大家互帮互助 现在是免费的呢 感谢大家的支持!
版权归原作者 吾不才故不语 所有, 如有侵权,请联系我们删除。