源码获取:俺的博客首页 "资源" 里下载!
项目介绍
管理员:首页、个人中心、用户管理、分类管理、商品信息管理、订单评价管理、系统管理、订单管理
用户:注册、登录、首页、个人中心、订单评价管理、我的收藏管理、订单管理
汽车商城、鲜花商城、电子商城、图书商城、宠物商城等换个商品就可以实现(前后端分离)
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 5.7/8.0版本均可;
5.是否Maven项目:是;
技术栈
后端:SpringBot(Spring+SpringMVC+Mybatis)
前端:Vue
使用说明
项目运行:
1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入地址
http://localhost:8080/springboot7z60r/front/index.html
普通用户名密码:用户1/123456
管理员用户名密码:abo/abo
文档介绍(课题背景与意义、系统实现功能、课题研究现状、系统相关技术、java技术、B/S架构、Mysql介绍、Mysql环境配置、Springboot框架、系统需求分析、系统功能、可行性研究、经济可行性、技术可行性、运行可行性、事件可行性、系统业务过程分析、系统业务过程分析、系统用例图、系统设计、数据库设计、系统整体设计、系统设计思想、系统流程图、系统详情设计、系统功能模块、系统功能模块、管理员功能模块):

商品信息展示页面:

商品推荐页面展示:

商品详情页面展示:

购物车详情展示:

订单管理展示:

后台管理展示页:

商城后台登录展示:
后台商品信息列表展示:

