毕业设计——java web大作业,通过jsp+servlet实现宿舍管理系统

这篇具有很好参考价值的文章主要介绍了毕业设计——java web大作业,通过jsp+servlet实现宿舍管理系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

系统功能分析

1.1 功能模块

宿舍管理系统实现的功能主要分三大类:系统用户的注册登录验证、对宿舍信息的增删改查、对学生信息的增删改查。

      1. 系统用户的登录注册验证

登录时,通过用户名和密码判断是否有此用户;注册时,不允许注册相同用户名的用户。为防止多次注册,设置邮箱验证码功能。基础抽象类如下:

public boolean login(String username, String password) throws Exception;//登录验证

public boolean register(UserBean userBean) throws SQLException ;//注册用户

public boolean addUser(UserBean userBean);//增加用户

      1. 宿舍信息增删改查

宿舍功能模块的增删改查有许多限制条件,如增加宿舍时,宿舍楼号只能在01-10之间,当宿舍入住学生时不可删除,宿舍楼号作为唯一标识不可新修改,查询宿舍时可以多条件联合模糊查询。基础抽象类如下:

public boolean addDorm(Dormbean dormbean) throws SQLException ;//增加宿舍信息

public boolean delDorm(Dormbean dormbean) throws SQLException;//删除宿舍信息

public boolean updateDorm(Dormbean dormbean) throws SQLException ;//更新宿舍信息

public ArrayList<Dormbean> selectDorm(Dormbean dormbean) throws SQLException ;//查询宿舍信息

public ArrayList<Dormbean> showAllDorm() throws SQLException;//展示所有宿舍信息

public int dormTotalCount(Dormbean dormbean);//获取宿舍个数

public Dormbean selectDormById(int id) throws SQLException;//根据id查询宿舍

public boolean updateDormQuantity(Dormbean dormbean); //更新宿舍当前人数

      1. 学生信息增删改查

学生信息的增删改查需要做到多表联动,增加学生信息并选择宿舍的时候需要和宿舍表进行联合操作,根据学生的性别及宿舍已入住人数判断学生信息是否可以添加成功;删除学生信息时,为防止误删,提供了事务回滚操作;因学生信息较多,提供了批量删除和分页功能操作;查询时可以多条件模糊查询;学生学号作为唯一标识,不可修改。抽象基础类如下:

public ArrayList<StudentBean> showStudentByPage(int status,int nowPage,int step) throws SQLException;//分页展示所有学生信息

public int StudentTotalCount(int status,StudentBean studentBean);//根据学生状态获得学生个数

public ArrayList<StudentBean> selectStudents(int status,int nowPage,int step,StudentBean studentBean) throws SQLException ;//根据条件查询学生信息并分页

public boolean addStudent(StudentBean studentBean) throws SQLException ;//增加学生信息

public boolean updateStudent(StudentBean studentBean);//更新学生信息

public boolean updateStatusStudent(int id,int status);//更新学生状态

public boolean delStudent(int id); //根据id删除学生

public boolean delAllStudent(String[] id); //根据id数组批量删除学生

public boolean updateAllStudent(String[] id);//根据id数组批量改变学生信息状态

    1. 系统运行环境

项目开发工具为Spring Tool Suite ,版本为3.9.7.RELEASE;数据库为mysql数据库,版本为5.5.53;服务器为Tomcat服务器,版本为8.5.37。

二、后台数据库设计

   2.1 数据库dormitory

数据库中共有三张表管理员信息表user,宿舍信息表dorm,学生信息表student。

2.2 用户信息表user

用户信息表包含5个字段信息,对应着系统用户的登录注册验证模块,表结构如下所示。

用户信息表

字段名

字段类型

字段长度

意义

备注

id

int

11

数据编号

主键

username

varchar

10

用户名

password

varchar

15

密码

email

varchar

20

邮箱

realname

varchar

10

真实姓名

2.3宿舍信息表

宿舍信息表包含七个字段,对应着宿舍信息增删改查的功能模块,表结构如下:

  宿舍信息表

字段名

字段类型

字段长度

意义

备注

id

int

5

数据编号

主键

house

varchar

3

哪一栋

build

varchar

5

哪一座

number

varchar

10

门牌号

attribute

varchar

5

男女宿舍

quantity

int

2

当前人数

status

