基于javaweb+mysql的ssm校园二手交易系统(java+ssm+layui+jsp+jquery+mysql)

基于javaweb+mysql的ssm校园二手交易系统(java+ssm+layui+jsp+jquery+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SSM校园二手交易系统(java+ssm+layui+jsp+jquery+mysql)

项目介绍

基于SSM的校园二手交易系统

用户:首页、二手商品、求购信息、交流论坛、公告信息、个人中心、后台管理、购物车、售后客服

管理员:个人中心、用户管理、卖家管理、二手商品管理、求购信息管理、商品分类管理、用户警告管理、卖家警告管理、信誉评价管理、卖家沟通管理、用户沟通管理、交流论坛、系统管理

卖家:个人中心、二手商品管理、求购信息管理 、卖家警告管理、信誉评价管理、卖家沟通管理、用户沟通管理、订单管理

环境需要

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项目:是;

技术栈

后端:SSM(Spring+SpringMVC+Mybatis) 前端:JSP+CSS+JS+JQUERY+Layui

使用说明

项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;


for (Review review : reviews) {

review.setReplys(reviewService.gerReplyByReviewId(review.getId()));

List<Good> goods = goodService.getRECGoods(goodInfo.getSecondTypeId(),

goodInfo.getId());

model.addAttribute("message", message);

model.addAttribute("reviews", reviews);

model.addAttribute("goodInfo", goodInfo);

model.addAttribute("images", images);

model.addAttribute("goodUser", goodUser);

model.addAttribute("goods", goods);

model.addAttribute("collect", collect);


model.addAttribute("replies", replies);

return "user/userEdit";

@RequestMapping(value = "/userEdit", method = RequestMethod.POST)

public String postUserEdit(ModelMap model, @Valid User user,

HttpSession session,

@RequestParam(value = "photo", required = false) MultipartFile photo)

throws IOException {

String status;

Boolean insertSuccess;

User sessionUser = (User) session.getAttribute("user");

user.setId(sessionUser.getId());

InfoCheck infoCheck = new InfoCheck();

FileCheck fileCheck = new FileCheck();

imageService.deleteImage(goodId);

RandomString randomString = new RandomString();

String filePath = "/statics/image/goods/" + user.getId() + "/" + goodId;

String pathRoot = fileCheck.checkGoodFolderExist(filePath);

String name;

if (!mainFile.isEmpty()) {

String contentType = mainFile.getContentType();

String fileName = goodId + randomString.getRandomString(10);

String imageName = contentType

.substring(contentType.indexOf("/") + 1);

name = fileName + "." + imageName;

mainFile.transferTo(new File(pathRoot + name));

image.setUrl(filePath + "/" + name);

imageService.insertImage(image);

return "redirect:/goods/goodInfo?goodId=" + goodId;

@RequestMapping(value = "/goods/userGoodEdit/delete/{goodId}", method = RequestMethod.GET)

public ResponseEntity deleteGood(@PathVariable Integer goodId) {

Boolean success;

success = goodService.deleteGood(goodId) > 0;

return ResponseEntity.ok(success);

@RequestMapping(value = "/goods/userGoodEdit/updateGoodStatus/{goodId}", method = RequestMethod.GET)

public ResponseEntity updateGoodStatus(@PathVariable Integer goodId) {

Boolean success;

success = goodService.updateGoodStatusId(0, goodId) > 0;


model.addAttribute("status", status);

return "user/userEdit";

System.out.println(user.getMobile());

System.out.println(status);

model.addAttribute("user", user);

model.addAttribute("status", status);

return "user/userEdit";

@RequestMapping(value = "/password/edit", method = RequestMethod.POST)

public ResponseEntity editPassword(@RequestBody Password password) {

User user = userService.getUserById(password.getUserId());

String oldPass = DigestUtils

.md5DigestAsHex((password.getOldPassword() + user.getCode())

model.addAttribute("orders", orders);

model.addAttribute("reviews", reviews);

model.addAttribute("replies", replies);

model.addAttribute("sellGoods", sellGoods);

return "user/userProfile";

@RequestMapping(value = "/review", method = RequestMethod.GET)

public String getReviewInfo(@RequestParam(required = false) Integer goodId,

@RequestParam(required = false) Integer reviewId) {

System.out.println("reviewId" + reviewId);

if (reviewId != null) {

System.out.println("reviewId" + reviewId);

if (reviewService.updateReviewStatus(1, reviewId) == 1) {

return "redirect:/goods/goodInfo?goodId=" + goodId;

String filePath = "/statics/image/goods/" + user.getId() + "/" + goodId;

String pathRoot = fileCheck.checkGoodFolderExist(filePath);

String name;

if (!mainFile.isEmpty()) {

String fileName = goodId + randomString.getRandomString(10);

String contentType = mainFile.getContentType();

String imageName = contentType

.substring(contentType.indexOf("/") + 1);

name = fileName + "." + imageName;

mainFile.transferTo(new File(pathRoot + name));

String photoUrl = filePath + "/" + name;


return "redirect:/";

List<Collect> collects = collectService

.getCollectByUserId(user.getId());

for (Collect collect : collects) {

collect.setGood(goodService.getGoodById(collect.getGoodId()));

List<Good> goods = goodService.getGoodByUserId(user.getId());

List<Order> orders = orderService.getOrderByCustomerId(user.getId());

List<Review> reviews = reviewService.gerReviewByToUserId(user.getId());

List<Reply> replies = reviewService.gerReplyByToUserId(user.getId());

List<Order> sellGoods = orderService.getOrderBySellerId(user.getId());

model.addAttribute("collects", collects);

model.addAttribute("goods", goods);


goodService.updateGoodPhotoUrl(photoUrl, goodId);

for (MultipartFile mf : file) {

if (!mf.isEmpty()) {

String contentType = mf.getContentType();

String fileName = goodId + randomString.getRandomString(10);

String imageName = contentType.substring(contentType

.indexOf("/") + 1);

name = fileName + "." + imageName;

System.out.println("name:" + name);

mf.transferTo(new File(pathRoot + name));

Image image = new Image();


model.addAttribute("goods", goods);

model.addAttribute("collect", collect);

message = "";

return "goods/goodInfo";

@RequestMapping(value = "/goods/goodInfo", method = RequestMethod.POST)

public String putReview(

@RequestParam(value = "goodId", required = false) Integer goodId,

@RequestParam(value = "reviewId", required = false) Integer reviewId,

@RequestParam(value = "fromUserId", required = false) Integer fromUserId,

@RequestParam(value = "toUserId", required = false) Integer toUserId,


model.addAttribute("collect", collect);

message = "";

return "goods/goodInfo";

@RequestMapping(value = "/goods/goodInfo", method = RequestMethod.POST)

public String putReview(

@RequestParam(value = "goodId", required = false) Integer goodId,

@RequestParam(value = "reviewId", required = false) Integer reviewId,

@RequestParam(value = "fromUserId", required = false) Integer fromUserId,

@RequestParam(value = "toUserId", required = false) Integer toUserId,

@RequestParam(value = "fromUser", required = false) String fromUser,

@RequestParam(value = "toUser", required = false) String toUser,

@RequestParam(value = "replyText", required = false, defaultValue = "") String replyText,

@RequestParam(value = "reviewText", required = false, defaultValue = "") String reviewText) {
public String uploadImage(

HttpSession session,

@RequestParam(value = "goodId", required = false) Integer goodId,

@RequestParam(value = "mainFile", required = false) MultipartFile mainFile,

@RequestParam(value = "file", required = false) MultipartFile[] file)

throws IOException {

User user = (User) session.getAttribute("user");

FileCheck fileCheck = new FileCheck();

RandomString randomString = new RandomString();

String filePath = "/statics/image/goods/" + user.getId() + "/" + goodId;

String pathRoot = fileCheck.checkGoodFolderExist(filePath);
String name = fileName + "." + imageName;

photo.transferTo(new File(pathRoot + name));

String photoUrl = filePath + "/" + name;

user.setPhotoUrl(photoUrl);

} else {

String photoUrl = userService.getUserById(user.getId())

.getPhotoUrl();

user.setPhotoUrl(photoUrl);

insertSuccess = userService.updateUser(user);

if (insertSuccess) {

session.removeAttribute("user");


String code = (randomString.getRandomString(5));

String md5Pass = DigestUtils.md5DigestAsHex((password

.getNewPassword() + code).getBytes());

Boolean success = userService.updatePassword(md5Pass, code,

password.getUserId());

if (success) {

return ResponseEntity.ok(true);

} else {

return ResponseEntity.ok("密码修改失败!");

} else {

return ResponseEntity.ok("原密码输入不正确!");

订单管理控制层:

public String getGoodId(ModelMap model, HttpSession session,

@Valid Good good) {

List<FirstType> firstTypes = typeService.getAllFirstType();

User user = (User) session.getAttribute("user");

List<Good> goods = goodService.getAllGoods(0, 5);

good.setUserId(user.getId());

good.setPhotoUrl("/statics/image/goods/default/nophoto.png");

if (goodService.insertGood(good) != 1) {

System.out.println("插入物品失败!");

model.addAttribute("goods", goods);

model.addAttribute("good", good);


model.addAttribute("goods", goods);

model.addAttribute("good", good);

model.addAttribute("goodImages", goodImages);

model.addAttribute("firstTypes", firstTypes);

return "goods/userGoodEdit";

@RequestMapping(value = "/goods/userGoodEdit", method = RequestMethod.POST)

public String postGoodEdit(ModelMap model, HttpSession session,

@Valid Good good) {

List<FirstType> firstTypes = typeService.getAllFirstType();

User user = (User) session.getAttribute("user");

if (user == null) {

return "redirect:/";

List<Good> goods = goodService.getAllGoods(0, 5);


@Valid Good good) {

List<FirstType> firstTypes = typeService.getAllFirstType();

User user = (User) session.getAttribute("user");

if (user == null) {

return "redirect:/";

List<Good> goods = goodService.getAllGoods(0, 5);

if (!(goodService.updateGood(good) > 0)) {

System.out.println("修改物品失败!");

List<Image> goodImages = imageService.getImageByGoodId(good.getId());

model.addAttribute("goods", goods);

model.addAttribute("good", good);

model.addAttribute("goodImages", goodImages);


sessionUser.getId(), orderId);

model.addAttribute("orderInfo", orderInfo);

model.addAttribute("orders", orders);

System.out.println("sellerInfo.size:" + orders.size());

return "user/sellerInfo";

@RequestMapping(value = "/user/order/delete/{orderId}", method = RequestMethod.GET)

public ResponseEntity deleteOrderById(@PathVariable Integer orderId) {

Boolean success;

success = orderService.deleteOrderById(orderId) > 0;

return ResponseEntity.ok(success);

@RequestMapping(value = "/user/sellerOrder/delete/{orderId}&{goodId}", method = RequestMethod.GET)

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值