基于java教室设备管理系统

教室设备管理系统是基于java编程语言和mysql数据库,ssh框架,bs的架构开发,系统主要分为学生,教师,管理员三个角色,其中学生可以登录系统,查看个人信息,在线借用教室设备;教师可以预约教师和借用教室设备;管理员可以对用户,教室,设备,通知信息进行管理,查看用户的预约信息。本设计适合作为java毕业设计和java课程设计来参考和学习。


一.技术环境

JDK版本:1.8
IDE工具:eclipse
数据库: mysql 5.6
编程语言: Java
tomcat: 8.0
框架:ssh
详细技术:HTML+CSS+JS+JSP+JAVA+SSH+MYSQL


二.项目文件(项目获取请看文末官网)


三.系统功能


四.代码示例

package com.lmu.controller;/*** 用户新增*/import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.lmu.model.*;
import com.lmu.service.*;
import com.lmu.utils.*;import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.usermodel.*;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.struts2.ServletActionContext;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;@Controller("equipmentController")
@Scope("prototype")/*** 继承ActionSupport类方便实现验证和开发,继承ActionSupport的情况下,必须有无参构造函数* 实现modelDriven是把实体类当成页面数据的收集对象*/
public class EquipmentController extends ActionSupport implements ModelDriven<Equipment> {@Autowiredprivate LaboratoryService laboratoryService;@Autowiredprivate EquipmentService equipmentService;@Autowiredprivate EquipmentLogService equipmentLogService;@Autowiredprivate RepairLogService repairLogService;private Equipment equipment;private Map<String, Object> map = new HashMap();private File file;private String fileFileName;private String fileContentType;private String downloadFileName;private Integer exportId;/*** list** @return*/public String list() {User user1 = UserUtils.getUser();if (user1 == null || user1.getId() == null) {ActionContext.getContext().put("login", 1);return SUCCESS;}Pager<Equipment> pagers = null;Role role = user1.getRole();if (role.getEnName().equals("admin")) {pagers = equipmentService.getList(equipment);ActionContext.getContext().put("pagers", pagers);ActionContext.getContext().put("user", user1);Pager<Laboratory> pagers2 = laboratoryService.getList(null);ActionContext.getContext().put("pagers2", pagers2);ActionContext.getContext().put("bean", equipment);}return SUCCESS;}/*** list** @return*/public String dataList() {User user1 = UserUtils.getUser();if (user1 == null || user1.getId() == null) {ActionContext.getContext().put("login", 1);return SUCCESS;}Pager<Equipment> pagers = null;Role role = user1.getRole();if (role.getEnName().equals("admin")) {pagers = equipmentService.getList(equipment);ActionContext.getContext().put("pagers", pagers);ActionContext.getContext().put("user", user1);Pager<Laboratory> pagers2 = laboratoryService.getList(null);ActionContext.getContext().put("pagers2", pagers2);ActionContext.getContext().put("bean", equipment);}return SUCCESS;}/*** list** @return*/public String dataList2() {User user1 = UserUtils.getUser();if (user1 == null || user1.getId() == null) {ActionContext.getContext().put("login", 1);return SUCCESS;}Pager<Equipment> pagers = null;Role role = user1.getRole();if (role.getEnName().equals("admin")) {pagers = equipmentService.getList(equipment);ActionContext.getContext().put("pagers", pagers);ActionContext.getContext().put("user", user1);Pager<Laboratory> pagers2 = laboratoryService.getList(null);ActionContext.getContext().put("pagers2", pagers2);ActionContext.getContext().put("bean", equipment);}return SUCCESS;}/*** 跳转add** @return*/public String add() {User user1 = UserUtils.getUser();ActionContext.getContext().put("bean", user1);return SUCCESS;}/*** 查询修改** @return*/public String edit() {Equipment bean = equipmentService.findById(equipment.getId());Pager<Laboratory> pagers2 = laboratoryService.getList(null);ActionContext.getContext().put("pagers2", pagers2);ActionContext.getContext().put("bean", bean);return SUCCESS;}/*** 使用** @return*/public void updateSh() throws IOException {equipment.setFwTime(new Date());equipment.setIsFw(1);equipmentService.updates(equipment);map.put("flag", true);map.put("url", "equipment_dataList.do");JsonUtils.toJson(map);}/*** 借用list** @return*/public String dataList3() {User user1 = UserUtils.getUser();if (user1 == null || user1.getId() == null) {ActionContext.getContext().put("login", 1);return SUCCESS;}Pager<Equipment> pagers = null;pagers = equipmentService.getList(equipment);ActionContext.getContext().put("pagers", pagers);ActionContext.getContext().put("user", user1);Pager<Laboratory> pagers2 = laboratoryService.getList(null);ActionContext.getContext().put("pagers2", pagers2);ActionContext.getContext().put("bean", equipment);return SUCCESS;}/*** 借用** @return*/public void yy() throws IOException {Equipment equipment1 = equipmentService.findById(equipment.getId());if (equipment1.getIsJy() == 0) {equipment.setIsJy(1);equipment.setJyUser(UserUtils.getUser());EquipmentLog log = new EquipmentLog();log.setUser(UserUtils.getUser());log.setTime(new Date());log.setEquipment(equipment);log.setIsYy(1);equipmentLogService.save(log);equipment.setJyId(log.getId());equipmentService.updates(equipment);map.put("flag", true);map.put("url", "equipment_dataList3.do");JsonUtils.toJson(map);} else {map.put("flag", false);map.put("url", "equipment_dataList3.do");JsonUtils.toJson(map);}}/*** 借用归还** @return*/public void qx() throws IOException {Equipment equipment1 = equipmentService.findById(equipment.getId());EquipmentLog equipmentLog = equipmentLogService.findById(equipment1.getJyId());if (equipmentLog.getUser().getId() == UserUtils.getUser().getId()) {equipment1.setIsJy(0);equipmentService.update(equipment1);equipmentLog.setIsYy(0);equipmentLog.setEndTime(new Date());equipmentLog.setQx(UserUtils.getUser());equipmentLogService.updates(equipmentLog);map.put("flag", true);map.put("url", "equipment_dataList3.do");JsonUtils.toJson(map);} else {map.put("flag", false);map.put("url", "equipment_dataList3.do");JsonUtils.toJson(map);}}/*** 更新** @return*/public String updateDoc() throws IOException {if (file != null) {ActionContext ac = ActionContext.getContext();HttpServletRequest request = (HttpServletRequest) ac.get(ServletActionContext.HTTP_REQUEST);String root = request.getRealPath("/upload");InputStream is = new FileInputStream(file);String f = fileFileName;f = UUIDUtils.create() + fileFileName;OutputStream os = new FileOutputStream(new File(root, f));byte[] buffer = new byte[500];int length = 0;while (-1 != (length = is.read(buffer, 0, buffer.length))) {os.write(buffer);}os.close();is.close();equipment.setHt("\\upload\\" + f);}equipmentService.updates(equipment);ActionContext.getContext().put("url", "equipment_dataList.do");return "redirect";}/*** 更新** @return*/public void deleteDocAndPhoto() throws IOException {Equipment ee = equipmentService.findById(equipment.getId());ee.setPhoto(null);ee.setHt(null);equipmentService.updates(equipment);map.put("flag", true);map.put("url", "equipment_dataList2.do");JsonUtils.toJson(map);}/*** 更新** @return*/public String updatePhoto() throws IOException {if (file != null) {ActionContext ac = ActionContext.getContext();HttpServletRequest request = (HttpServletRequest) ac.get(ServletActionContext.HTTP_REQUEST);String root = request.getRealPath("/upload");InputStream is = new FileInputStream(file);String f = fileFileName;f = UUIDUtils.create() + fileFileName;OutputStream os = new FileOutputStream(new File(root, f));byte[] buffer = new byte[500];int length = 0;while (-1 != (length = is.read(buffer, 0, buffer.length))) {os.write(buffer);}os.close();is.close();equipment.setPhoto("\\upload\\" + f);}equipmentService.updates(equipment);ActionContext.getContext().put("url", "equipment_dataList2.do");return "redirect";}/*** 更新** @return*/public void update() throws IOException {equipmentService.updates(equipment);map.put("flag", true);map.put("url", "equipment_dataList.do");JsonUtils.toJson(map);}public void download() throws IOException {Equipment equipment1 = equipmentService.findById(equipment.getId());downloadFileName = URLEncoder.encode(equipment1.getHt(), "utf-8");// 1、得到要下载文件的完整路径?String path = ServletActionContext.getServletContext().getRealPath(equipment1.getHt());System.out.println("path :" + path);HttpServletResponse resp = ServletActionContext.getResponse();resp.setContentType("application/x-msdownload");// 指定响应动作是下载路径?resp.setHeader("Content-disposition", "attachment;filename=export.doc");//读取文件InputStream in = new FileInputStream(path);OutputStream out = resp.getOutputStream();//写文件?int b;while ((b = in.read()) != -1) {out.write(b);}in.close();out.close();map.put("flag", true);map.put("url", "equipment_dataList.do");JsonUtils.toJson(map);}/*** 保存** @return*/public String save() throws IOException {equipmentService.save(equipment);map.put("flag", true);map.put("url", "equipment_list.do");JsonUtils.toJson(map);return SUCCESS;}public void delete() throws IOException {equipment.setIsDelete(1);equipmentService.updates(equipment);map.put("flag", true);map.put("url", "equipment_list.do");JsonUtils.toJson(map);}public void export() throws IOException {List<Equipment> list = equipmentService.getList(equipment).getDatas();// 生成WorkbookHSSFWorkbook wb = new HSSFWorkbook();// 追加SheetSheet sheet = wb.createSheet("Sheet");// 总列表?Integer CountColumnNum = 6;Cell[] firstCell = new Cell[CountColumnNum];String[] firstCellNames = new String[CountColumnNum];firstCellNames[0] = "设备型号";firstCellNames[1] = "设备价格";firstCellNames[2] = "设备制制造商";firstCellNames[3] = "设备序列号";firstCellNames[4] = "服务开始时时间";// 插入Row firstRow = sheet.createRow(0);for (int j = 0; j < CountColumnNum; j++) {firstCell[j] = firstRow.createCell(j);firstCell[j].setCellValue(new HSSFRichTextString(firstCellNames[j]));}BigDecimal bd;for (int i = 0; i < list.size(); i++) {// 创建Row row = sheet.createRow(i + 1);Cell id = row.createCell(0);id.setCellValue(list.get(i).getXh().toString());bd = new BigDecimal(list.get(i).getJg().toString());bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP);Cell by = row.createCell(1);by.setCellValue(bd.toString());Cell zzs = row.createCell(2);zzs.setCellValue(list.get(i).getZzs().toString());Cell xh = row.createCell(3);xh.setCellValue(list.get(i).getSbxlh().toString());Cell sj = row.createCell(4);if (list.get(i).getFwTime() != null && !list.get(i).getFwTime().equals("")) {sj.setCellValue(list.get(i).getFwTime().toString());}}// 创建文件输出流,准备输出电子表格HttpServletResponse response = ServletActionContext.getResponse();response.setContentType("application/vnd.ms-excel");//response.setContentType("application/vnd.ms-excel");response.setHeader("Content-disposition", "attachment;filename=export.xls");OutputStream out = response.getOutputStream();wb.write(out);out.flush();out.close();}@Overridepublic Equipment getModel() {if (equipment == null) {equipment = new Equipment();}return equipment;}public File getFile() {return file;}public void setFile(File file) {this.file = file;}public String getFileFileName() {return fileFileName;}public void setFileFileName(String fileFileName) {this.fileFileName = fileFileName;}public String getFileContentType() {return fileContentType;}public void setFileContentType(String fileContentType) {this.fileContentType = fileContentType;}public String getDownloadFileName() {return downloadFileName;}public void setDownloadFileName(String downloadFileName) {this.downloadFileName = downloadFileName;}public Integer getExportId() {return exportId;}public void setExportId(Integer exportId) {this.exportId = exportId;}
}

五.项目截图












(java毕业设计)基于java教室设备管理系统源码相关推荐

