基于javaweb+mysql的ssm自习室图书馆座位预约管理系统(java+ssm+jsp+easyui+mysql)

基于javaweb+mysql的ssm自习室图书馆座位预约管理系统(java+ssm+jsp+easyui+mysql)

私信源码获取及调试交流

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SSM自习室图书馆座位预约管理系统(java+ssm+jsp+easyui+mysql)

项目介绍

一款由jsp+ssm+mysql实现的图书馆预约占座管理系统,前端采用的是当下最流行的easyui框架,后台用的ssm(spring、springMVC、mybaits)框架.添加学生和教师时会自动在用户表中注册,定时任务会定时生成座位信息,阅览室分类中可设置信用等级,学生被扣分后信用等级低于相应的值后不能预约相应的阅览室座位.本项目分为管理员、教师、学生三种角色。

管理员角色包含以下功能: 管理员登陆,用户管理,师生信息管理,阅览室管理,信用积分管理,交流管理,信息统计,图书推荐等功能。

教师角色包含以下功能: 教师角色登陆,个人信息管理,管理学生的信用积分等功能。

学生角色包含以下功能: 学生账号登陆,阅览室信息查看,信息积分查看,选座位,选座管理,通知信息管理,信息交流,图书推荐等功能。

环境需要

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+SpringMVC+Mybatis 2. 前端:JSP+easyUI

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中config.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	// 新增或修改
	@RequestMapping("reserveUser")
	public void reserveUser(HttpServletRequest request,User user,HttpServletResponse response){
		String userId = request.getParameter("userId");
		JSONObject result=new JSONObject();
		try {
			if (StringUtil.isNotEmpty(userId)) {   // userId不为空 说明是修改
				user.setUserId(Integer.parseInt(userId));
				userService.updateUser(user);
				result.put("success", true);
			}else {   // 添加
				if(userService.existUserWithUserName(user.getUserName())==null){  // 没有重复可以添加
					userService.addUser(user);
					result.put("success", true);
				} else {
					result.put("success", true);
					result.put("errorMsg", "该用户名被使用");
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
			result.put("success", true);
			result.put("errorMsg", "对不起,操作失败");
		}
		WriterUtil.write(response, result.toString());
	}
	
	
	@RequestMapping("deleteUser")
	public void delUser(HttpServletRequest request,HttpServletResponse response){
		JSONObject result=new JSONObject();
		try {
			String[] ids=request.getParameter("ids").split(",");
			for (String id : ids) {
			e.printStackTrace();
		}
	}
	
	
	
	// 保存选中座位
	@RequestMapping("saveSeat")
	public void saveSeat(HttpServletRequest request,HttpServletResponse response) {
		String keyword = request.getParameter("keyword");
		System.out.println("key---"+keyword);
		User currentUser = (User)request.getSession().getAttribute("currentUser");
		if(currentUser.getRoleId() == 1  || currentUser.getRoleId()==2){  //超管和教师不能选座
			WriterUtil.write(response, "对不起,该阅览室选座只对学生开放");
			return;
		}
		String studentno = currentUser.getUserName();
		String nowDateHour = new SimpleDateFormat("yyyy-MM-dd-HH").format(new Date());  //当前小时数
		String selectedDate = keyword.substring(0,13);  
		try {
			//判断信用积分
			score = scoreService.findOneScore(studentno);
			int myScore = score.getTotal();     //该学生分数
			
			int roomid = Integer.parseInt(keyword.substring(19,20));
			int needScore = roomService.findScoreByRoomid(roomid);
			if(needScore >= myScore){
				WriterUtil.write(response, "预约失败!您的信用积分不允许在该阅览室选座");return;
			}
			String flag = "1";
			Choice c = new Choice();
			c.setStudentno(studentno);
			c.setStatus("0");
			List<Choice> list = choiceService.findChoice(c);
			if(list==null || list.size()==0){
				// 无预约 OK的
			} else if(list.size()>3){
				// 限预约3次
				flag = "3";
			}else {
	
	
	@RequestMapping("deleteBook")
	public void delete(HttpServletRequest request,HttpServletResponse response){
		JSONObject result=new JSONObject();
		try {
			String[] ids=request.getParameter("ids").split(",");
			for (int i=0;i<ids.length;i++) {
				bookService.deleteBook(Integer.parseInt(ids[i]));
			}
			result.put("success", true);
			result.put("delNums", ids.length);
		} catch (Exception e) {
			e.printStackTrace();
			result.put("errorMsg", "对不起,删除失败");
		}
		WriterUtil.write(response, result.toString());
	}
	
	
	
	@RequestMapping("uploadCover")
	public void uploadPhoto(HttpServletRequest request,HttpServletResponse response,@RequestParam MultipartFile cover){
		String now = System.currentTimeMillis()+"";
		if (!cover.isEmpty()) {
			String filePath = request.getSession().getServletContext().getRealPath("/")+ "upload/book/" + now + ".jpg";
			try {
				cover.transferTo(new File(filePath));
				book.setCover("upload/book/" + now + ".jpg");
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		WriterUtil.write(response, "upload/book/" + now + ".jpg");
	}
	
	
	
	
	
	
}

			list.add(cv3);
			JSONArray array = new JSONArray();
			array.addAll(list);
			WriterUtil.write(response, array.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	// 阅览室
	@RequestMapping("roomCombo")
	public void roomCombo(HttpServletRequest request,HttpServletResponse response){
		try {
			List<Room> list = roomService.findRoom(new Room());
			JSONArray array = new JSONArray();
			array.addAll(list);
			WriterUtil.write(response, array.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	
	//查找自己的作为
	@RequestMapping("myselfSeat")
	public void myselfSeat(HttpServletRequest request,HttpServletResponse response){
		User currentUser = (User)request.getSession().getAttribute("currentUser");
		try {
			String date = request.getParameter("date");
			if(date==null || date.length()==0){
				date = (new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
			}
			String roomid = request.getParameter("roomid");
			if(roomid==null || roomid.length()==0){
				roomid = "1";
			} 
			String time = request.getParameter("time");
			if(time == null || time.length()==0){
				time = "08点-12点";
	private int rows;
	private Type type;
	@Autowired
	private TypeService<Type> typeService;

	@RequestMapping("typeIndex")
	public String index() {
		return "readingroom/type";
	}

	@RequestMapping("typeList")
	public void typeList(HttpServletRequest request,HttpServletResponse response) {
		try {
			page = Integer.parseInt(request.getParameter("page")); // 获取当前页
			rows = Integer.parseInt(request.getParameter("rows")); // 每页记录条数

			// 构造查询条件
			type = new Type();
			type.setPage((page - 1) * rows);
			type.setRows(rows);

			// 调用service层的查询方法查出记录和数量
			List<Type> list = typeService.findType(type);
			int total = typeService.countType(type);

			JSONObject jsonObj = new JSONObject();// new一个JSON
			jsonObj.put("total", total);// total代表一共有多少数据
			jsonObj.put("rows", list);// row是代表显示的页的数据
			WriterUtil.write(response, jsonObj.toString()); // 将上述Json输出,前台ajax接收
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	@RequestMapping("reserveType")
	public void reserve(HttpServletRequest request,HttpServletResponse response, Type type) {
		JSONObject result = new JSONObject(); // new一个json对象
		result.put("success", true);
		String id = request.getParameter("id");
		try {
			if (StringUtil.isNotEmpty(id)) { // 不为空,说明是修改操作
				type.setId(Integer.parseInt(id));
				typeService.updateType(type); // 调用service的修改方法
			} else { // 添加操作
				typeService.addType(type);
			}
		} catch (Exception e) {
			e.printStackTrace();
			result.put("errorMsg", "对不起,操作失败");
		}
		WriterUtil.write(response, result.toString());
	}

	@RequestMapping("deleteType")
	
	
	@RequestMapping("roleIndex")
	public String index(){
		return "sys/role";
	}
	
	@RequestMapping("roleList")
	public void userList(HttpServletRequest request,HttpServletResponse response){
		try {
			page = Integer.parseInt(request.getParameter("page"));//==null?1:Integer.parseInt(request.getParameter("page"));
			rows = Integer.parseInt(request.getParameter("rows"));//==null?10:Integer.parseInt(request.getParameter("rows"));
			role = new Role();
			role.setPage((page-1)*rows);
			role.setRows(rows);
			role.setRoleName(request.getParameter("roleName"));
			List<Role> list = findAllRole(role);
			int total = roleService.countRole(role);
			JSONObject jsonObj = new JSONObject();//new一个JSON
			jsonObj.put("total",total );//total代表一共有多少数据
			jsonObj.put("rows", list);//row是代表显示的页的数据
	        WriterUtil.write(response,jsonObj.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	private List<Role> findAllRole(Role role){
		try {
			return roleService.findRole(role);
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
	}
	
	@RequestMapping("roleCombobox")
	public void roleCombobox(HttpServletRequest request,HttpServletResponse response){
		try {
			JSONArray jsonArray=new JSONArray();
			List<Role> list = findAllRole(new Role());
			jsonArray.addAll(list);

@Controller
@RequestMapping("student")
public class StudentController {

	private int page;
	private int rows;
	private Student student;
	@Autowired
	private StudentService<Student> studentService;
	@Autowired
	private ScoreService<Score> scoreService;
	private Score score;
	private User user;
	@Autowired
	private UserService<User> userService;
	
	
	@RequestMapping("studentIndex")
	public String index(){
		return "info/student";
		try {
			String parentId=request.getParameter("parentId");
			String roleId=request.getParameter("roleId");
			role = roleService.findOneRole(Integer.parseInt(roleId));
			String menuIds = role.getMenuIds();
			String operationIds = role.getOperationIds();
			JSONArray jsonArray=getCheckedMenusByParentId(parentId, menuIds,operationIds);
			WriterUtil.write(response, jsonArray.toString());
			System.out.println(jsonArray.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	
	
	// 选中已有的角色
	public JSONArray getCheckedMenusByParentId(String parentId,String menuIds,String operationIds)throws Exception{
		JSONArray jsonArray=this.getCheckedMenuByParentId(parentId,menuIds,operationIds);
		for(int i=0;i<jsonArray.size();i++){
			JSONObject jsonObject=jsonArray.getJSONObject(i);
			if("open".equals(jsonObject.getString("state"))){
				continue;
			}else{
				jsonObject.put("children", getCheckedMenusByParentId(jsonObject.getString("id"),menuIds,operationIds));
			}
		}
		return jsonArray;
	}
	
	public JSONArray getCheckedMenuByParentId(String parentId,String menuIds,String operationIds)throws Exception{
		JSONArray jsonArray=new JSONArray();
		menu = new Menu();
		menu.setParentId(Integer.parseInt(parentId));
		List<Menu> list = menuService.findMenu(menu);
		for(Menu menu : list){
			JSONObject jsonObject = new JSONObject();
			int menuId = menu.getMenuId();
			jsonObject.put("id", menuId);
		 * 所以要求实体类的第一个属性都是serial*UID
		 */
		for (int i = 1; i < fields.length; i++) {    
			sb.append(fields[i].getName()+ "-->"+getFieldValueByName(fields[i].getName(), o)+"  ");
			/**infoMap = new HashMap();
			infoMap.put("type",fields[i].getType().toString());
			infoMap.put("name",fields[i].getName());
			infoMap.put("value", getFieldValueByName(fields[i].getName(), o));
			list.add(infoMap);*/
		}
		return sb.toString();
	}
	
	
	
    
	/**
	 * 通过反射
	 * 根据字段名称获取字段值
	 * @param fieldName
	 * @param o
	 * @return
	 */
	private static Object getFieldValueByName(String fieldName,Object o){
		try {
			String firstLetter = fieldName.substring(0, 1).toUpperCase();   //手写字母大写
			String getter = "get" + firstLetter + fieldName.substring(1);   // get方法
			Method method = o.getClass().getMethod(getter,new Class[]{});
			Object object = method.invoke(o, new Object[]{});
			return object;
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
	}
	
	
	
	/**
	 * 反射获得字段值
	 * @param o
	 * @return
	 */
	@SuppressWarnings("unused")
	private static String[] getFieldName(Object o){
		Field[] fields = o.getClass().getDeclaredFields();
		String[] fieldNames = new String[fields.length];
		for (int i = 0; i < fieldNames.length; i++) {
			fieldNames[i] = fields[i].getName();
		}
		return fieldNames;
	}
				jsonObject.put("iconCls", "");
				jsonObject.put("state", "open");
				if (StringUtil.isNotEmpty(operationIds)) {
					if (dingzhen.util.StringUtil.existStrArr(operationId+"", operationIds.split(","))) {
						jsonObject.put("checked", true);
					} 	
				}
				jsonArray.add(jsonObject);
			}
			return jsonArray;
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
	}
	
	
	
	
	
	@RequestMapping("updateRoleMenu")
	public void updateRoleMenu(HttpServletRequest request,HttpServletResponse response){
		JSONObject result = new JSONObject();
		try {
			String roleId = request.getParameter("roleId");
			String[] ids = request.getParameter("menuIds").split(",");
			String menuIds = "";
			String operationIds = "";
			/**
			 * 采用的方案是在菜单递归之后,再加上各菜单下的按钮
			 * 采用easyui的解析方式所以字段都用的是id和text。
			 * 为了区别两者,我们规定operationId自增从10000开始
			 * menuId从1开始,在上传过来的ids中是这样的形式
			 * 2,10000,3,4,7,10004,10006,45 这样的菜单ID和按钮ID的混合形式
			 * 所以通过与10000的比较来确定哪些是菜单的哪些是按钮的
			 * 
			 */
			for (int i = 0; i < ids.length; i++) {
				int id = Integer.parseInt(ids[i]);
				if (id>=10000) {

@Controller
@RequestMapping("teacher")
public class TeacherController {
	
	private int page;
	private int rows;
	private Teacher teacher;
	@Autowired
	private TeacherService<Teacher> teacherService;
	private User user;
	@Autowired
	private UserService<User> userService;
	
	@RequestMapping("teacherIndex")
	public String index(){
		return "info/teacher";
	}
	
	
	@RequestMapping("teacherList")
	public void teacherList(HttpServletRequest request,HttpServletResponse response){
		try {
			page = Integer.parseInt(request.getParameter("page"));   //获取当前页
			jsonObj.put("total", total);// total代表一共有多少数据
			jsonObj.put("rows", list);// row是代表显示的页的数据
			WriterUtil.write(response, jsonObj.toString()); // 将上述Json输出,前台ajax接收
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	@RequestMapping("reserveType")
	public void reserve(HttpServletRequest request,HttpServletResponse response, Type type) {
		JSONObject result = new JSONObject(); // new一个json对象
		result.put("success", true);
		String id = request.getParameter("id");
		try {
			if (StringUtil.isNotEmpty(id)) { // 不为空,说明是修改操作
				type.setId(Integer.parseInt(id));
				typeService.updateType(type); // 调用service的修改方法
			} else { // 添加操作
				typeService.addType(type);
			}
		} catch (Exception e) {
			e.printStackTrace();
			result.put("errorMsg", "对不起,操作失败");
		}
		WriterUtil.write(response, result.toString());
	}

	@RequestMapping("deleteType")
	public void deleteType(HttpServletRequest request,HttpServletResponse response) {
		JSONObject result = new JSONObject();
		try {
			String[] ids = request.getParameter("ids").split(",");
			for (String id : ids) {
				typeService.deleteType(Integer.parseInt(id));
			}
			result.put("success", true);
			result.put("delNums", ids.length);
		} catch (Exception e) {
			e.printStackTrace();
			result.put("errorMsg", "对不起,删除失败");
		}
		WriterUtil.write(response, result.toString());
	}

	@RequestMapping("comboList")
	public void comboList(HttpServletRequest request,HttpServletResponse response) {
		try {
			List<Type> list = typeService.findType(new Type());
			JSONArray array = new JSONArray();
			array.addAll(list);
			WriterUtil.write(response, array.toString());
		} catch (Exception e) {
			e.printStackTrace();
			int total = userService.countUser(user);
			JSONObject jsonObj = new JSONObject();//new一个JSON
			jsonObj.put("total",total );//total代表一共有多少数据
			jsonObj.put("rows", list);//row是代表显示的页的数据
	        WriterUtil.write(response,jsonObj.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	// 新增或修改
	@RequestMapping("reserveUser")
	public void reserveUser(HttpServletRequest request,User user,HttpServletResponse response){
		String userId = request.getParameter("userId");
		JSONObject result=new JSONObject();
		try {
			if (StringUtil.isNotEmpty(userId)) {   // userId不为空 说明是修改
				user.setUserId(Integer.parseInt(userId));
				userService.updateUser(user);
				result.put("success", true);
			}else {   // 添加
				if(userService.existUserWithUserName(user.getUserName())==null){  // 没有重复可以添加
					userService.addUser(user);
					result.put("success", true);
				} else {
					result.put("success", true);
					result.put("errorMsg", "该用户名被使用");
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
			result.put("success", true);
			result.put("errorMsg", "对不起,操作失败");
		}
		WriterUtil.write(response, result.toString());
	}
	
	
	@RequestMapping("deleteUser")
	public void delUser(HttpServletRequest request,HttpServletResponse response){
		JSONObject result=new JSONObject();
		try {
			String[] ids=request.getParameter("ids").split(",");
			for (String id : ids) {
				user = userService.findOneUser(Integer.parseInt(id));
				userService.deleteUser(Integer.parseInt(id));
			}
			result.put("success", true);
	private Operation operation;
	@Autowired
	private UserService<User> userService;
	@Autowired
	private RoleService<Role> roleService;
	private Map map;
	private Menu menu;
	@Autowired
	private MenuService<Menu> menuService;
	@Autowired
	private OperationService<Operation> operationService;
	
	
	
	@RequestMapping("roleIndex")
	public String index(){
		return "sys/role";
	}
	
	@RequestMapping("roleList")
	public void userList(HttpServletRequest request,HttpServletResponse response){
		try {
			page = Integer.parseInt(request.getParameter("page"));//==null?1:Integer.parseInt(request.getParameter("page"));
			rows = Integer.parseInt(request.getParameter("rows"));//==null?10:Integer.parseInt(request.getParameter("rows"));
			role = new Role();
			role.setPage((page-1)*rows);
			role.setRows(rows);
			role.setRoleName(request.getParameter("roleName"));
			List<Role> list = findAllRole(role);
			int total = roleService.countRole(role);
			JSONObject jsonObj = new JSONObject();//new一个JSON
			jsonObj.put("total",total );//total代表一共有多少数据
			jsonObj.put("rows", list);//row是代表显示的页的数据
	        WriterUtil.write(response,jsonObj.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	private List<Role> findAllRole(Role role){
		try {
			return roleService.findRole(role);
	
	//查找自己的作为
	@RequestMapping("myselfSeat")
	public void myselfSeat(HttpServletRequest request,HttpServletResponse response){
		User currentUser = (User)request.getSession().getAttribute("currentUser");
		try {
			String date = request.getParameter("date");
			if(date==null || date.length()==0){
				date = (new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
			}
			String roomid = request.getParameter("roomid");
			if(roomid==null || roomid.length()==0){
				roomid = "1";
			} 
			String time = request.getParameter("time");
			if(time == null || time.length()==0){
				time = "08点-12点";
			}
			Choice c = new Choice();
			c.setSeatkeyword(date + "-" +time + "-" +roomid);
			c.setStudentno(currentUser.getUserName());
			choice = choiceService.findOneChoice(c);
			if(choice == null){
				WriterUtil.write(response, "no");
			} else {
				WriterUtil.write(response, choice.getSeatkeyword());
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	
	// 保存选中座位
	@RequestMapping("saveSeat")
	public void saveSeat(HttpServletRequest request,HttpServletResponse response) {
		String keyword = request.getParameter("keyword");
		System.out.println("key---"+keyword);
		User currentUser = (User)request.getSession().getAttribute("currentUser");
		if(currentUser.getRoleId() == 1  || currentUser.getRoleId()==2){  //超管和教师不能选座
			WriterUtil.write(response, "对不起,该阅览室选座只对学生开放");
			return;
		}
		String studentno = currentUser.getUserName();
		String nowDateHour = new SimpleDateFormat("yyyy-MM-dd-HH").format(new Date());  //当前小时数
		String selectedDate = keyword.substring(0,13);  
		try {
			//判断信用积分
			score = scoreService.findOneScore(studentno);
			int myScore = score.getTotal();     //该学生分数
			
		return "info/student";
	}
	
	
	
	@RequestMapping("studentList")
	public void studentList(HttpServletRequest request,HttpServletResponse response) {
		try {
			page = Integer.parseInt(request.getParameter("page"));
			rows = Integer.parseInt(request.getParameter("rows"));
			student = new Student();
			if(request.getParameter("clazzid")!=null && request.getParameter("clazzid").length() > 0){
				student.setClazzid(Integer.parseInt(request.getParameter("clazzid")));
			}
			student.setName(request.getParameter("name"));
			student.setNo(request.getParameter("no"));
			student.setPage((page-1)*rows);
			student.setRows(rows);
			List<Student> list = studentService.findStudent(student);
			int total = studentService.countStudent(student);
			
			JSONObject jsonObj = new JSONObject();//new一个JSON
			jsonObj.put("total",total );//total代表一共有多少数据
			jsonObj.put("rows", list);//row是代表显示的页的数据
	        WriterUtil.write(response,jsonObj.toString()); //将上述Json输出,前台ajax接收
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	
	
	@RequestMapping("reserveStudent")
	public void reserveStudent(HttpServletRequest request,HttpServletResponse response,Student student) {
		String id = request.getParameter("id");
		JSONObject result = new JSONObject();
		result.put("success", true);
		try {
			if(StringUtil.isNotEmpty(id)){
				student.setId(Integer.parseInt(id));
				studentService.updateStudent(student);
			} else {
				studentService.addStudent(student);
				// 添加学生的时候同时添加默认的100信用分数
				score = new Score();
				score.setStudentname(student.getName());
				score.setStudentno(student.getNo());

@Controller
@RequestMapping("type")
public class TypeController {

	private int page;
	private int rows;
	private Type type;
	@Autowired
	private TypeService<Type> typeService;

	@RequestMapping("typeIndex")
	public String index() {
		return "readingroom/type";
	}

	@RequestMapping("typeList")
	public void typeList(HttpServletRequest request,HttpServletResponse response) {
		try {
			page = Integer.parseInt(request.getParameter("page")); // 获取当前页
			rows = Integer.parseInt(request.getParameter("rows")); // 每页记录条数

			// 构造查询条件
			type = new Type();
			type.setPage((page - 1) * rows);
			type.setRows(rows);

			// 调用service层的查询方法查出记录和数量
			List<Type> list = typeService.findType(type);
			int total = typeService.countType(type);

			JSONObject jsonObj = new JSONObject();// new一个JSON
			teacher.setPage((page-1)*rows);
			teacher.setRows(rows);
			teacher.setName(request.getParameter("name"));
			teacher.setNo(request.getParameter("no"));
			
			User currentUser = (User)request.getSession().getAttribute("currentUser");
			
			
			if(currentUser.getRoleId()==2){ //教师
				teacher.setNo(currentUser.getUserName());
			}
			
			// 调用service层的查询方法查出记录和数量
			List<Teacher> list = teacherService.findTeacher(teacher);  
			int total = teacherService.countTeacher(teacher);
			
			JSONObject jsonObj = new JSONObject();//new一个JSON
			jsonObj.put("total",total );//total代表一共有多少数据
			jsonObj.put("rows", list);//row是代表显示的页的数据
	        WriterUtil.write(response,jsonObj.toString()); //将上述Json输出,前台ajax接收
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	
	@RequestMapping("reserveTeacher")
	public void reserve(HttpServletRequest request,HttpServletResponse response,Teacher teacher) {
		JSONObject result = new JSONObject();    // new一个json对象
		result.put("success", true);
		String id = request.getParameter("id");
		try {
			if(StringUtil.isNotEmpty(id)){ //不为空,说明是修改操作
				teacher.setId(Integer.parseInt(id));
				teacherService.updateTeacher(teacher);  //调用service的修改方法
			} else {  //添加操作
				teacherService.addTeacher(teacher);
				//自动注册
				// 同时自动注册user表

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值