Java项目:ssh会议室管理系统

作者主页:夜未央5788

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

本系统为基于jsp+ssh+mysql的会议室管理系统,包含普通用户和管理员,系统功能如下:
普通用户:会议室管理、会议管理、用户管理、个人资料。
管理员用户:会议室管理、会议管理、用户管理、部门管理、设备管理、个人资料。

服务器端采用ssh框架,界面整洁完美,适合作为毕业设计、课程设计、数据库大作业。


由于本程序规模不大,可供课程设计,毕业设计学习演示之用

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 
5.数据库:MySql 5.7版本;

6.是否Maven项目:否;

技术栈

1. 后端:Spring+Structs+Hibernate

2. 前端:JSP+jQuery

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;

3. 将项目中WEB-INF/applicationContext.xml配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080/ 登录 
管理员用户 xiaoniucr/123456

普通用户 quanmin/123456

运行截图

 

 

 

 

 

 

 

 

相关代码 

BoardroomAction

package com.meet.action;

import java.util.List;
import java.util.Map;

import org.apache.struts2.interceptor.SessionAware;

import com.meet.entity.Boardroom;
import com.meet.entity.Meet;
import com.meet.service.IBoardroomService;
import com.meet.util.MeetPageBean;
import com.meet.util.RoomPageBean;
import com.opensymphony.xwork2.ActionSupport;

/**
 * 会议室控制层
 *
 * @author
 */
public class BoardroomAction extends ActionSupport implements SessionAware {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private Boardroom room;
    private IBoardroomService roomService;
    private Map<String, Object> sessionMap;
    private int page = 1; //表示从网页中返回的当前页的值  默认为1 表示默认显示第一页内容
    private RoomPageBean roompageBean; //封装了分页信息和数据内容的pageBean
    private List<Boardroom> listRoom;//用于储存pageBean当中被封装的User信息

    /**
     * 添加
     *
     * @return
     * @throws Exception
     */
    public String addRoom() throws Exception {
        if (room.getBoardroomid() == null) {
            roomService.addBoardroom(room);
        } else {
            updateRoom();
        }
        return "addRoom";
    }

    /**
     * 修改
     *
     * @return
     * @throws Exception
     */
    public String updateRoom() throws Exception {
        roomService.updateBoardroom(room);
        return "updateRoom";
    }

    /**
     * 删除
     *
     * @return
     * @throws Exception
     */
    public String deleteRoom() throws Exception {
        roomService.deleteBoardroom(room.getBoardroomid());
        return "deleteRoom";
    }

    /**
     * 查找所有
     *
     * @return
     * @throws Exception
     */
    public String findAllBoardroom() throws Exception {
        //List<Boardroom> roomList=roomService.findAllBoardroom();
        //sessionMap.put("roomList", roomList);
        this.roompageBean = roomService.queryForPage(5, page);//获取封装了分页信息和数据的pageBean
        List<Boardroom> roomList = this.roompageBean.getList(); //获取数据
        sessionMap.put("roomList", roomList);
        sessionMap.put("roompageBean", roompageBean);
        return "findAllBoardroom";
    }

    /**
     * 条件查询
     *
     * @return
     * @throws Exception
     */
    public String findByTJ() throws Exception {
        this.roompageBean = roomService.findByTJ(5, page, null == room ? null : room.getBoardroomtype());
        this.listRoom = this.roompageBean.getList();
        sessionMap.put("roompageBean", roompageBean);
        sessionMap.put("roomList", listRoom);
        return "findByTJ";
    }

    /**
     * 查找空闲的
     *
     * @return
     * @throws Exception
     */
    public String findkxBoardroom() throws Exception {
        List<Boardroom> roomkx = roomService.findkxBoardroom();
        sessionMap.put("roomkx", roomkx);
        return "findkxBoardroom";
    }

    /**
     * 通过id查找
     *
     * @return
     * @throws Exception
     */
    public String findByIdRoom() throws Exception {
        this.room = roomService.findByIdBoardroom(room.getBoardroomid());
        return "findByIdRoom";
    }