  1. 基于Java毕业设计疫情期间物资分派管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计疫情期间物资分派管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计疫情期间物资分派管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构 ...

  2. java计算机毕业设计基于Ssm学生信息管理系统源码+数据库+系统+lw文档+mybatis+运行部署

    java计算机毕业设计基于Ssm学生信息管理系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计基于Ssm学生信息管理系统源码+数据库+系统+lw文档+mybatis+运 ...

  3. 基于Java毕业设计药房药品采购集中管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计药房药品采购集中管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计药房药品采购集中管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构 ...

  4. 基于Java毕业设计眼科医疗室信息管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计眼科医疗室信息管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计眼科医疗室信息管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B ...

  5. 基于Java毕业设计校园疫情防控管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计校园疫情防控管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园疫情防控管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S ...

  6. 基于Java毕业设计疫情下的居民管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计疫情下的居民管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计疫情下的居民管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S ...

  7. 基于Java毕业设计在校大学生健康状况信息管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计在校大学生健康状况信息管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计在校大学生健康状况信息管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈 ...

  8. 基于Java毕业设计学术会议论文稿件管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计学术会议论文稿件管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计学术会议论文稿件管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构 ...

  9. 基于Java毕业设计仓库进销存管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计仓库进销存管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计仓库进销存管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 ...