int

2

是否可用

可用为1;不可用为0

2.4学生信息表

学生信息表包含12个字段,对应着学生信息增删改查的功能模块,表结构如下:

 学生信息表

字段名

字段类型

字段长度

意义

备注

id

int

11

数据编号

主键

sid

int

11

学号

dormID

int

5

对应宿舍ID

sname

varchar

10

学生姓名

ssex

varchar

5

学生性别

sbirthday

date

出生日期

smajor

varchar

30

专业

scollege

varchar

20

学院

sentranceT

int

5

入学时间

stelephone

varchar

15

电话

img

varchar

20

status

int

2

学生状态

默认为1,代表住宿中;2代表已离开

三、系统模块划分

3.1 用户模块

用户模块主要涉及用户登录和用户注册功能,为实现这两个功能,涉及了五个方法,从而对数据库进行操作,所有方法如下:

public boolean isUserExist(String username, String password) throws SQLException;//登录时根据用户名和密码判断用户是否存在

public boolean addUser(UserBean userBean);//增加用户

public boolean updateUser(UserBean userBean);//更新用户信息

public boolean selectByUserName(String username) throws SQLException;//注册用户时,先根据用户名查找此用户名是否已被注册

public UserBean selectUser(String username, String password);//根据用户名和密码,返回用户的详细信息

3.1.1 用户登录模块

用户登录模块需要根据用户输入的密码和用户名,对数据库中存储的数据进行查询,如果查询到对应数据,则允许登录,反之,则不允许登录。

3.1.2用户注册模块

用户注册时因为用户名为唯一标识,所以不允许注册有相同用户名的账号,为了防止重复注册,用户在注册时,需要填写自己的邮箱地址,系统会向用户邮箱发送验证码,验证码正确时才允许注册。

3.2 宿舍模块

宿舍模块包括对用户的增删改查操作,为实现这些操作,涉及了以下的方法:

public boolean addDorm(Dormbean dormbean) ;//增加宿舍

public boolean delDorm(Dormbean dormbean)  throws SQLException;//删除宿舍

public boolean updateDorm(Dormbean dormbean) ;//更新宿舍

public ArrayList<Dormbean> selectDorm(Dormbean dormbean) throws SQLException ;//查询复合条件的宿舍

public ArrayList<Dormbean> showAllDorm() throws SQLException;//展示所有宿舍

public boolean isExitDorm(Dormbean dormbean) throws SQLException;//判断宿舍是否存在

public Dormbean selectDormById(int id) throws SQLException ;//根据宿舍编号查询宿舍并返回宿舍信息

public int dormTotalCount(Dormbean dormbean) ;//返回宿舍总数

public boolean updateDormQuantity(int id,int quantity) ;//根据宿舍id更新宿舍学生数,插入学生时使用

public Dormbean selectDormByDormbean(Dormbean dormbean) throws SQLException; //根据条件返回宿舍

3.2.1 宿舍信息的增加

增加宿舍信息时,首先在前台已经对宿舍信息进行了验证,防止不合法的输入。在确保验证和法的情况下,查询将要创建的宿舍是否已经存在,如已经存在,则提示用户此宿舍已存在,创建失败;如宿舍不存在,则创建成功。

3.2.2 宿舍信息的删除

删除宿舍信息时,会先判断当前宿舍的人数,若当前宿舍人数为0,则可以删除宿舍,若当前宿舍仍有学生入住,则不可删除。

3.2.3 宿舍信息的更改

宿舍信息的楼号,栋号,门牌号作为宿舍的唯一标识不可修改,可修改宿舍的使用状态和可入住学生的性别。因此,在修改宿舍信息之前会判断宿舍当前人数,若宿舍人数为0,则可以修改;若不为0,则不允许修改。

3.2.4 宿舍信息的查询

宿舍信息查询支持对宿舍座号、栋号、门牌号、入住学生性别、当前入住人数的多条件联合查询。

3.3学生模块

学生模块包括对学生信息的增删改查,批量操作,信息分页的功能,涉及了以下的方法:

public ArrayList<StudentBean> showStudentByPage(int status,int nowPage,int step) throws SQLException ;//学生信息分页

public int studentTotalCount(int status,StudentBean studentBean) ;//返回学生总数

