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






基于javaweb的SSM眼镜商城系统(java+ssm+jsp+jquery+mysql)
项目介绍
管理员角色包含以下功能: 管理员登录,管理员管理,管理商城会员,新闻公告管理,眼睛类型管理,城市信息管理,连锁配镜店管理,眼镜商品管理,用户订单管理,管理用户的评价信息等功能。
用户角色包含以下功能: 用户首页,查看站点公告,眼镜推荐,查看销售网络,用户登录,查看、评论商品、加入购物车,查看购物车,选择眼镜店信息,查看订单列表,修改个人信息等功能。
环境需要
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.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 6.数据库:MySql 5.7等版本均可;
技术栈
- 后端:Spring springmvc mybatis 2. 前端:JSP+css+javascript+jQuery
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2.使用IDEA/Eclipse/MyEclipse导入项目,配置tomcat 3. 将项目中springmvc-servlet.xml配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入http://localhost:8080/ 登录 用户账号/密码: user/123456 管理员账号/密码:admin/admin
——————————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
|
@Controller
@RequestMapping(value = "/city", produces = "text/plain;charset=utf-8") public class CityAction extends BaseAction { @Autowired @Resource private CityService cityService;
@RequestMapping("createCity.action") public String createCity() { return "admin/addcity"; }
@RequestMapping("addCity.action") public String addCity(City city) { this.cityService.insertCity(city); return "redirect:/city/createCity.action"; }
@RequestMapping("deleteCity.action") public String deleteCity(String id) { this.cityService.deleteCity(id); return "redirect:/city/getAllCity.action";
|
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 44 45 46 47 48
| @RequestMapping("addTopic.action") public String addTopic(Topic topic) { this.topicService.insertTopic(topic); return "redirect:/topic/createTopic.action"; }
@RequestMapping("deleteTopic.action") public String deleteTopic(String id) { this.topicService.deleteTopic(id); return "redirect:/topic/getAllTopic.action"; }
@RequestMapping("deleteTopicByIds.action") public String deleteTopicByIds() { String[] ids = this.getRequest().getParameterValues("topicid"); for (String topicid : ids) { this.topicService.deleteTopic(topicid); } return "redirect:/topic/getAllTopic.action"; }
@RequestMapping("updateTopic.action") public String updateTopic(Topic topic) { this.topicService.updateTopic(topic); return "redirect:/topic/getAllTopic.action"; }
@RequestMapping("getAllTopic.action") public String getAllTopic(String number) { List<Topic> topicList = this.topicService.getAllTopic(); PageHelper.getPage(topicList, "topic", null, null, 10, number, this.getRequest(), null); return "admin/listtopic"; }
@RequestMapping("queryTopicByCond.action") public String queryTopicByCond(String cond, String name, String number) { Topic topic = new Topic(); if(cond != null){ if ("username".equals(cond)) { topic.setUsername(name); } if ("jiancainame".equals(cond)) { topic.setJiancainame(name);
|
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 44 45
| buffer.append("页 "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("首页"); } else { buffer.append("<a href=\"index/showOrders.action?number=0\">首页</a>"); } buffer.append(" "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("上一页"); } else { buffer.append("<a href=\"index/showOrders.action?number=" + (Integer.parseInt(number) - 1) + "\">上一页</a>"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("下一页"); } else { buffer.append("<a href=\"index/showOrders.action?number=" + (Integer.parseInt(number) + 1) + "\">下一页</a>"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("尾页"); } else { buffer.append("<a href=\"index/showOrders.action?number=" + (maxPage - 1) + "\">尾页</a>"); } html = buffer.toString(); this.getRequest().setAttribute("html", html); this.getRequest().setAttribute("ordersList", ordersList); return "users/orderlist"; }
// 准备付款 @RequestMapping("prePay.action") public String prePay(String id) { this.front(); if (this.getSession().getAttribute("userid") == null) { return "redirect:/index/preLogin.action"; } this.getRequest().setAttribute("id", id); return "users/pay"; }
// 付款 @RequestMapping("pay.action") public String pay(String id) { this.front();
|
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 44 45 46 47
|
@Controller @RequestMapping("/upload") public class UploadAction {
@RequestMapping(value = "/image.action") public String upload(@RequestParam(value = "image", required = false) MultipartFile file, HttpServletRequest request, ModelMap model) { String path = request.getSession().getServletContext().getRealPath("/") + "upfiles/"; String fileName = file.getOriginalFilename(); int i = fileName.lastIndexOf("."); String name = String.valueOf(VeDate.getStringDatex()); String type = fileName.substring(i + 1); fileName = name + "." + type; File targetFile = new File(path, fileName); if (!targetFile.exists()) { targetFile.mkdirs(); }
try { file.transferTo(targetFile); } catch (Exception e) { e.printStackTrace(); } model.addAttribute("imageFileName", fileName); return "saveimage"; }
@RequestMapping(value = "/files.action") public String files(@RequestParam(value = "image", required = false) MultipartFile file, HttpServletRequest request, ModelMap model) { String path = request.getSession().getServletContext().getRealPath("/") + "upfiles/"; String fileName = file.getOriginalFilename(); int i = fileName.lastIndexOf("."); String name = String.valueOf(VeDate.getStringDatex()); String type = fileName.substring(i + 1); fileName = name + "." + type; File targetFile = new File(path, fileName); if (!targetFile.exists()) { targetFile.mkdirs(); }
try { file.transferTo(targetFile);
|
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 44 45 46 47 48 49 50 51
| if (usersList.size() == 0) { users.setRegdate(VeDate.getStringDateShort()); this.usersService.insertUsers(users); } else { this.getSession().setAttribute("message", "用户名已存在"); return "redirect:/index/preReg.action"; }
return "redirect:/index/preLogin.action"; }
@RequestMapping("exit.action") public String exit() { this.front(); this.getSession().removeAttribute("userid"); this.getSession().removeAttribute("username"); this.getSession().removeAttribute("users"); return "index"; }
@RequestMapping("prePwd.action") public String prePwd() { this.front(); if (this.getSession().getAttribute("userid") == null) { return "redirect:/index/preLogin.action"; } return "users/editpwd"; }
@RequestMapping("editpwd.action") public String editpwd() { this.front(); if (this.getSession().getAttribute("userid") == null) { return "redirect:/index/preLogin.action"; } String userid = (String) this.getSession().getAttribute("userid"); String password = this.getRequest().getParameter("password"); String repassword = this.getRequest().getParameter("repassword"); Users users = this.usersService.getUsersById(userid); if (password.equals(users.getPassword())) { users.setPassword(repassword); this.usersService.updateUsers(users); } else { this.getSession().setAttribute("message", "旧密码错误"); return "redirect:/index/prePwd.action"; } return "redirect:/index/prePwd.action"; }
|
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
| buffer.append("首页"); } else { buffer.append("<a href=\"" + name + "/" + action + "?number=0" + path + "\">首页</a>"); } buffer.append(" "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("上一页"); } else { buffer.append("<a href=\"" + name + "/" + action + "?number=" + (Integer.parseInt(number) - 1) + "" + path + "\">上一页</a>"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("下一页"); } else { buffer.append("<a href=\"" + name + "/" + action + "?number=" + (Integer.parseInt(number) + 1) + "" + path + "\">下一页</a>"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("尾页"); } else { buffer.append("<a href=\"" + name + "/" + action + "?number=" + (maxPage - 1) + "" + path + "\">尾页</a>"); } String html = buffer.toString(); request.setAttribute("html", html); request.setAttribute(name + "List", objList); }
} package com.action;
@Controller @RequestMapping("/upload") public class UploadAction {
@RequestMapping(value = "/image.action") public String upload(@RequestParam(value = "image", required = false) MultipartFile file, HttpServletRequest request, ModelMap model) {
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=071023501103200zn
https://javayms.pages.dev?id=071023501103200zn