    public Boardroom getRoom() {
        return room;
    }

    public void setRoom(Boardroom room) {
        this.room = room;
    }

    public void setRoomService(IBoardroomService roomService) {
        this.roomService = roomService;
    }

    @Override
    public void setSession(Map<String, Object> sessionMap) {
        this.sessionMap = sessionMap;
    }

    public int getPage() {
        return page;
    }

    public void setPage(int page) {
        this.page = page;
    }

    public RoomPageBean getRoompageBean() {
        return roompageBean;
    }

    public void setRoompageBean(RoomPageBean roompageBean) {
        this.roompageBean = roompageBean;
    }

    public List<Boardroom> getListRoom() {
        return listRoom;
    }

    public void setListRoom(List<Boardroom> listRoom) {
        this.listRoom = listRoom;
    }
}

EquipmentAction

package com.meet.action;

import java.util.List;
import java.util.Map;

import org.apache.struts2.interceptor.SessionAware;

import com.meet.entity.Equipment;
import com.meet.service.IEquipmentService;
import com.opensymphony.xwork2.ActionSupport;

/**
 * 设备控制层
 *
 * @author
 */
public class EquipmentAction extends ActionSupport implements SessionAware {

    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private Map<String, Object> sessionMap;
    private Equipment equipment;
    private IEquipmentService equipmentService;

    /**
     * 添加
     *
     * @return
     * @throws Exception
     */
    public String addEquipment() throws Exception {
        if (equipment.getEquipmentid() == null) {
            equipmentService.addEquipment(equipment);
        } else {
            updateEquipment();
        }
        return "addEquipment";
    }

    /**
     * 修改
     *
     * @return
     * @throws Exception
     */
    public String updateEquipment() throws Exception {
        equipmentService.updateEquipment(equipment);
        return "updateEquipment";
    }

    /**
     * 删除
     *
     * @return
     * @throws Exception
     */
    public String deleteEquipment() throws Exception {
        equipmentService.deleteEquipment(equipment.getEquipmentid());
        return "deleteEquipment";
    }

    /**
     * 查找所有
     *
     * @return
     * @throws Exception
     */
    public String findAllEquipment() throws Exception {
        List<Equipment> equipmentList = equipmentService.findAllEquipment();
        sessionMap.put("equipmentList", equipmentList);
        return "findAllEquipment";
    }

    /**
     * 通过id查找
     *
     * @return
     * @throws Exception
     */
    public String findByIdEquipment() throws Exception {
        this.equipment = equipmentService.findByIdEquipment(equipment.getEquipmentid());
        return "findByIdEquipment";
    }

    public Equipment getEquipment() {
        return equipment;
    }

    public void setEquipment(Equipment equipment) {
        this.equipment = equipment;
    }

    public void setEquipmentService(IEquipmentService equipmentService) {
        this.equipmentService = equipmentService;
    }

    @Override
    public void setSession(Map<String, Object> sessionMap) {
        this.sessionMap = sessionMap;
    }

}

GroupAction

package com.meet.action;

import java.util.List;
import java.util.Map;

import org.apache.struts2.interceptor.SessionAware;
import com.meet.entity.Group;
import com.meet.service.IGroupService;
import com.opensymphony.xwork2.ActionSupport;

/**
 * 部门控制层
 *
 * @author
 */
public class GroupAction extends ActionSupport implements SessionAware {

    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private Group group;
    private IGroupService groupService;
    private Map<String, Object> sessionMap;

    /**
     * 添加
     *
     * @return
     * @throws Exception
     */
    public String addGroup() throws Exception {
        if (group.getGroupid() == null) {
            groupService.addGroup(group);
        } else {
            updateGroup();
        }
        return "addGroup";
    }

    /**
     * 更新
     *
     * @return
     * @throws Exception
     */
    public String updateGroup() throws Exception {
        groupService.updateGroup(group);
        return "updateGroup";
    }

