——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明






基于javaweb的SSM+Maven图书进销存管理系统(java+ssm+jsp+bootstrap+mysql)
项目介绍
本系统是基于SSM和bootstrap进行开发的项目。主要也是为了完成学校的学习任务,整体可能没有那么完美,练练手倒还行。 该项目主要分为管理员与普通用户两种角色。 普通用户主要功能包括:图书查看、下订单、订单查看; 管理员主要功能包括:图书管理、订单管理、处理订单等;
环境需要
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 8.0版本; 6.是否Maven项目:是;
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+bootstrap
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;需要首先执行bookManager.sql,再执行insertBookData.sql; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中config.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入http://localhost:8080/manager/index.jsp 登录 注:Tomcat中配置项目路径必须为manager 管理员:Chris 密码:123456 普通用户:chris 密码:123
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| @Controller public class BookController { @Autowired private BookService bookService; @Autowired private StorageService storageService; @Autowired private ChangeBookService changeBookService; @RequestMapping(value = "/BookQuery") public String getSomeBooks(@RequestParam Map<String,Object> map, HttpSession httpSession){ List<Map<String,Object>> list = bookService.selectBookPageWhere(map); PageInfo<Map<String ,Object>> pageInfo = new PageInfo<Map<String,Object>>(); map.put("list",list); map.put("total",pageInfo.getTotal()); httpSession.setAttribute(SessionString.BOOK_LIST,list); Manager manager = (Manager) httpSession.getAttribute(SessionString.Manager_SESSION); if(manager != null){ return "/managerJsp/manager"; }else{ return "/userJsp/user"; } } @RequestMapping(value = "/BookAll") public String getAllBooks(@RequestParam Map<String,Object> map, HttpSession httpSession){ List<Map<String,Object>> list = bookService.selectAllBook(map); PageInfo<Map<String ,Object>> pageInfo = new PageInfo<Map<String,Object>>(); map.put("list",list); map.put("page",0); map.put("limit",0); map.put("total",pageInfo.getTotal()); httpSession.setAttribute(SessionString.BOOK_LIST,list); Manager manager = (Manager) httpSession.getAttribute(SessionString.Manager_SESSION);
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| HttpSession session = httpServletRequest.getSession(); User user = (User) session.getAttribute(SessionString.USER_SESSION); Manager manager = (Manager) session.getAttribute(SessionString.Manager_SESSION); if(user != null || manager != null){ return true; } httpServletRequest.setAttribute("msg","您还未登录,请先登录"); httpServletRequest.getRequestDispatcher("index.jsp").forward(httpServletRequest,httpServletResponse); return false; }
@Override public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
}
@Override public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
} } package controller;
@Controller public class ManagerController { @Autowired private ManagerService managerService; @RequestMapping(value = "/loginManager.action",method = RequestMethod.POST) public String login(String manager_name, String manager_password, HttpSession httpSession) { Manager manager = managerService.findManagerByNameAndPassword(manager_name,manager_password);
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
@Controller public class UserController { @Autowired private UserService userService;
@RequestMapping(value = "/userLogin.action",method = RequestMethod.POST) public String login( String username, String password, Model model, HttpSession httpSession){ User user = userService.findUserByNameAndPassword(username,password); if(user != null){ httpSession.setAttribute(SessionString.USER_SESSION,user); return "forward:/BookAll"; }else{ httpSession.setAttribute(SessionString.MSG,"账号或密码有误,请重新输入!"); return "userLogin"; } } @RequestMapping(value = "/userLogin.action",method = RequestMethod.GET) public String toLogin(){ return "userLogin"; } @RequestMapping(value = "/userRegister.action") public String register(User user,HttpSession httpSession){ int row = userService.addNewUser(user); if(row > 0){ httpSession.setAttribute(SessionString.MSG,"你已经注册成功可以进行登录!"); return "userLogin"; }else{ return "ok"; } }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| }else{ httpSession.setAttribute(SessionString.MSG,"账号或密码有误,请重新输入!"); return "userLogin"; } } @RequestMapping(value = "/userLogin.action",method = RequestMethod.GET) public String toLogin(){ return "userLogin"; } @RequestMapping(value = "/userRegister.action") public String register(User user,HttpSession httpSession){ int row = userService.addNewUser(user); if(row > 0){ httpSession.setAttribute(SessionString.MSG,"你已经注册成功可以进行登录!"); return "userLogin"; }else{ return "ok"; } } @RequestMapping(value = "/logoutUser.action") public String logout(HttpSession httpSession){ httpSession.invalidate(); return "userLogin"; } } package interceptor;
public class UserLoginInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| @RequestMapping(value = "/BookQuery") public String getSomeBooks(@RequestParam Map<String,Object> map, HttpSession httpSession){ List<Map<String,Object>> list = bookService.selectBookPageWhere(map); PageInfo<Map<String ,Object>> pageInfo = new PageInfo<Map<String,Object>>(); map.put("list",list); map.put("total",pageInfo.getTotal()); httpSession.setAttribute(SessionString.BOOK_LIST,list); Manager manager = (Manager) httpSession.getAttribute(SessionString.Manager_SESSION); if(manager != null){ return "/managerJsp/manager"; }else{ return "/userJsp/user"; } }
@RequestMapping(value = "/BookAll") public String getAllBooks(@RequestParam Map<String,Object> map, HttpSession httpSession){ List<Map<String,Object>> list = bookService.selectAllBook(map); PageInfo<Map<String ,Object>> pageInfo = new PageInfo<Map<String,Object>>(); map.put("list",list); map.put("page",0); map.put("limit",0); map.put("total",pageInfo.getTotal()); httpSession.setAttribute(SessionString.BOOK_LIST,list); Manager manager = (Manager) httpSession.getAttribute(SessionString.Manager_SESSION); if(manager != null){ return "/managerJsp/manager"; }else{ return "/userJsp/user"; } }
@RequestMapping("/book/getBookById") @ResponseBody public Book getBookById(Integer id){
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| Manager manager = (Manager) session.getAttribute(SessionString.Manager_SESSION); ChangeBook changeBook = new ChangeBook(); changeBook.setBook_id(book.getId()); changeBook.setManager_id(manager.getId()); Date date = new Date(); Timestamp timestamp = new Timestamp(date.getTime()); changeBook.setChange_time(timestamp); changeBook.setSituation(new BookChangeStuation().toStuation(book,method)); int rows_change = changeBookService.insertChange(changeBook); return rows_change > 0; } } package controller;
@Controller public class OrderController { @Autowired private OrderService orderService; @Autowired private DeliveryService deliveryService; @Autowired private StorageService storageService;
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=221122522008200oi
https://javayms.pages.dev?id=221122522008200oi