IDEA+Java+SSM+Jsp+Mysql实现Web商品信息管理系统
目录
一、系统介绍
1.开发环境
2.技术选型
3.系统功能
4.数据库文件
5.工程截图
二、系统展示
1.系统注册
2.系统登录
3.系统主页
4.查询商品
5.添加商品
6.修改商品
三、部分代码
ItemsController
UserController
ItemsDaoMapper
ItemsDaoMapper.xml
UserMapper
UserMapper.xml
fail.jsp
showItems.jsp
success.jsp
upd.jsp
四、其他
1.更多系统
Java+JSP系统系列实现
Java+Servlet系统系列实现
Java+SSM系统系列实现
Java+SSH系统系列实现
Java+Springboot系统系列实现
2.源码下载
3.运行项目
4.备注
5.支持博主
一、系统介绍
1.开发环境
开发工具:IDEA2018
JDK版本:Jdk1.8
Mysql版本:8.0.13
2.技术选型
Java+SSM+Bootstrap+Jsp+Mysql
3.系统功能
1.登录系统,注册系统。
2.管理员商品信息的增删改查,包含图片上传功能。
图片上传位置:out\artifacts\Commodity_war_exploded\upload
4.数据库文件
/* Navicat Premium Data Transfer Source Server : MySQL Source Server Type : MySQL Source Server Version : 80013 Source Host : 127.0.0.1:3306 Source Schema : ssm_commodity Target Server Type : MySQL Target Server Version : 80013 File Encoding : 65001 Date: 13/03/2022 23:02:18*/SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for items-- ----------------------------DROP TABLE IF EXISTS `items`;CREATE TABLE `items` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '商品名称', `price` float(10, 1) NOT NULL COMMENT '商品定价', `detail` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '商品描述', `pic` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品图片', `createtime` datetime(0) NOT NULL COMMENT '生产日期', PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 22 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;-- ------------------------------ Records of items-- ----------------------------INSERT INTO `items` VALUES (19, '辣条', 2.0, '卫龙辣条', '36e2f94e-a707-4021-98e3-fdb071091198.jpg', '2022-03-12 16:00:00');INSERT INTO `items` VALUES (20, '薯片', 3.0, '乐事薯片', 'c165ca56-6a25-4bb0-b1ab-d51cedfa12d4.jpg', '2022-02-27 16:00:00');INSERT INTO `items` VALUES (21, '冰红茶', 5.0, '康师傅冰红茶', '91eddeee-809a-4c99-8d9c-a8697024befa.jpg', '2022-03-12 16:00:00');INSERT INTO `items` VALUES (22, '方便面', 5.0, '康师傅红烧牛肉面', 'd39ea554-7d6c-41b2-8a10-5e55d4ce69f0.jpg', '2022-03-12 16:00:00');INSERT INTO `items` VALUES (23, '雪糕', 2.0, '乐山雪糕', 'c2a8330d-d481-423f-b3b4-3c3c9b56d5b5.jpg', '2022-03-12 16:00:00');INSERT INTO `items` VALUES (24, '牛奶', 5.0, '蒙牛牛奶', '6cf59ac5-be74-4fc0-8ea6-892492bc542f.jpg', '2022-03-12 16:00:00');-- ------------------------------ Table structure for user-- ----------------------------DROP TABLE IF EXISTS `user`;CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名称', `password` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码', `birthday` date NULL DEFAULT NULL COMMENT '注册日期', `sex` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别,\"男\"“女”', `address` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '地址', PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;-- ------------------------------ Records of user-- ----------------------------INSERT INTO `user` VALUES (1, 'admin', 'admin', '2022-03-13', '1', '湖北武汉');INSERT INTO `user` VALUES (7, 'user', 'user', '2022-12-28', '1', '湖南长沙');SET FOREIGN_KEY_CHECKS = 1;
5.工程截图
二、系统展示
1.系统注册
2.系统登录
3.系统主页
4.查询商品
5.添加商品
6.修改商品
三、部分代码
ItemsController
商品增删改查的逻辑控制层
package com.sjsq.controller;import java.io.File;import java.io.IOException;import java.util.List;import java.util.UUID;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile;import com.sjsq.service.ItemsService;import com.sjsq.entity.Items;import com.github.pagehelper.PageHelper;import com.github.pagehelper.PageInfo;/** *@class_name:ItemsController *@param: 6.controller控制层 *@return: 实现业务逻辑控制 *@author:sjsq *@createtime:2022年2月22日 */@Controller@RequestMapping("/items")public class ItemsController {@Autowiredprivate ItemsService itemsService;//分页查询数据@RequestMapping("/queryItems")public String queryItems(@RequestParam(value="pn",defaultValue="1")Integer pn,Model model){//1.引入分页插件,pn是第几页,5是每页显示多少行PageHelper.startPage(pn,5);//2.紧跟的查询就是一个分页查询Listlist =itemsService.findAll();//3.使用PageInfo包装查询后的结果,5是连续显示的条数PageInfo pageInfo =new PageInfo(list,5);//4.使用model设置到前端model.addAttribute("pageInfo",pageInfo);model.addAttribute("test","呵呵");//5.最后设置返回的jspreturn "showItems";}//分页查询数据@RequestMapping("/querySomeItems")public String querySomeItems(@RequestParam(value="pn",defaultValue="1")Integer pn,@RequestParam(value = "commodityname",required = false) String commodityname, Model model){//1.引入分页插件,pn是第几页,5是每页显示多少行PageHelper.startPage(pn,5); System.out.println(commodityname);//2.紧跟的查询就是一个分页查询Listlist =itemsService.findSome(commodityname);//3.使用PageInfo包装查询后的结果,5是连续显示的条数PageInfo pageInfo =new PageInfo(list,5);//4.使用model设置到前端model.addAttribute("pageInfo",pageInfo);//5.最后设置返回的jspreturn "showItems";}// 添加商品@RequestMapping("/addItems")public String addItems(Items items,MultipartFile items_pic,HttpServletRequest request,HttpServletResponse response) throws IllegalStateException, IOException{//设置图片上传的路径String path =request.getServletContext().getRealPath("/upload");System.out.println("上传路径是:" + path);// 获取图片文件名String pic_name = items_pic.getOriginalFilename();System.out.println("原文件名是:" + pic_name);// 为了防止上传同名图片导致覆盖文件,引入随机数UUID解决。String newname = UUID.randomUUID().toString() + pic_name.substring(pic_name.lastIndexOf("."));System.out.println("新文件名是:" + newname);// 创建文件流对象picfileFile picFile = new File(path, newname);System.out.println("文件流为:" + picFile);// 如果不存在则创建if (!picFile.exists()) {picFile.mkdirs();}items_pic.transferTo(picFile);items.setPic(newname);// 添加进去itemsService.add(items);// 内部转发return "redirect:queryItems.action";}//删除商品@RequestMapping("/del")public String del(int id){itemsService.del(id);return "redirect:queryItems.action";}//查询单条记录@RequestMapping("/findOne")public String findOne(Model model,int id){Items items = itemsService.findOne(id);model.addAttribute("items", items);//返给更新的方法return "upd";}//修改数据@RequestMapping("/upd")public String upd(Items items,MultipartFile items_pic1,HttpServletRequest request) throws IllegalStateException, IOException{//拿到单条数据items.setPic(itemsService.findOne(items.getId()).getPic());// 拿到该条数据的图片路径和名字String path = request.getServletContext().getRealPath("/upload");String pic_name = items_pic1.getOriginalFilename();//修改以后做新判断if (items_pic1 != null && pic_name != null && pic_name.length() > 0) {String newname = UUID.randomUUID().toString() + pic_name.substring(pic_name.lastIndexOf("."));File picFile = new File(path, newname);//文件夹不存在就创建 if (!picFile.exists()) {picFile.mkdirs();}items_pic1.transferTo(picFile);items.setPic(newname);}//修改完成以后调用更新方法itemsService.upd(items);return "redirect:queryItems.action";}}
UserController
用户登录注册注销逻辑控制层
package com.sjsq.controller;import javax.servlet.http.HttpSession;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import com.sjsq.service.UserService;import com.sjsq.entity.User;/** * @class_name:UserController * @param:6.控制层controller * @return: 逻辑控制层 * @author:sjsq * @createtime:2022年2月21日 */// 设置默认先映射到("/user")路径下@Controller@RequestMapping("/user")public class UserController {@Autowiredprivate UserService userBiz;// 设置映射路径和以json格式传送参数@RequestMapping(value = "/checkLogin", produces = { "application/json;charset=UTF-8" })public @ResponseBody User checkLogin(@RequestBody User user, Model model, HttpSession session) {System.out.println("=============进入登录控制页面。===============");User user1 = userBiz.CheckLoginAndPwd(user.getUsername(), user.getPassword());// 登录以后添加到session中session.setAttribute("user1", user1);session.setAttribute("test","呵呵");return user1;}// 注销@RequestMapping("/LogOut")public String LogOut(HttpSession session) {session.invalidate();return "redirect:/Login.jsp";}// 注册@RequestMapping(value = "/register",produces = { "application/json;charset=UTF-8" })public String register(User user, Model model) {userBiz.addUser(user);model.addAttribute("msg", "恭喜您,注册成功");return "success";}}
ItemsDaoMapper
商品增删改查接口
package com.sjsq.mapper;import java.util.List;import com.sjsq.entity.Items;/** *@class_name:ItemsDaoMapper *@param: 2.ItemsDao *@return: 商品Dao接口类 *@author:sjsq *@createtime:2022年2月22日 */public interface ItemsDaoMapper {//1.单条查询-idpublic Items findOne(int id);//2.查询所有商品public List findAll();//3.增加public void add (Items items);//4.更新public void upd(Items items);//5.删除public void del(int id);// 搜索某些商品public List findSome(String name);}
ItemsDaoMapper.xml
商品增删改查xml文件
select *from items where id=#{id}select * from items where 1=1and name like concat(#{commodityname},'%')select * from items order by iddescinsert into itemsvalues(default,#{name},#{price},#{detail},#{pic},#{createtime})update items setname=#{name},price=#{price},detail=#{detail},pic=#{pic},createtime=#{createtime}where id =#{id}delete from items where id=#{id}
UserMapper
用户登录注册接口
package com.sjsq.mapper;import org.apache.ibatis.annotations.Param;import com.sjsq.entity.User;/** * @class_name:UserMapper * @param: 2.dao层接口 * @return: 数据持久化 * @author:sjsq * @createtime:2022年2月21日 */public interface UserMapper {// 查询登录账户-用户密码为参数public User CheckLoginAndPwd(@Param("username") String name, @Param("password") String pwd);// 注册用户public void addUser(User user);}
UserMapper.xml
用户登录注册xml文件
select*from user where username=#{username} and password=#{password}insert into uservalues(default,#{username},#{password},#{birthday},1,#{address})
fail.jsp
登录失败页面
<base href=""> 登录失败提示页 用户名或密码错误!!!!
showItems.jsp
商品展示页面
<base href=""> 商品后台管理系统 $("#myModal").modal({ keyboard: false, backdrop: true }); $(function () { $(".form_datetime").datetimepicker({ format: "yyyy-mm-dd hh:ii", autoclose: true, todayBtn: true, todayHighlight: true, showMeridian: true, pickerPosition: "bottom-left", language: 'zh-CN',//中文,需要引用zh-CN.js包 startView: 2,//月视图 minView: 2 //日期时间选择器所能够提供的最精确的时间选择视图 }); });
success.jsp
注册成功页面
<base href=""> 注册成功 注册成功
去登录
upd.jsp
修改商品页面
<base href=""> 修改页面 $(function () { $('#myModal').modal({ keyboard: false, backdrop: true }) }); (function () { $(".form_datetime").datetimepicker({ format: "yyyy-mm-dd hh:ii", autoclose: true, todayBtn: true, todayHighlight: true, showMeridian: true, pickerPosition: "bottom-left", language: 'zh-CN',//中文,需要引用zh-CN.js包 startView: 2,//月视图 minView: 2 //日期时间选择器所能够提供的最精确的时间选择视图 }); });
四、其他
1.更多系统
Java+JSP系统系列实现
Java+JSP实现学生图书管理系统
Java+JSP实现学生信息管理系统
Java+JSP实现用户信息管理系统
Java+JSP实现教师信息管理系统
Java+JSP实现学生宿舍管理系统
Java+JSP实现商品信息管理系统
Java+JSP实现宠物信息管理系统
Java+JSP实现学生成绩管理系统
Java+Servlet系统系列实现
Java+Servlet+JSP实现航空订票系统
Java+Servlet+JSP实现新闻发布系统
Java+Servlet+JSP学生宿舍管理系统
Java+Servlet+JSP实现图书管理系统
Java+Servlet+JSP实现停车场管理系统
Java+Servlet+JSP实现房屋租赁管理系统
Java+Servlet+JSP实现学生信息管理系统
Java+Servlet+JSP实现学生选课管理系统
Java+Servlet+JSPl实现学生选课签到系统
Java+Servlet+JSP实现宠物诊所管理系统
Java+Servlet+JSP实现学生成绩管理系统-1
Java+Servlet+JSP实现学生成绩管理系统-2
Java+SSM系统系列实现
Java+SSM+JSP实现网上考试系统
Java+SSM+JSP实现宠物商城系统
Java+SSM+JSP实现超市管理系统
Java+SSM+JSP实现学生成绩管理系统
Java+SSM+JSP实现学生信息管理系统
Java+SSM+JSP实现药品信息管理系统
Java+SSM+JSP实现汽车信息管理系统
Java+SSM+JSP+Maven实现网上书城系统
Java+SSM+JSP+Maven实现学校教务管理系统
Java+SSH系统系列实现
Java+SSH+JSP实现在线考试系统
Java+SSH+JSP实现医院在线挂号系统
Java+Springboot系统系列实现
Java+Springboot+H-ui+Maven实现营销管理系统
Java+Springboot+Bootstrap+Maven实现网上商城系统
Java+Springboot+Bootstrap+Maven实现景区旅游管理系统
1.更多JavaWeb系统请关注专栏。
https://blog.csdn.net/helongqiang/category_10020130.htmlhttps://blog.csdn.net/helongqiang/category_10020130.html
2.更多JavaSwing系统请关注专栏。
https://blog.csdn.net/helongqiang/category_6229101.htmlhttps://blog.csdn.net/helongqiang/category_6229101.html
2.源码下载
sql在sql文件夹下面
系统账号信息
1.管理员 账号:admin 密码:admin
Java+SSM+Bootstrap+Jsp+Mysql实现Web商品信息管理系统
3.运行项目
关注B站:水坚石青
后期有更多干货视频推出!!!
IDEA如何导入JavaWeb项目超详细视频教程
4.备注
如有侵权请联系我删除。
5.支持博主
如果您觉得此文对您有帮助,请点赞加关注加收藏。祝您生活愉快!