    /**
     * 查找所有
     *
     * @return
     * @throws Exception
     */
    public String findListGroup() throws Exception {
        List<Group> groupList = groupService.findAllGroup();
        sessionMap.put("groupList", groupList);
        return "findListGroup";
    }

    /**
     * 通过id查找
     *
     * @return
     * @throws Exception
     */
    public String findByIdGroup() throws Exception {
        this.group = groupService.findByIdGroup(group.getGroupid());
        return "findByIdGroup";
    }

    /**
     * 删除
     *
     * @return
     * @throws Exception
     */
    public String deleteGroup() throws Exception {
        groupService.deleteGroup(group.getGroupid());
        return "deleteGroup";
    }

    public Group getGroup() {
        return group;
    }

    public void setGroup(Group group) {
        this.group = group;
    }

    public void setGroupService(IGroupService groupService) {
        this.groupService = groupService;
    }

    @Override
    public void setSession(Map<String, Object> sessionMap) {
        this.sessionMap = sessionMap;
    }
}

MeetAction

package com.meet.action;

import java.util.List;
import java.util.Map;

import org.apache.struts2.interceptor.SessionAware;

import com.meet.entity.Meet;
import com.meet.service.IMeetService;
import com.meet.util.MeetPageBean;
import com.opensymphony.xwork2.ActionSupport;

/**
 * 会议管理控制层
 *
 * @author
 */
public class MeetAction extends ActionSupport implements SessionAware {

    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private IMeetService meetService;
    private Meet meet;
    private Map<String, Object> sessionMap;
    private int page = 1; //表示从网页中返回的当前页的值  默认为1 表示默认显示第一页内容
    private MeetPageBean meetpageBean; //封装了分页信息和数据内容的pageBean
    private List<Meet> listMeet;//用于储存pageBean当中被封装的User信息

    /**
     * 添加
     *
     * @return
     * @throws Exception
     */
    public String addMeet() throws Exception {
        meetService.addMeet(meet);
        return "addMeet";
    }

    /**
     * 删除
     *
     * @return
     * @throws Exception
     */
    public String deleteMeet() throws Exception {
        meetService.deleteMeet(meet.getMeetid());
        return "deleteMeet";
    }

    /**
     * 更新
     *
     * @return
     * @throws Exception
     */
    public String updateMeet() throws Exception {
        meetService.updateMeet(meet);
        return "updateMeet";
    }

    /**
     * 通过id查找
     *
     * @return
     * @throws Exception
     */
    public String findByIdMeet() throws Exception {
        this.meet = meetService.findByIdMeet(meet.getMeetid());
        return "findByIdMeet";
    }

    /**
     * 查找所有
     *
     * @return
     * @throws Exception
     */
    public String findAllMeet() throws Exception {
        //List<Meet> meetList=meetService.findAllMeet();
        //sessionMap.put("meetList", meetList);
        this.meetpageBean = meetService.queryForPage(5, page);//获取封装了分页信息和数据的pageBean
        List<Meet> meetList = this.meetpageBean.getList(); //获取数据
        sessionMap.put("meetList", meetList);
        sessionMap.put("meetpageBean", meetpageBean);
        return "findAllMeet";
    }

    /**
     * 条件查询
     *
     * @return
     * @throws Exception
     */
    public String findByTJ() throws Exception {
        this.meetpageBean = meetService.findByTJ(5, page, null == meet ? null : meet.getMeetname());
        this.listMeet = this.meetpageBean.getList();
        sessionMap.put("meetpageBean", meetpageBean);
        sessionMap.put("meetList", listMeet);
        return "findByTJ";
    }

    public void setMeetService(IMeetService meetService) {
        this.meetService = meetService;
    }

    public Meet getMeet() {
        return meet;
    }

    public void setMeet(Meet meet) {
        this.meet = meet;
    }

    @Override
    public void setSession(Map<String, Object> sessionMap) {
        this.sessionMap = sessionMap;
    }

    public int getPage() {
        return page;
    }

    public void setPage(int page) {
        this.page = page;
    }

    public MeetPageBean getMeetpageBean() {
        return meetpageBean;
    }