public ArrayList<StudentBean> selectStudents(int status,int nowPage, int step,StudentBean studentBean) throws SQLException;//根据查询条件实现学生信息分页

public boolean addStudent(StudentBean studentBean);//增加学生信息

public boolean isExistStudent(int sid) throws SQLException ;//根据学生学号判断学生是否存在

public StudentBean selectStudentById(int id) throws SQLException;//根据学生主键查询相对应学生信息

public boolean updateStudent(StudentBean studentBean);//更新学生信息

public boolean updateStatusStudent(int id,int status);//根据学生主键更新学生状态

public boolean delStudent(int id); //根据主键删除单个学生

public boolean delAllStudent(String[] id); //根据主键数组批量删除学生

public boolean updateAllStudent(String[] id); //根据主键恢复被删除的学生

3.3.1学生信息的增加

增加学生信息时首先在前端进行表单验证,防止不合法的输入。在增加学生信息时,需要为其入住相应的宿舍,入住宿舍时需要进行判断,当宿舍存在时,判断学生性别以及当前宿舍人数,来判断学生是否能够入住;当宿舍不存在时,则为学生创建相对应的宿舍进行入住,入住成功后,对应的宿舍信息表中的宿舍人数数据进行加一。

3.3.2学生信息的删除

为防止用户误删学生信息,系统提供了事务回滚机制,切因学生信息较多,提供了批量删除机制。当学生信息真正从数据库中删除的时候,对应的学生宿舍的宿舍人数会减一。

3.3.3学生信息的修改

学生学号作为学生信息的唯一标识不可修改,可以对学生的姓名、学院、专业、出生日期、入学年份、联系电话进行修改。

3.3.4学生信息的查询

因为学生信息较多,所以对学生数据进行了分页,支持对学生学号、姓名、性别、专业、学院入学年份的多条件模糊查询。

  • 系统实现

4.1用户注册页面

javaweb作业,毕业设计指导及定制,课程设计,java,前端

4.1.1注册功能实现代码

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

String code = request.getParameter("code");

HttpSession session = request.getSession();