用户管理控制层:
@Controller
public class UserController extends BaseController {
@Resource
UserDAO userDAO;
@RequestMapping("/admin/login")
public String login(User user ,HttpServletRequest request) {
HashMap map = new HashMap();
map.put("username", user.getUsername());
map.put("userpassword", MD5.getDigest(user.getUserpassword()));
map.put("usertype", user.getUsertype());
List<User> list = userDAO.selectAll(map);
if(list.size()==0){
request.setAttribute("error", "用户名或密码错误");
return "admin/login";
}else{
request.getSession().setAttribute("admin", list.get(0));
return "redirect:index.do";
}
}
@RequestMapping("/admin/grInfo")
public String findById(HttpServletRequest request){
User u = (User)request.getSession().getAttribute("admin");
User user = userDAO.findById(u.getId());
request.setAttribute("user", user);
String suc = request.getParameter("suc");
if(suc!=null){
request.setAttribute("suc", "编辑成功");
}
return "admin/grinfo";
}
@RequestMapping("/admin/updateGrinfo")
public String update(User u, HttpServletRequest request){
userDAO.update(u);
User admin = (User)userDAO.findById(u.getId());
request.getSession().setAttribute("admin", admin);
return "redirect:grInfo.do?suc=suc";
}
@RequestMapping("/admin/updatepwd")
public String updatepwd(int id,String userpassword, HttpServletRequest request) {
String oldpassword = request.getParameter("oldpassword");
User user = userDAO.findById(id);
if(oldpassword.equals(user.getUserpassword())){
user.setUserpassword(MD5.getDigest(userpassword));
userDAO.update(user);
request.setAttribute("suc", "操作成功");
}else{
request.setAttribute("error", "原密码错误");
}
return "admin/updatepwd";
}
@RequestMapping("/admin/userList")
public String selectAll(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request){
String key = request.getParameter("key");
HashMap map = new HashMap();
map.put("key", key);
map.put("usertype", "商家");
map.put("shstatus", "通过审核");
PageHelper.startPage(pageNum, 10);
List<User> list = userDAO.selectAll(map);
PageInfo<User> pageInfo = new PageInfo<User>(list);
request.setAttribute("key",key);
request.setAttribute("pageInfo",pageInfo);
return "admin/userlist";
}
@RequestMapping("admin/userAdd")
public String userAdd(User user, HttpServletRequest request){
userDAO.add(user);
return "redirect:userList.do";
}
//检查用户名的唯一性
@RequestMapping("admin/checkUsername")
public void checkUsername(String username, HttpServletRequest request, HttpServletResponse response){
try {
PrintWriter out = response.getWriter();
HashMap map = new HashMap();
map.put("username", username);
List<User> list = userDAO.selectAll(map);
if(list.size()==0){
out.print(0);
}else{
out.print(1);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@RequestMapping("/admin/showUser")
public String showUser(int id, HttpServletRequest request){
User user = userDAO.findById(id);
request.setAttribute("user", user);
return "admin/useredit";
}
@RequestMapping("/admin/userEdit")
public String userEdit(User u, HttpServletRequest request){
userDAO.update(u);
return "redirect:userList.do";
}
@RequestMapping("/admin/userDel")
public String userDel(int id,HttpServletRequest request){
User user = userDAO.findById(id);
user.setDelstatus("1");
userDAO.update(user);
return "redirect:userList.do";
}
//商家注册
@RequestMapping("shopRegister")
public String shopRegister(User user,HttpServletRequest request){
user.setUserpassword(MD5.getDigest(user.getUserpassword()));
user.setDelstatus("0");
user.setShstatus("待审核");
user.setUsertype("商家");
userDAO.add(user);
return "redirect:skipshopRetist.do?suc=suc";
}
}
品类管理控制层:
@Controller
public class CategoryController extends BaseController {
@Resource
CategoryDAO categoryDAO;
@RequestMapping("/admin/categoryList")
public String categoryList(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request) {
String key = request.getParameter("key");
HashMap map = new HashMap();
map.put("key", key);
PageHelper.startPage(pageNum, 10);
List<Category> fcategorylist = categoryDAO.selectFcategory(map);
for(Category category:fcategorylist){
List<Category> scategorylist = categoryDAO.selectScategory(category.getId());
category.setScategorylist(scategorylist);
}
PageInfo<Category> pageInfo = new PageInfo<Category>(fcategorylist);
request.setAttribute("pageInfo", pageInfo);
request.setAttribute("key", key);
return "admin/categorylist";
}
@RequestMapping("/admin/categoryAdd")
public String dingdanAdd(Category ct,HttpServletRequest request){
categoryDAO.add(ct);
return "redirect:categoryList.do";
}
@RequestMapping("/admin/showCategory")
public String showCategory(int id,HttpServletRequest request){
Category category = categoryDAO.findById(id);
request.setAttribute("category", category);
return "admin/categoryedit";
}
@RequestMapping("/admin/categoryEdit")
public String categoryEdit(Category category,HttpServletRequest request){
categoryDAO.update(category);
request.setAttribute("category", category);
return "redirect:categoryList.do";
}
@RequestMapping("admin/categoryDelAll")
public String categoryDelAll(int id, HttpServletRequest request,HttpServletResponse response){
categoryDAO.delete(id);
return "redirect:categoryList.do";
}
//类别二级联动
@RequestMapping("admin/searchCtype")
public void searchCtype(HttpServletRequest request,HttpServletResponse response){
String fatherid = request.getParameter("fatherid")==null?"":request.getParameter("fatherid");
String xml = "";
if(!fatherid.equals("")){
List<Category> list = categoryDAO.selectScategory(Integer.parseInt(fatherid));
if(list.size()>0){
for(Category category:list){
xml += "<option value='"+category.getId()+"'>"+category.getName()+"</option>";
}
}else{
xml ="<option value=''>请选择上一级目录</opion>";
}
}else{
xml ="<option value=''>请选择上一级目录</opion>";
}
response.setCharacterEncoding("utf-8");
response.setContentType("application/json");
PrintWriter out;
try {
out = response.getWriter();
Gson gson = new Gson();
String flag = gson.toJson(xml);
out.write(flag);
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
购物车管理控制层:
@Controller
public class CartController extends BaseController {
@Resource
CartDAO cartDAO;
@Resource
MemberDAO memberDAO;
@Resource
ProductDAO productDAO;
@Resource
CategoryDAO categoryDAO;
@Resource
Saveobject saveobject;
@Resource
OrdermsgDAO ordermsgDAO;
// 查询购车商品
@RequestMapping("cartList")
public String cartList(HttpServletRequest request) {
Member member = (Member) request.getSession().getAttribute(
"sessionmember");
//double zk = saveobject.getzk(member.getId());
HashMap map = new HashMap();
map.put("memberid", member.getId());
List<Cart> cartlist = cartDAO.selectAll(map);
String totalstr = "";
double total = 0.0;
for(Cart cart:cartlist){
Member m = memberDAO.findById(cart.getMemberid());
Product product = productDAO.findById(cart.getProductid());
cart.setMember(m);
cart.setProduct(product);
double sjprice = 0D;
double doublesubtotal = 0D;
if(product.getTprice()>0){
sjprice = product.getTprice();
total += Double.parseDouble(String.valueOf(cart.getNum()))* sjprice;
doublesubtotal = Double.parseDouble(String.valueOf(cart.getNum()))*sjprice;
}else{
sjprice = product.getPrice();
total += Double.parseDouble(String.valueOf(cart.getNum()))* sjprice;
doublesubtotal = Double.parseDouble(String.valueOf(cart.getNum()))*sjprice;
}
cart.setSubtotal(String.format("%.2f", doublesubtotal));
}
totalstr = String.format("%.2f", total);
request.setAttribute("totaldoubel", Double.parseDouble(totalstr));
request.setAttribute("cartlist", cartlist);
request.setAttribute("totalstr", totalstr);
saveobject.getCategoryObject(request);
String suc = request.getParameter("suc")==null?"":request.getParameter("suc");
if(!suc.equals("")){
request.setAttribute("suc", "创建成功");
}
HashMap mmm = new HashMap();
mmm.put("goodstype", "购买商品");
saveobject.hotSales("", request);
List<Product> zphlist = saveobject.hotSales("",request);
request.setAttribute("zphlist", zphlist);
return "cartlist";
}
// 添加购物车
@RequestMapping("addCart")
public void addCart(HttpServletRequest request, HttpServletResponse response) {
PrintWriter out;
try {
out = response.getWriter();
Member member = (Member) request.getSession().getAttribute(
"sessionmember");
if (member != null) {
String productid = request.getParameter("productid");
String num = request.getParameter("num");
//判断是否是购买自己的商品
Product product = (Product)productDAO.findById(Integer.parseInt(productid));
HashMap map = new HashMap();
map.put("memberid", member.getId());
map.put("productid", productid);
List<Cart> list = cartDAO.selectAll(map);
if (list.size() == 0) {
Cart cart = new Cart();
cart.setMemberid(member.getId());
cart.setProductid(Integer.parseInt(productid));
cart.setNum(Integer.parseInt(num));
cart.setShopid(Integer.valueOf(product.getSaver()));
cartDAO.add(cart);
} else {
Cart ct = new Cart();
ct.setId(list.get(0).getId());
ct.setNum(list.get(0).getNum() + Integer.parseInt(num));
cartDAO.update(ct);
}
out.print("1");
} else {
out.println("0");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 删除购物车中的商品
@RequestMapping("delCart")
public void delCart(HttpServletRequest request, HttpServletResponse response) {
PrintWriter out;
try {
out = response.getWriter();
String id = request.getParameter("id");
cartDAO.delCart(Integer.parseInt(id));
out.println("0");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//修改购物车
@RequestMapping("updateNum")
public void updateNum(HttpServletRequest request, HttpServletResponse response) {
PrintWriter out;
try {
out = response.getWriter();
String id = request.getParameter("id");
String num = request.getParameter("num");
Cart ct = new Cart();
ct.setId(Integer.parseInt(id));
ct.setNum(Integer.parseInt(num));
cartDAO.updateNum(ct);
out.println("0");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//清空购物车
@RequestMapping("carDel")
public void carDel(HttpServletRequest request,HttpServletResponse response) {
PrintWriter out;
try {
out = response.getWriter();
Member member = (Member)request.getSession().getAttribute("sessionmember");
if(member!=null){
HashMap map = new HashMap();
map.put("memberid", member.getId());
List<Cart> list = cartDAO.selectAll(map);
for(Cart cart:list){
cartDAO.delCart(cart.getId());
}
out.println("1");
}else{
out.println("0");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
源码获取:俺的博客首页 "资源" 里下载!


被折叠的 条评论
为什么被折叠?