    public void setMeetpageBean(MeetPageBean meetpageBean) {
        this.meetpageBean = meetpageBean;
    }

    public List<Meet> getListMeet() {
        return listMeet;
    }

    public void setListMeet(List<Meet> listMeet) {
        this.listMeet = listMeet;
    }
}

UserAction

package com.meet.action;

import java.io.File;
import java.io.OutputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.codec.digest.DigestUtils;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.RequestAware;
import org.apache.struts2.interceptor.SessionAware;

import com.meet.entity.User;
import com.meet.service.IUserService;
import com.meet.util.UserPageBean;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

/**
 * 用户控制层
 *
 * @author
 */
public class UserAction extends ActionSupport implements SessionAware, RequestAware {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private User user;
    private User _curUser;
    private IUserService userService;
    private Map<String, Object> sessionMap;
    private Map<String, Object> request;
    private int page = 1; //表示从网页中返回的当前页的值  默认为1 表示默认显示第一页内容
    private UserPageBean pageBean; //封装了分页信息和数据内容的pageBean
    private List<User> listUser;//用于储存pageBean当中被封装的User信息

    /**
     * 添加
     *
     * @return
     * @throws Exception
     */
    public String addUser() throws Exception {
        //User u=new User(user.getUsername(), DigestUtils.md5Hex(user.getPassword()), DigestUtils.md5Hex(user.getRepwd()), user.getAge(), user.getSex(), user.getPhone(), user.getEmail(), user.getRole());
        userService.addUser(user);
        return "addUser";
    }

    /**
     * 查找所有
     *
     * @return
     * @throws Exception
     */
    public String findAllUser() throws Exception {
        if (userService.findRoleByuserName(_curUser.getUsername()) == true) {
            //List<User> userList=userService.findAllUser();
            this.pageBean = userService.queryForPage(5, page);//获取封装了分页信息和数据的pageBean
            List<User> userList = this.pageBean.getList(); //获取数据
            sessionMap.put("userList", userList);
            sessionMap.put("pageBean", pageBean);
        } else {
            List<User> userList = userService.findByUserName(_curUser.getUsername());
            sessionMap.put("userList", userList);
        }
        return "findAllUser";
    }

    /**
     * 条件查询
     *
     * @return
     * @throws Exception
     */
    public String findByTJ() throws Exception {
        this.pageBean = userService.findByTJ(5, page, null == user ? null : user.getUsername());
        this.listUser = this.pageBean.getList();
        sessionMap.put("pageBean", pageBean);
        sessionMap.put("userList", listUser);
        return "findByTJ";
    }

    /**
     * 数据的数据导入到Excel表
     *
     * @return
     * @throws Exception
     */
    public void dbToExcel() {


        try {
            String fileName = "用户列表";
            HttpServletRequest request = ServletActionContext.getRequest();
            HttpServletResponse response = ServletActionContext.getResponse();
            response.setHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes("utf-8"), "iso8859-1") + ".xls");
            response.setContentType("application/ynd.ms-excel;charset=UTF-8");
            OutputStream os = response.getOutputStream();
            WritableWorkbook wwb = null;

            //以fileName为文件名来创建一个Workbook
            wwb = Workbook.createWorkbook(os);

            // 创建工作表
            WritableSheet ws = wwb.createSheet("Test Shee 1", 0);

            //查询数据库中所有的数据
            List<User> list = userService.findAllUser();
            //要插入到的Excel表格的行号,默认从0开始
            Label labelOid = new Label(0, 0, "编号");//表示第
            Label labelUsername = new Label(1, 0, "用户名");
            Label labelAge = new Label(2, 0, "年龄");
            Label labelSex = new Label(3, 0, "性别");
            Label labelPhone = new Label(4, 0, "手机号码");
            Label labelEmail = new Label(5, 0, "邮箱");
            Label labelRole = new Label(6, 0, "角色");
            Label labelGroupname = new Label(7, 0, "组名");