  10. 基于Java毕业设计贝儿米幼儿教育管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计贝儿米幼儿教育管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计贝儿米幼儿教育管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B ...

最新文章

  1. 腾讯基于 Flink SQL 的功能扩展与深度优化实践
  2. SQL基础【十、Delete】
  3. 【UML】如何看Android的UML图
  4. 数学差、物理差、英语又烂的放牛娃,后来竟成了清华校长,还做出了诺奖级的研究成果...
  5. Unity Shader之入门-helloworld
  6. 怎样让电脑速度变快_电脑常用软件推荐
  7. java 运行时异常 处理_如何在Java中处理运行时异常?
  8. 超全!0基础程序员从入门到工作(持续更新...)
  9. 电脑键盘equals在哪个位置_【电脑键盘在哪里调出来】电脑键盘在哪里找_电脑模拟键盘在哪里...
  10. 分布式系统:FastRPC eRPC
  11. java guardedby_Java多线程基础(五)——Guarded Suspension模式
  12. C语言多文件编程详解
  13. SAP ABAP 取物料号的采购订单文本内容
  14. 教你快速查询大量圆通快递单号的物流信息
  15. uni-app 文件选择、文件管理器(ios11)
  16. Google Earth Engine(GEE)——MODIS 影像LST地表温度随时间变化的趋势案例分析
  17. 虚拟机没关电脑直接关机了,重启后crt、xshell都连不上虚拟机
  18. 银河麒麟V10安装虚拟机
  19. abaqus钢结构螺栓连接分析
  20. 招聘运维开发leader

热门文章

  1. Spring Boot+Spring Security:记住我(Remember-Me): 基于简单加密token的方案 - 第25篇
  2. css记录div渐变背景设置border-radius圆角显示不完整
  3. mysql正则匹配大写字母_正则表达式,大写字母,怎么匹配?
  4. Ubuntu18.04新手架设网站全过程
  5. linux使用cmake交叉编译arm32程序
  6. PHP快手直播弹幕采集,获取斗鱼弹幕php版(原创)
  7. awk和sed命令详解
  8. php 之session 进行时
  9. python for 无限循环
  10. 用windows 画图 裁剪照片