• Java项目:SSM网上超市购物商城管理系统


    作者主页:夜未央5788

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

    文末获取源码

    项目介绍

    本项目分为前后台,分为普通用户、管理员两种角色。前台普通用户登录,后台管理员登录;
    管理员角色包含以下功能:
    登录页面,用户查看,一级分类管理,二级分类管理,商品管理,查看订单,留言管理等功能。

    用户角色包含以下功能:

    用户首页,查看商品,用户注册,用户登录,加入购物车,提交订单,查看我的订单,留言板留言等功能。

    环境需要

    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+jQuery+Ajax

    使用说明

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

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

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

    3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置;

    4. 运行项目,输入localhost:8080/ 登录

    运行截图

    前台界面

     

     

     

     

     

     

     

     后台界面

     

     

     

     

     

     

    相关代码

    管理员控制器

    1. package com.shop.controller;
    2. import java.io.File;
    3. import java.util.Date;
    4. import java.util.List;
    5. //import javax.servlet.http.HttpServletRequest;
    6. import org.springframework.beans.factory.annotation.Autowired;
    7. import org.springframework.stereotype.Controller;
    8. import org.springframework.ui.Model;
    9. import org.springframework.web.bind.annotation.RequestMapping;
    10. import org.springframework.web.bind.annotation.RequestParam;
    11. import org.springframework.web.multipart.MultipartFile;
    12. import com.shop.Utils.PageBean;
    13. import com.shop.Utils.UUIDUtiils;
    14. import com.shop.po.Adminuser;
    15. import com.shop.po.Category;
    16. import com.shop.po.Categorysecond;
    17. import com.shop.po.Message;
    18. import com.shop.po.Orders;
    19. import com.shop.po.Product;
    20. import com.shop.po.User;
    21. import com.shop.service.CategorySecondService;
    22. import com.shop.service.CategoryService;
    23. import com.shop.service.MessageService;
    24. import com.shop.service.OrderService;
    25. import com.shop.service.ProductService;
    26. import com.shop.service.UserService;
    27. import javax.servlet.http.HttpServletRequest;
    28. @Controller
    29. public class AdminController {
    30. @Autowired
    31. private UserService userService;
    32. @Autowired
    33. public CategoryService categoryService;
    34. @Autowired
    35. public CategorySecondService categorySecondService;
    36. @Autowired
    37. public ProductService productService;
    38. @Autowired
    39. private OrderService orderService;
    40. @Autowired
    41. private MessageService messageService;
    42. @RequestMapping("/admin/admin_findAll")
    43. public String admin_findAll(Model model, HttpServletRequest request) throws Exception {
    44. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    45. if(adminuserLogin==null){
    46. request.getSession().setAttribute("message","对不起您还没有登录");
    47. return "admin/index";
    48. }
    49. List userList = userService.admin_findAll();
    50. model.addAttribute("userList", userList);
    51. return "admin/user/list";
    52. }
    53. @RequestMapping("/admin/adminCategory_findAll")
    54. public String adminCategory_findAll(Model model, HttpServletRequest request)
    55. throws Exception {
    56. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    57. if(adminuserLogin==null){
    58. request.getSession().setAttribute("message","对不起您还没有登录");
    59. return "admin/index";
    60. }
    61. List categoryList = categoryService.adminbFindCategory();
    62. /*for (Category category : categoryList) {
    63. System.out.println(category.getCname());
    64. }*/
    65. model.addAttribute("categoryList", categoryList);
    66. return "admin/category/list";
    67. }
    68. @RequestMapping("/admin/adminCategory_add")
    69. public String adminCategory_add(Model model,HttpServletRequest request) throws Exception {
    70. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    71. if(adminuserLogin==null){
    72. request.getSession().setAttribute("message","对不起您还没有登录");
    73. return "admin/index";
    74. }
    75. // List categoryList = categoryService.adminbFindCategory();
    76. // model.addAttribute("categoryList", categoryList);
    77. return "admin/category/add";
    78. }
    79. @RequestMapping("/admin/adminCategory_save")
    80. public String adminCategory_save(@RequestParam String cname,HttpServletRequest request)
    81. throws Exception {
    82. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    83. if(adminuserLogin==null){
    84. request.getSession().setAttribute("message","对不起您还没有登录");
    85. return "admin/index";
    86. }
    87. Category addCategory = new Category();
    88. addCategory.setCname(cname);
    89. categoryService.addCategory(addCategory);
    90. return "redirect:/admin/adminCategory_findAll.action";
    91. }
    92. @RequestMapping("/admin/adminCategory_edit")
    93. public String adminCategory_delete(@RequestParam int cid, Model model,HttpServletRequest request)
    94. throws Exception {
    95. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    96. if(adminuserLogin==null){
    97. request.getSession().setAttribute("message","对不起您还没有登录");
    98. return "admin/index";
    99. }
    100. Category existCategory = categoryService.findCategory(cid);
    101. model.addAttribute("existCategory", existCategory);
    102. return "admin/category/edit";
    103. }
    104. @RequestMapping("/admin/adminCategory_update")
    105. public String adminCategory_update(@RequestParam int cid,
    106. @RequestParam String cname,HttpServletRequest request) {
    107. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    108. if(adminuserLogin==null){
    109. request.getSession().setAttribute("message","对不起您还没有登录");
    110. return "admin/index";
    111. }
    112. Category category = new Category();
    113. category.setCid(cid);
    114. category.setCname(cname);
    115. categoryService.adminCategory_update(category);
    116. return "redirect:/admin/adminCategory_findAll.action";
    117. }
    118. @RequestMapping("/admin/adminCategory_delete")
    119. public String adminCategory_delete(@RequestParam int cid,HttpServletRequest request) throws Exception {
    120. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    121. if(adminuserLogin==null){
    122. request.getSession().setAttribute("message","对不起您还没有登录");
    123. return "admin/index";
    124. }
    125. categorySecondService.adminCategorySecond_deleteByCid(cid);
    126. categoryService.deleteCategoryByCid(cid);
    127. return "redirect:/admin/adminCategory_findAll.action";
    128. }
    129. // admin 的二级分类的管理
    130. @RequestMapping("/admin/adminCategorySecond_findAllByPage")
    131. public String adminCategorySecond_findAllByPage(@RequestParam int page,Model model,HttpServletRequest request) {
    132. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    133. if(adminuserLogin==null){
    134. request.getSession().setAttribute("message","对不起您还没有登录");
    135. return "admin/index";
    136. }
    137. PageBean csPageBean = categorySecondService
    138. .adminCategorySecond_findAllByPage(page);
    139. /*List list = csPageBean.getList();
    140. for (Categorysecond categorysecond : list) {
    141. System.out.println(categorysecond.getCsname());
    142. }*/
    143. model.addAttribute("csPageBean", csPageBean);
    144. return "admin/categorysecond/list";
    145. }
    146. @RequestMapping("admin/adminCategorySecond_addPage")
    147. public String adminCategorySecond_addPage(Model model,HttpServletRequest request) throws Exception{
    148. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    149. if(adminuserLogin==null){
    150. request.getSession().setAttribute("message","对不起您还没有登录");
    151. return "admin/index";
    152. }
    153. List categoryList = categoryService.adminbFindCategory();
    154. model.addAttribute("categoryList", categoryList);
    155. return "admin/categorysecond/add";
    156. }
    157. @RequestMapping("admin/adminCategorySecond_save")
    158. public String adminCategorySecond_save(@RequestParam String csname,@RequestParam int cid,HttpServletRequest request) throws Exception{
    159. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    160. if(adminuserLogin==null){
    161. request.getSession().setAttribute("message","对不起您还没有登录");
    162. return "admin/index";
    163. }
    164. Categorysecond categorysecond = new Categorysecond();
    165. categorysecond.setCsname(csname);
    166. categorysecond.setCid(cid);
    167. categorySecondService.adminCategorySecond_save(categorysecond);
    168. return "redirect:/admin/adminCategorySecond_findAllByPage.action?page=1";
    169. }
    170. @RequestMapping("admin/adminCategorySecond_edit")
    171. public String adminCategorySecond_edit(@RequestParam int csid,Model model,HttpServletRequest request) throws Exception{
    172. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    173. if(adminuserLogin==null){
    174. request.getSession().setAttribute("message","对不起您还没有登录");
    175. return "admin/index";
    176. }
    177. Categorysecond findByCsid = categorySecondService.findByCsid(csid);
    178. model.addAttribute("findByCsid", findByCsid);
    179. return "admin/categorysecond/edit";
    180. }
    181. @RequestMapping("admin/adminCategorySecond_update")
    182. public String adminCategorySecond_update(@RequestParam String csname,@RequestParam int csid,HttpServletRequest request){
    183. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    184. if(adminuserLogin==null){
    185. request.getSession().setAttribute("message","对不起您还没有登录");
    186. return "admin/index";
    187. }
    188. Categorysecond categorysecond = new Categorysecond();
    189. categorysecond.setCsname(csname);
    190. categorysecond.setCsid(csid);
    191. categorySecondService.adminCategorySecond_update(categorysecond);
    192. return "redirect:/admin/adminCategorySecond_findAllByPage.action?page=1";
    193. }
    194. @RequestMapping("admin/adminCategorySecond_delete")
    195. public String adminCategorySecond_delete(@RequestParam int csid,HttpServletRequest request) throws Exception{
    196. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    197. if(adminuserLogin==null){
    198. request.getSession().setAttribute("message","对不起您还没有登录");
    199. return "admin/index";
    200. }
    201. categorySecondService.adminCategorySecond_delete(csid);
    202. return "redirect:/admin/adminCategorySecond_findAllByPage.action?page=1";
    203. }
    204. //admin的商品管理
    205. @RequestMapping("/admin/adminProduct_findAllByPage")
    206. public String adminProduct_findAllByPage(@RequestParam int page, Model model,HttpServletRequest request)
    207. throws Exception {
    208. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    209. if(adminuserLogin==null){
    210. request.getSession().setAttribute("message","对不起您还没有登录");
    211. return "admin/index";
    212. }
    213. PageBean allProPageBean = productService.findAllProduct(page);
    214. model.addAttribute("allProPageBean", allProPageBean);
    215. return "admin/product/list";
    216. }
    217. @RequestMapping("/admin/adminProduct_addPage")
    218. public String adminProduct_addPage(Model model,HttpServletRequest request) throws Exception {
    219. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    220. if(adminuserLogin==null){
    221. request.getSession().setAttribute("message","对不起您还没有登录");
    222. return "admin/index";
    223. }
    224. //查询出所有的二级分类
    225. List cslist = categorySecondService.findAll();
    226. /*for (Categorysecond categorysecond : cslist) {
    227. System.out.println(categorysecond.getCsname());
    228. }*/
    229. model.addAttribute("cslist", cslist);
    230. return "admin/product/add";
    231. }
    232. @RequestMapping("/admin/adminProduct_save")
    233. public String adminProduct_save(Product product,HttpServletRequest request,MultipartFile file) throws Exception {
    234. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    235. if(adminuserLogin==null){
    236. request.getSession().setAttribute("message","对不起您还没有登录");
    237. return "admin/index";
    238. }
    239. product.setPdate(new Date());
    240. // 上传图片
    241. if (file != null) {
    242. String path = request.getServletContext().getRealPath(
    243. "/products");
    244. String uploadFileName = file.getOriginalFilename();
    245. String fileName = UUIDUtiils.getUUID()+uploadFileName;
    246. File diskFile = new File(path + "//" + fileName);
    247. file.transferTo(diskFile);
    248. product.setImage("products/" + fileName);
    249. }
    250. System.out.println(product.getImage());
    251. productService.adminProduct_save(product);
    252. return "redirect:/admin/adminProduct_findAllByPage.action?page=1";
    253. }
    254. @RequestMapping("admin/adminProduct_deletecs")
    255. public String adminProduct_deletecs(@RequestParam int pid,HttpServletRequest request) throws Exception{
    256. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    257. if(adminuserLogin==null){
    258. request.getSession().setAttribute("message","对不起您还没有登录");
    259. return "admin/index";
    260. }
    261. productService.adminProduct_deletecs(pid);
    262. return "redirect:/admin/adminProduct_findAllByPage.action?page=1";
    263. }
    264. /**
    265. * 编辑商品
    266. *
    267. * @param pid
    268. * @param model
    269. * @param request
    270. * @return
    271. * @throws Exception
    272. */
    273. @RequestMapping("admin/adminProduct_edit")
    274. public String adminProduct_edit(@RequestParam int pid,Model model,HttpServletRequest request) throws Exception{
    275. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    276. if(adminuserLogin==null){
    277. request.getSession().setAttribute("message","对不起您还没有登录");
    278. return "admin/index";
    279. }
    280. Product product = productService.finbProductByPid(pid);
    281. model.addAttribute("findByPid", product);
    282. //查询出所有的二级分类
    283. List cslist = categorySecondService.findAll();
    284. model.addAttribute("cslist", cslist);
    285. return "admin/product/edit";
    286. }
    287. @RequestMapping("/admin/adminProduct_update")
    288. public String adminProduct_update(Product product,HttpServletRequest request,MultipartFile file) throws Exception {
    289. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    290. if(adminuserLogin==null){
    291. request.getSession().setAttribute("message","对不起您还没有登录");
    292. return "admin/index";
    293. }
    294. product.setPdate(new Date());
    295. // 上传图片
    296. if (file != null) {
    297. String path = request.getServletContext().getRealPath(
    298. "/products");
    299. String uploadFileName = file.getOriginalFilename();
    300. String fileName = UUIDUtiils.getUUID()+uploadFileName;
    301. File diskFile = new File(path + "//" + fileName);
    302. file.transferTo(diskFile);
    303. product.setImage("products/" + fileName);
    304. }
    305. productService.adminProduct_update(product);
    306. return "redirect:/admin/adminProduct_findAllByPage.action?page=1";
    307. }
    308. /** 订单管理模块 **/
    309. @RequestMapping("/admin/adminOrder_findAllByPage")
    310. public String adminOrder_findAllByPage(@RequestParam int page, Model model,HttpServletRequest request)
    311. throws Exception {
    312. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    313. if(adminuserLogin==null){
    314. request.getSession().setAttribute("message","对不起您还没有登录");
    315. return "admin/index";
    316. }
    317. PageBean allProPageBean = orderService.findAllOrderByStateAndPage(page);
    318. model.addAttribute("pageBean", allProPageBean);
    319. return "admin/order/list";
    320. }
    321. //adminOrder_findByState
    322. @RequestMapping("/admin/adminOrder_findByState")
    323. public String adminOrder_findByState(@RequestParam int page,@RequestParam int state, Model model,HttpServletRequest request)
    324. throws Exception {
    325. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    326. if(adminuserLogin==null){
    327. request.getSession().setAttribute("message","对不起您还没有登录");
    328. return "admin/index";
    329. }
    330. PageBean allProPageBean = orderService.findAllOrderByStateAndPage(state,page);
    331. model.addAttribute("pageBean", allProPageBean);
    332. return "admin/order/list";
    333. }
    334. //订单详情
    335. //adminOrder_findOrderItem
    336. @RequestMapping("/admin/adminOrder_findOrderItem")
    337. public String adminOrder_findOrderItem(@RequestParam int oid, Model model,HttpServletRequest request)
    338. throws Exception {
    339. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    340. if(adminuserLogin==null){
    341. request.getSession().setAttribute("message","对不起您还没有登录");
    342. return "admin/index";
    343. }
    344. Orders orderItems = orderService.findOrderByOid(oid);
    345. model.addAttribute("orderItems", orderItems);
    346. return "admin/order/list";
    347. }
    348. //更新订单状态
    349. @RequestMapping("/admin/adminOrder_updateState")
    350. public String adminOrder_updateState(@RequestParam int oid, @RequestParam int status, Model model,HttpServletRequest request)
    351. throws Exception {
    352. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    353. if(adminuserLogin==null){
    354. request.getSession().setAttribute("message","对不起您还没有登录");
    355. return "admin/index";
    356. }
    357. orderService.updateOrderStatus(oid, status);
    358. return "redirect:/admin/adminOrder_findAllByPage.action?page=1";
    359. }
    360. //后台留言管理
    361. @RequestMapping("/admin/adminMessage_findAllByPage")
    362. public String adminMessage_findAllByPage(@RequestParam int page, Model model,HttpServletRequest request)
    363. throws Exception {
    364. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    365. if(adminuserLogin==null){
    366. request.getSession().setAttribute("message","对不起您还没有登录");
    367. return "admin/index";
    368. }
    369. PageBean pageBean = messageService.findAllMessageByPage(page);
    370. model.addAttribute("pageBean", pageBean);
    371. return "admin/message/list";
    372. }
    373. @RequestMapping("/admin/adminMessage_delete")
    374. public String adminOrder_updateState(@RequestParam int messageid, Model model,HttpServletRequest request)
    375. throws Exception {
    376. Adminuser adminuserLogin = (Adminuser) request.getSession().getAttribute("adminuserLogin");
    377. if(adminuserLogin==null){
    378. request.getSession().setAttribute("message","对不起您还没有登录");
    379. return "admin/index";
    380. }
    381. messageService.deleteMessage(messageid);
    382. return "redirect:/admin/adminMessage_findAllByPage.action?page=1";
    383. }
    384. }

    分类控制器

    1. package com.shop.controller;
    2. import javax.servlet.http.HttpServletRequest;
    3. import org.springframework.beans.factory.annotation.Autowired;
    4. import org.springframework.stereotype.Controller;
    5. import org.springframework.ui.Model;
    6. import org.springframework.web.bind.annotation.RequestMapping;
    7. import org.springframework.web.bind.annotation.RequestParam;
    8. import com.shop.po.Cart;
    9. import com.shop.po.CartItem;
    10. import com.shop.po.Product;
    11. import com.shop.po.User;
    12. import com.shop.service.ProductService;
    13. @Controller
    14. public class cartController {
    15. @Autowired
    16. private ProductService productService;
    17. // 添加到购物车
    18. @RequestMapping("/addCart")
    19. public String addCart(HttpServletRequest request,@RequestParam int pid,@RequestParam int count ,Model model){
    20. Product product = productService.finbProductByPid(pid);
    21. // 存进一个购物项
    22. CartItem cartItem = new CartItem();
    23. cartItem.setCount(count);
    24. cartItem.setProduct(product);
    25. cartItem.setSubtotle(count*product.getShopPrice());
    26. // 存进购物车
    27. Cart cart=getCart(request);
    28. cart.addCart(cartItem);
    29. return "cart";
    30. }
    31. // 查看我的购物车
    32. @RequestMapping("/myCart")
    33. public String myCart(HttpServletRequest request,Model model){
    34. User loginUser = (User) request.getSession().getAttribute("loginUser");
    35. if (loginUser == null) {
    36. model.addAttribute("message","您还没有登录!");
    37. return "msg";
    38. }
    39. return "cart";
    40. }
    41. // 清空购物车
    42. @RequestMapping("/clearCart")
    43. public String clearCart(HttpServletRequest request){
    44. Cart cart=getCart(request);
    45. cart.clearCart();
    46. return "redirect:myCart.action";
    47. }
    48. // 删除某个购物项
    49. @RequestMapping("/delProFromCart")
    50. public String delProFromCart(@RequestParam int pid,HttpServletRequest request){
    51. Cart cart=getCart(request);
    52. cart.delProFromCart(pid);
    53. return "redirect:myCart.action";
    54. }
    55. public Cart getCart(HttpServletRequest request) {
    56. Cart cart = (Cart) request.getSession().getAttribute("cart");
    57. if (cart == null) {
    58. cart = new Cart();
    59. request.getSession().setAttribute("cart", cart);
    60. }
    61. return cart;
    62. }
    63. }

    首页控制器

    1. package com.shop.controller;
    2. import java.util.ArrayList;
    3. import java.util.List;
    4. import javax.servlet.http.HttpServletRequest;
    5. import org.springframework.beans.factory.annotation.Autowired;
    6. import org.springframework.stereotype.Controller;
    7. import org.springframework.ui.Model;
    8. import org.springframework.web.bind.annotation.RequestMapping;
    9. import org.springframework.web.bind.annotation.RequestParam;
    10. import com.shop.po.Category;
    11. import com.shop.po.Product;
    12. import com.shop.service.CategoryService;
    13. import com.shop.service.ProductService;
    14. @Controller
    15. public class indexController {
    16. @Autowired
    17. private CategoryService categoryService;
    18. @Autowired
    19. private ProductService productService;
    20. @RequestMapping("/index")
    21. public String index(Model model,HttpServletRequest request) throws Exception {
    22. //查询一级分类
    23. List cList = categoryService.findCategory();
    24. request.getSession().getServletContext().setAttribute("cList",cList);
    25. // model.addAttribute("cList", cList);
    26. //查询热门商品
    27. List hList= productService.findHotProduct();
    28. model.addAttribute("hList", hList);
    29. //查询最新商品
    30. List nList = productService.findNewProduct();
    31. model.addAttribute("nList", nList);
    32. //滚动图片专用,最多显示3个商品
    33. List sList;
    34. if(hList.size()>3)
    35. {
    36. sList = new ArrayList();
    37. sList.add(hList.get(0));
    38. sList.add(hList.get(1));
    39. sList.add(hList.get(2));
    40. model.addAttribute("sList", sList);
    41. }
    42. else
    43. {
    44. model.addAttribute("sList", hList);
    45. }
    46. return "index";
    47. }
    48. @RequestMapping("/about")
    49. public String about(Model model,HttpServletRequest request) throws Exception {
    50. return "about";
    51. }
    52. @RequestMapping("/contact")
    53. public String contact(Model model,HttpServletRequest request) throws Exception {
    54. return "contact";
    55. }
    56. @RequestMapping("/delivery")
    57. public String delivery(Model model,HttpServletRequest request) throws Exception {
    58. return "delivery";
    59. }
    60. //
    61. @RequestMapping("/searchProduct")
    62. public String searchProduct(@RequestParam String condition,Model model,HttpServletRequest request) throws Exception {
    63. //查询一级分类
    64. List cList = categoryService.findCategory();
    65. request.getSession().getServletContext().setAttribute("cList",cList);
    66. //查询商品
    67. List hList= productService.findHotProduct();
    68. model.addAttribute("hList", hList);
    69. //搜索商品
    70. List srList = productService.searchProduct(condition);
    71. model.addAttribute("srList", srList);
    72. //滚动图片专用,最多显示3个商品
    73. List sList;
    74. if(hList.size()>3)
    75. {
    76. sList = new ArrayList();
    77. sList.add(hList.get(0));
    78. sList.add(hList.get(1));
    79. sList.add(hList.get(2));
    80. model.addAttribute("sList", sList);
    81. }
    82. else
    83. {
    84. model.addAttribute("sList", hList);
    85. }
    86. return "searchProduct";
    87. }
    88. }

    登录控制器

    1. package com.shop.controller;
    2. import javax.servlet.http.HttpServletRequest;
    3. import javax.servlet.http.HttpServletResponse;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Controller;
    6. import org.springframework.ui.Model;
    7. import org.springframework.web.bind.annotation.RequestMapping;
    8. import org.springframework.web.bind.annotation.RequestParam;
    9. import com.shop.exception.zdyException;
    10. import com.shop.po.Adminuser;
    11. import com.shop.po.User;
    12. import com.shop.service.UserService;
    13. @Controller
    14. public class loginController {
    15. @Autowired
    16. private UserService userService;
    17. @RequestMapping("login")
    18. public String login() {
    19. return "login";
    20. }
    21. // 用户登录
    22. @RequestMapping("/userLogin")
    23. public String userLogin(HttpServletRequest request,
    24. @RequestParam String checkImg, User user, Model model)
    25. throws zdyException, Exception {
    26. String sessionCode = (String) request.getSession().getAttribute(
    27. "checkcode");
    28. if (!sessionCode.equalsIgnoreCase(checkImg)) {
    29. //model.addAttribute("message", "验证码输入错误请重新注册");
    30. //throw new zdyException("验证码输入错误请重新注册");
    31. request.getSession().setAttribute("message", "验证码输入错误请重新注册");
    32. return "redirect:login.action";
    33. }
    34. User loginUser = userService.loginFindByUnameAndPwd(user.getUsername(),
    35. user.getPassword());
    36. if (loginUser == null) {
    37. //model.addAttribute("message", "密码输入错误请重新登陆");
    38. request.getSession().setAttribute("message", "密码输入错误请重新登陆");
    39. //throw new zdyException("密码输入错误请重新登陆");
    40. return "redirect:login.action";
    41. }
    42. request.getSession().setAttribute("loginUser", loginUser);
    43. request.getSession().removeAttribute("message");
    44. return "redirect:index.action";
    45. }
    46. // 用户退出
    47. @RequestMapping("userLogout")
    48. public String userLogout(HttpServletRequest request,
    49. HttpServletResponse response, Model model) {
    50. request.getSession().removeAttribute("loginUser");
    51. response.setHeader("content-type", "text/html;charset=UTF-8");
    52. response.setHeader("refresh", "5;url=/shop/index.action");
    53. model.addAttribute("message", "退出成功,系统将在5秒之后跳转到首页......");
    54. return "msg";
    55. }
    56. //进入管理员页面
    57. @RequestMapping("/admin")
    58. public String AdminIndex(){
    59. return "admin/index";
    60. }
    61. //admin/adminUser_login.action
    62. //adminUser_login管理员登录
    63. @RequestMapping("/admin/adminUser_login")
    64. public String adminUser_login(HttpServletRequest request,Model model,@RequestParam String username,@RequestParam String password) throws Exception{
    65. Adminuser adminuserLogin = userService.adminUser_login(username,password);
    66. System.out.println(username);
    67. System.out.println(password);
    68. if(adminuserLogin == null){
    69. model.addAttribute("message", "改用户未被授予管理员身份!");
    70. return "admin/index";
    71. }
    72. request.getSession().setAttribute("adminuserLogin", adminuserLogin);
    73. // model.addAttribute("adminuserLogin", adminuserLogin);
    74. return "admin/home";
    75. }
    76. }

    留言控制器

    1. package com.shop.controller;
    2. import java.util.Date;
    3. import javax.servlet.http.HttpServletRequest;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Controller;
    6. import org.springframework.ui.Model;
    7. import org.springframework.web.bind.annotation.RequestMapping;
    8. import org.springframework.web.bind.annotation.RequestParam;
    9. import com.shop.Utils.PageBean;
    10. import com.shop.po.Message;
    11. import com.shop.po.User;
    12. import com.shop.service.MessageService;
    13. @Controller
    14. public class messageController {
    15. @Autowired
    16. private MessageService messageService;
    17. @RequestMapping("/saveMessage")
    18. public String saveMessage(@RequestParam String messageinfo,HttpServletRequest request,Model model) throws Exception {
    19. Message Message = new Message();
    20. User loginUser = (User) request.getSession().getAttribute("loginUser");
    21. if(loginUser==null){
    22. model.addAttribute("message", "对不起您还没有登录");
    23. return "msg";
    24. }
    25. java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    26. Message.setMessage(messageinfo);
    27. Message.setUid(loginUser.getUid());
    28. Message.setMessagedate(sdf.format(new Date()));
    29. messageService.insertMessage(Message);
    30. request.getSession().setAttribute("Message", Message);
    31. return "redirect:/messageList.action?page=1";
    32. }
    33. // 显示留言板全部留言
    34. @RequestMapping("/messageList")
    35. public String messageList(@RequestParam int page, Model model,
    36. HttpServletRequest request) throws Exception {
    37. PageBean pageBean = messageService.findAllMessageByPage(page);
    38. model.addAttribute("pageBean", pageBean);
    39. return "messageList";
    40. }
    41. }

    如果也想学习本系统,下面领取。回复:184ssm 

  • 相关阅读:
    Azuki NFT 概览与数据分析
    java日志框架之JCL和SLF4J
    队列及其Java实现
    数仓范式建模、ER实体建模和维度建模
    Cmake升级与软链接
    【RuoYi-Vue-Plus】问题笔记 05 - V3.5.0 Maven 打包导致文件损坏问题
    Python | mkvirtualenv命令改变虚拟环境存储位置
    css中filter属性设置后导致页面定位失效
    在Win11上部署ChatGLM3详细步骤
    图论-图的深度优先遍历-Java
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/126394932