            ws.addCell(labelOid);
            ws.addCell(labelUsername);
            ws.addCell(labelAge);
            ws.addCell(labelSex);
            ws.addCell(labelPhone);
            ws.addCell(labelEmail);
            ws.addCell(labelRole);
            ws.addCell(labelGroupname);

            for (int i = 0; i < list.size(); i++) {
                Label labelOid_i = new Label(0, i + 1, list.get(i).getOid() + "");
                Label labelUsername_i = new Label(1, i + 1, list.get(i).getUsername());
                Label labelAge_i = new Label(2, i + 1, list.get(i).getAge());
                Label labelSex_i = new Label(3, i + 1, list.get(i).getSex());
                Label labelPhone_i = new Label(4, i + 1, list.get(i).getPhone());
                Label labelEmail_i = new Label(5, i + 1, list.get(i).getEmail());
                Label labelRole_i = new Label(6, i + 1, list.get(i).getRole());
                Label labelGroupname_i = new Label(7, i + 1, list.get(i).getGroup().getGroupname());

                ws.addCell(labelOid_i);
                ws.addCell(labelUsername_i);
                ws.addCell(labelAge_i);
                ws.addCell(labelSex_i);
                ws.addCell(labelPhone_i);
                ws.addCell(labelEmail_i);
                ws.addCell(labelRole_i);
                ws.addCell(labelGroupname_i);
            }
            //写进文档
            wwb.write();
            // 关闭Excel工作簿对象
            wwb.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 更新
     *
     * @return
     * @throws Exception
     */
    public String updateUser() throws Exception {
        userService.updateUser(user);
        return "updateUser";
    }

    /**
     * 删除
     *
     * @return
     * @throws Exception
     */
    public String deleteUser() throws Exception {
        userService.deleteUser(user.getOid());
        return "deleteUser";
    }

    /**
     * 通过id查找
     *
     * @return
     * @throws Exception
     */
    public String findByIdUser() throws Exception {
        this.user = userService.findByIdUser(user.getOid());
        return "findByIdUser";
    }

    /**
     * 登录验证
     *
     * @return
     * @throws Exception
     */
    public String loginUser() throws Exception {
        ActionContext ac = ActionContext.getContext();
        Map<String, Object> session = ac.getSession();
        //_curUser = userService.login(_curUser.getUsername(), DigestUtils.md5Hex(_curUser.getPassword()));
        _curUser = userService.login(_curUser.getUsername(), _curUser.getPassword());
        if (_curUser == null) {
            String errMsg = "用户名密码不存在!";
            sessionMap.put("errMsg", errMsg);
            return "login";
        } else {
            session.put("username", _curUser.getUsername());
            session.put("userid", _curUser.getOid());
            session.put("isAdmin", _curUser.isAdmin());
            System.out.println("_curUser:=============" + _curUser);
            return "main";
        }
    }

    /**
     * 退出登录
     *
     * @return
     * @throws Exception
     */
    public String logout() throws Exception {
        Map<String, Object> map = ActionContext.getContext().getSession();
        map.clear();
        return "login";
    }

    public void setUserService(IUserService userService) {
        this.userService = userService;
    }

    @Override
    public void setSession(Map<String, Object> sessionMap) {
        this.sessionMap = sessionMap;
    }

    public User getUser() {
        return user;
    }

    public void setUser(User user) {
        this.user = user;
    }

    public User get_curUser() {
        return _curUser;
    }

    public void set_curUser(User _curUser) {
        this._curUser = _curUser;
    }

    public int getPage() {
        return page;
    }

    public void setPage(int page) {
        this.page = page;
    }

    public UserPageBean getPageBean() {
        return pageBean;
    }

    public void setPageBean(UserPageBean pageBean) {
        this.pageBean = pageBean;
    }

    public List<User> getListUser() {
        return listUser;
    }

    public void setListUser(List<User> listUser) {
        this.listUser = listUser;
    }

    @Override
    public void setRequest(Map<String, Object> arg0) {
        this.request = arg0;
    }

}

如果也想学习本系统,下面领取。关注并回复:015ssh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜未央5788

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值