if (session.getAttribute("code")!=null) {

if ((code.equals(session.getAttribute("code")))) {

session.removeAttribute("code");

UserBean userBean = new UserBean();

userBean.setUsername(request.getParameter("username"));

userBean.setPassword(request.getParameter("password"));

userBean.setEmail(request.getParameter("email"));

UserServiceImpl userServiceImpl = new UserServiceImpl();

try {

if (userServiceImpl.register(userBean)) {

response.getWriter().print("注册成功");

}文章来源地址https://www.toymoban.com/news/detail-774379.html

else {

response.getWriter().print("此用户名已存在,请更换用户名");

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

else {

session.removeAttribute("code");

response.getWriter().print("验证码错误");

}

}

else {

response.getWriter().print("还未获取验证码");

}

4.1.2发送邮件功能实现代码

package com.gzf.util;

import java.io.UnsupportedEncodingException;

import java.util.Date;

import java.util.Properties;

import javax.mail.Address;

import javax.mail.MessagingException;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMessage.RecipientType;

public class EmailUtil {

public static void createMimeMessage(String email,String content) throws UnsupportedEncodingException, MessagingException {

Properties properties = new Properties();

// 使用的协议

properties.setProperty("mail.transport.protocol", "smtp");

//QQ邮箱协议地址

properties.setProperty("mail.smtp.host", "smtp.qq.com");

//端口号

properties.setProperty("mail.smtp.port", "465");

//是否需要授权

properties.setProperty("mail.smtp.auth", "true");

//qq:ssl安全认证

//引用需要的类

properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");

//是否处理未经SSL认证的信息

properties.setProperty("mail.smtp.socketFactory.fallback", "true");

//SSL认证的端口号

properties.setProperty("mail.smtp.socketFactory.port", "465");

Session session = Session.getInstance(properties);

// MimeMessage定义了大多数消息公共属性的抽象获取和设置方法

MimeMessage mimeMessage = new MimeMessage(session);

// 设置发件人地址信息

Address address = new InternetAddress("1226164732@qq.com","gzf","utf-8");

mimeMessage.setFrom(address);

mimeMessage.setSubject("来自谷占方的邮件","utf-8");

content = "您正在注册宿舍管理系统管理员,验证码为"+content;

mimeMessage.setContent(content, "text/html;charset=utf-8");

//设置传送日期

mimeMessage.setSentDate(new Date());

//设置接收人,  .to为正常发送  .cc为抄送  .bcc为密送

mimeMessage.setRecipient(RecipientType.TO,new InternetAddress(email, "小可爱", "utf-8"));

//保存邮件

mimeMessage.saveChanges();

//实例化一个对象,单例模式

session.setDebug(true);

//创建邮箱

//建立连接对象

Transport transport = session.getTransport();

//此处QQ必须填密钥而不是密码

transport.connect("1226164732@qq.com", "xaetrwzpaknkgeeb");

//进行发送

transport.sendMessage(mimeMessage,mimeMessage.getAllRecipients());

//关闭连接

transport.close();

}

}

4.2宿舍操作界面

4.2.1更改宿舍信息

javaweb作业,毕业设计指导及定制,课程设计,java,前端

4.2.2实现代码如下

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

int id = Integer.parseInt(request.getParameter("id"));

int status = Integer.parseInt(request.getParameter("status"));

String house=null;

String attribute = null;

if (request.getParameter("house")!=null) {//说明是通过表单提交更改性别

house = request.getParameter("house");

attribute = request.getParameter("attribute");

}

Dormbean dormbean = new Dormbean();

dormbean.setId(id);

dormbean.setStatus(status);

dormbean.setHouse(house);

dormbean.setAttribute(attribute);

IDormService iDormService = new DormServiceImpl();

try {

response.getWriter().println(iDormService.updateDorm(dormbean));

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

4.3学生列表界面

4.3.1 学生分页显示列表

学生列表实现了分页操作,方便用户浏览信息,并能够在页面中提示当前学生总数,以及页数,在进行搜索之后仍能对学生信息进行分页。

javaweb作业,毕业设计指导及定制,课程设计,java,前端

4.3.2搜索页面信息分页实现代码

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

HttpSession session = request.getSession();

StudentBean studentBean = new StudentBean();

int nowPage;

int step = 5;

if (request.getParameter("nowPage")==null) {//为null说明是通过按钮提交

nowPage = 1;

int sid = 0;

if (request.getParameter("sid")!="") {

sid = Integer.parseInt(request.getParameter("sid"));

}

String sname = request.getParameter("sname");

String ssex = request.getParameter("ssex");

String smajor = request.getParameter("smajor");

String scollege = request.getParameter("scollege");

int sentranceT = 0;

if (request.getParameter("sentranceT")!="") {

sentranceT = Integer.parseInt(request.getParameter("sentranceT"));

}

studentBean.setSid(sid);

studentBean.setSname(sname);

studentBean.setSsex(ssex);

studentBean.setSmajor(smajor);

studentBean.setScollege(scollege);

studentBean.setSentranceT(sentranceT);

session.setAttribute("studentBean", studentBean);

}

else { //不为空说明为通过页码提交搜索

nowPage = Integer.parseInt(request.getParameter("nowPage"));

studentBean = (StudentBean) session.getAttribute("studentBean");

}

int status = 1 ;

System.out.println("servlet中的studentbean为"+studentBean);

IStudentService iStudentService = new StudentServiceImpl();

int totalCount = iStudentService.StudentTotalCount(status,studentBean);

ArrayList<StudentBean> studentBeans = new ArrayList<>();

try {

studentBeans = iStudentService.selectStudents(status,nowPage, step, studentBean);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

Iterator<StudentBean> iterator = studentBeans.iterator();

while (iterator.hasNext()) {

System.out.println(iterator.next());

}

PageUtil<StudentBean> pageUtil = new PageUtil<>();

pageUtil.setList(studentBeans);

pageUtil.setTotalCount(totalCount);

pageUtil.setStep(step);

pageUtil.setNowPage(nowPage);

request.setAttribute("pageUtil", pageUtil);

    request.getRequestDispatcher("student-select.jsp").forward(request, response);

}

4.3.3分页帮助类

package com.gzf.util;

import java.util.ArrayList;

public class PageUtil<T> {

private int totalCount;

private int step;

private int totalPage;

private int nowPage;

private ArrayList<T> list;

public PageUtil(int totalCount, int step, int totalPage, int nowPage, ArrayList<T> list) {

super();

this.totalCount = totalCount;

this.step = step;

this.totalPage = totalPage;

this.nowPage = nowPage;

this.list = list;

}

public PageUtil() {

super();

// TODO Auto-generated constructor stub

}

public int getTotalCount() {

return totalCount;

}

public void setTotalCount(int totalCount) {

this.totalCount = totalCount;

}

public int getStep() {

return step;

}

// 在这里定义了总页数,因此需要先定义数据总数,再定义每页显示数量

public void setStep(int step) {

this.step = step;

if(this.totalCount % this.step ==0) {

this.totalPage = this.totalCount / this.step;

}

else {

this.totalPage = this.totalCount / this.step + 1;

}

}

public int getTotalPage() {

return totalPage;

}

public int getNowPage() {

return nowPage;

}

public void setNowPage(int nowPage) {

this.nowPage = nowPage;

}

public ArrayList<T> getList() {

return list;

}

public void setList(ArrayList<T> list) {

this.list = list;

}

}

4.4学生信息查询

支持对学生信息到的多条件模糊查询。

4.4.1页面展示

javaweb作业,毕业设计指导及定制,课程设计,java,前端

4.4.2实现代码

public ArrayList<StudentBean> selectStudents(int status,int nowPage, int step,StudentBean studentBean) throws SQLException {

// TODO Auto-generated method stub

String sql = "SELECT * FROM student where status = ?";

if (studentBean.getSid()==0) {

sql = sql + " and sid != ?";

}

else {

sql = sql + " and sid like ?";

}

if (studentBean.getSname()=="") {

sql = sql + " and sname != ?";

}

else {

sql = sql + " and sname like ?";

}

if (studentBean.getSsex()=="") {

sql = sql + " and ssex != ?";

}

else {

sql = sql + " and ssex = ?";

}

if (studentBean.getSmajor()=="") {

sql = sql + " and smajor != ?";

}

else {

sql = sql + " and smajor like ?";

}

if (studentBean.getScollege()=="") {

sql = sql + " and scollege != ?";

}

else {

sql = sql + " and scollege like ?";

}

if (studentBean.getSentranceT()==0) {

sql = sql + " and sentranceT != ?";

}

else {

sql = sql + " and sentranceT like ?";

}

sql = sql + " LIMIT ?,?";

System.out.println("*******"+sql+"------"+status);

Object [] params = {status,"%"+studentBean.getSid()+"%","%"+studentBean.getSname()+"%",studentBean.getSsex(),

"%"+studentBean.getSmajor()+"%","%"+studentBean.getScollege()+"%","%"+studentBean.getSentranceT()+"%",

nowPage*step-step,step};

ResultSet resultSet = DButil.select(sql, params);

ArrayList<StudentBean> studentBeans = new ArrayList<>();

while(resultSet.next()) {

StudentBean studentBean2 = new StudentBean();

studentBean2.setId(resultSet.getInt("id"));

studentBean2.setSid(resultSet.getInt("sid"));

studentBean2.setDormID(resultSet.getInt("dormID"));

studentBean2.setSname(resultSet.getString("sname"));

studentBean2.setSsex(resultSet.getString("ssex"));

studentBean2.setSbirthday(resultSet.getString("sbirthday"));

studentBean2.setSmajor(resultSet.getString("smajor"));

studentBean2.setScollege(resultSet.getString("scollege"));

studentBean2.setSentranceT(resultSet.getInt("sentranceT"));

  studentBean2.setStelephone(resultSet.getString("stelephone"));

studentBean2.setImg(resultSet.getString("img"));

studentBean2.setStatus(resultSet.getInt("status"));

studentBeans.add(studentBean2);

}

return studentBeans;

}

4.5增加学生信息

在增加学生信息时,需要为其入住相应的宿舍,入住宿舍时需要进行判断,当宿舍存在时,判断学生性别以及当前宿舍人数,来判断学生是否能够入住;当宿舍不存在时,则为学生创建相对应的宿舍进行入住,入住成功后,对应的宿舍信息表中的宿舍人数数据进行加一。

4.5.1 页面展示

javaweb作业,毕业设计指导及定制,课程设计,java,前端

4.5.2实现代码

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

//获取学生信息,attribute为性别,学号表和宿舍表共用

         int sid = Integer.parseInt(request.getParameter("sid"));

         int sentranceT = Integer.parseInt(request.getParameter("sentranceT"));

         String sname = request.getParameter("sname");

         String sbirthday = request.getParameter("sbirthday");

         String smajor = request.getParameter("smajor");

         String scollege = request.getParameter("scollege");

         String stelephone = request.getParameter("stelephone");

         

         String house = request.getParameter("house");

         String build = request.getParameter("build");

         String number = request.getParameter("number");

         String attribute = request.getParameter("attribute");

         int status = Integer.parseInt(request.getParameter("status"));

//         查询验证输入的宿舍是否可以入住,验证包括宿舍是否存在,性别,以及入住状态

         Dormbean dormbean = new Dormbean();

         dormbean.setHouse(house);

         dormbean.setBuild(build);

         dormbean.setNumber(number);

         dormbean.setAttribute(attribute);

         dormbean.setStatus(status);

         IDormDao iDormDao = new DormDAoImpl();

         //检测学生是否存在

         IStudentDao iStudentDao = new StudentDaoImpl();

         try {

if (iStudentDao.isExistStudent(sid)) {

response.getWriter().print("此学生学号已存在,无法添加");

}

else {

         try {

if (iDormDao.isExitDorm(dormbean)) {//当宿舍存在时

System.out.println("此宿舍存在");

Dormbean dormbean2 = iDormDao.selectDormByDormbean(dormbean);

System.out.println(dormbean2);

if (dormbean2.getQuantity()==6) {

System.out.println("当前宿舍人数已满,请为此学生更换宿舍");

response.getWriter().print("当前宿舍人数已满,请为此学生更换宿舍");

}

else {

if (!(dormbean2.getAttribute().equals(attribute))) {

System.out.println("****----"+dormbean2.getAttribute());

System.out.println(attribute);

System.out.println("当前宿舍不能入住此性别学生");

response.getWriter().print("当前宿舍不能入住此性别学生");

}

else {

if (dormbean2.getStatus()==0) {

System.out.println("当前宿舍未启用,请更换或先启用此宿舍");

response.getWriter().print("当前宿舍未启用,请更换或先启用此宿舍");

}

else {

StudentBean studentBean = new StudentBean();

studentBean.setSid(sid);

studentBean.setDormID(dormbean2.getId());

studentBean.setSname(sname);

studentBean.setSsex(attribute);

studentBean.setSbirthday(sbirthday);

studentBean.setSmajor(smajor);

studentBean.setScollege(scollege);

studentBean.setSentranceT(sentranceT);

studentBean.setStelephone(stelephone);

IStudentService iStudentService = new StudentServiceImpl();

iStudentService.addStudent(studentBean);

System.out.print("已为您创建此学生信息,并入住宿舍");

response.getWriter().print("已为您创建此学生信息,并入住宿舍");

}

}

}

}

else {//当宿舍不存在的时候,先创建宿舍,再入住学生

iDormDao.addDorm(dormbean);

System.out.println(dormbean);

Dormbean dormbean2 = iDormDao.selectDormByDormbean(dormbean);

System.out.println(dormbean2);

StudentBean studentBean = new StudentBean();

studentBean.setSid(sid);

studentBean.setDormID(dormbean2.getId());

studentBean.setSname(sname);

studentBean.setSsex(attribute);

studentBean.setSbirthday(sbirthday);

studentBean.setSmajor(smajor);

studentBean.setScollege(scollege);

studentBean.setSentranceT(sentranceT);

studentBean.setStelephone(stelephone);

IStudentService iStudentService = new StudentServiceImpl();

iStudentService.addStudent(studentBean);

System.out.println("已为您创建此宿舍,并入住此学生");

response.getWriter().print("已为您创建此宿舍,并入住此学生");

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

  } catch (SQLException e1) {

  // TODO Auto-generated catch block

  e1.printStackTrace();

  }

}

4.6 批量删除学生信息

因为学生信息比较多,当大四同学离校时逐条删除信息比较麻烦,所以提供了批量信息删除功能。

4.6.1页面效果展示

javaweb作业,毕业设计指导及定制,课程设计,java,前端

4.6.2 实现代码

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

System.out.println(request.getParameter("data"));

String data = request.getParameter("data");

String[] id  = data.split(",");

IStudentService iStudentService = new StudentServiceImpl();

response.getWriter().println(iStudentService.delAllStudent(id));

}

到了这里,关于毕业设计——java web大作业,通过jsp+servlet实现宿舍管理系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JSP毕业设计2620基于Java的校车安全管理系统【源代码+文档+调试+讲解】

    本文详细阐述了一个校车安全管理系统的设计与实现过程。该系统针对管理员、家长、教师和司机四种用户角色,提供了丰富的功能以满足校车运营的安全性和便捷性需求。通过班级管理、司机管理、教师管理、家长管理、公告管理、线路管理、订单管理和意见反馈管理等核

    2024年02月03日
    浏览(65)
  • Java毕业设计(Java大作业课程设计)——贪吃蛇魔改版(附源代码和完整实验报告)

    运行效果图如下:   这个项目最初的时候是一个贪吃蛇, 但是因为Java大作业做贪吃蛇的同学实在太多了,要是也交个贪吃蛇,肯定有和别的同学撞车的风险,而且老师也肯定看腻了 ,因此我就根据原先的贪吃蛇项目进行魔改,以蜘蛛侠和毒液作为项目的背景,把原先的贪

    2024年02月09日
    浏览(43)
  • 【java毕业设计】基于ssm+mysql+jsp的个性化影片推荐系统设计与实现(程序源码)-个性化影片推荐系统

    大家好,今天给大家介绍 基于ssm+mysql+jsp的个性化影片推荐系统设计与实现 ,本论文只截取部分文章重点,文章末尾附有本毕业设计完整源码及论文的获取方式。更多毕业设计源码可订阅查看上方【毕业设计】专栏获取哦。 目录  基于ssm+mysql+jsp的个性化影片推荐系统设计与

    2024年02月12日
    浏览(75)
  • 基于Java SSM框架实现在线作业管理系统项目【项目源码】计算机毕业设计

    基于java的SSM框架实现在线作业管理系统演示 JSP技术本身是一种脚本语言,但它的功能是十分强大的,因为它可以使用所有的JAVA类。当它与JavaBeans 类进行结合时,它可以使显示逻辑和内容分开,这就极大的方便了运动员的需求。JavaBeans 可以对JSP技术的程序进行扩展,从而形

    2024年01月20日
    浏览(57)
  • 毕业设计 基于Java web的搜索引擎的设计与实现

    🔥 Hi,各位同学好呀,这里是L学长! 🥇今天向大家分享一个今年(2022)最新完成的毕业设计项目作品: 基于Java web的搜索引擎的设计与实现 🥇 学长根据实现的难度和等级对项目进行评分(最低0分,满分5分) 难度系数:3分 工作量:3分 创新点:3分 废话不多说,先上实现效果

    2024年02月09日
    浏览(37)
  • 基于Java web的资产管理系统 毕业设计开题报告

     博主介绍 :《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费 项目配有对应开发文档、开题报告、任务书、PPT、论文模版

    2024年02月04日
    浏览(93)
  • 毕业设计 基于java web的在线图书管理系统(源码+论文)

    🔥 Hi,各位同学好呀,这里是L学长! 🥇今天向大家分享一个今年(2022)最新完成的毕业设计项目作品 基于java web的在线图书管理系统 🥇 学长根据实现的难度和等级对项目进行评分(最低0分,满分5分) 难度系数:3分 工作量:3分 创新点:3分 项目获取: https://gitee.com/sinonfin

    2024年02月10日
    浏览(51)
  • 基于Java web的电影售票管理系统 毕业设计开题报告

     博主介绍 :《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费 项目配有对应开发文档、开题报告、任务书、PPT、论文模版

    2024年02月05日
    浏览(49)
  • 【毕业设计之java系列】基于 WEB 的人力资源管理系统的设计与实现

            这篇文章的重点是探究人力资源管理领域的挑战,并给出一些可行的建议。经过深入研究,我们发现,目前的人力资源管理系统面临着许多挑战。为此,我们建议开发一个基于 WEB 的系统,它可以帮助企业更好地管理员工的个人资料,同时也可以支持企业内部的管

    2024年02月04日
    浏览(44)
  • 基于Java web的二手电子产品回收系统 毕业设计开题报告

     博主介绍 :《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费 项目配有对应开发文档、开题报告、任务书、PPT、论文模版

    2024年02月04日
    浏览(107)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包