Java通過SSM完成水果商城批發(fā)平臺(tái)流程
一,項(xiàng)目簡(jiǎn)介
項(xiàng)目編號(hào):BS-SC-029
本系統(tǒng)主要為種值水果和農(nóng)戶和水果經(jīng)銷商搭建一個(gè)B2B的電子商務(wù)平臺(tái),系統(tǒng)共包含三個(gè)角色:農(nóng)戶、經(jīng)銷商和管理員。
1.農(nóng)戶角色功能
前臺(tái)首頁(yè)、用戶注冊(cè)登錄、新聞公告、查看水果詳情、收藏、留言、個(gè)人中心、我的收藏、意見反饋、發(fā)布水果、我的銷售等功能。
2.經(jīng)銷商角色功能
前臺(tái)首頁(yè)、用戶注冊(cè)登錄、新聞公告、查看水果詳情、收藏、留言、個(gè)人中心、我的收藏、意見反饋、在線購(gòu)買、下單結(jié)算、查看我的訂單等功能。
3.管理員后臺(tái)功能
用戶管理、管理員管理、網(wǎng)站內(nèi)容管理、水果類型管理、水果信息管理、采購(gòu)訂單管理、用戶評(píng)價(jià)管理、意見反饋管理、留言交流管理等
二,環(huán)境介紹
語言環(huán)境:Java: jdk1.8
數(shù)據(jù)庫(kù):Mysql: mysql5.7
應(yīng)用服務(wù)器:Tomcat: tomcat8.5.31
開發(fā)工具:IDEA或eclipse
后臺(tái)開發(fā)技術(shù):SSM框架
前臺(tái)開發(fā)技術(shù):H-UI框架
三,系統(tǒng)展示
用戶注冊(cè)

用戶登陸

系統(tǒng)首頁(yè)

新聞公告

商品展示

全文檢索

在線留言

添加購(gòu)物車


經(jīng)銷商個(gè)人中心

農(nóng)戶個(gè)人中心

后臺(tái)管理功能模塊

四,核心代碼展示
package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Admin;
import com.service.AdminService;
import com.util.PageHelper;
import com.util.VeDate;
//定義為控制器
@Controller
// 設(shè)置路徑
@RequestMapping(value = "/admin" , produces = "text/plain;charset=utf-8")
public class AdminController extends BaseController {
// 注入Service 由于標(biāo)簽的存在 所以不需要getter setter
@Autowired
private AdminService adminService;
// 管理員準(zhǔn)備
@RequestMapping("index.action")
public String index() {
return "admin/index";
}
// 管理員登錄 1 驗(yàn)證用戶名是否存在 2 驗(yàn)證密碼是否正確
@RequestMapping("login.action")
public String login() {
String username = this.getRequest().getParameter("username");
String password = this.getRequest().getParameter("password");
Admin adminEntity = new Admin();
adminEntity.setUsername(username);
List<Admin> adminlist = this.adminService.getAdminByCond(adminEntity);
if (adminlist.size() == 0) {
this.getRequest().setAttribute("message", "用戶名不存在");
return "redirect:/admin/index.action";
} else {
Admin admin = adminlist.get(0);
if (password.equals(admin.getPassword())) {
this.getSession().setAttribute("adminid", admin.getAdminid());
this.getSession().setAttribute("adminname", admin.getUsername());
this.getSession().setAttribute("realname", admin.getRealname());
} else {
this.getRequest().setAttribute("message", "密碼錯(cuò)誤");
return "redirect:/admin/index.action";
}
}
return "admin/main";
}
// 管理員準(zhǔn)備修改密碼
@RequestMapping("prePwd.action")
public String prePwd() {
return "admin/editpwd";
}
// 修改密碼
@RequestMapping("editpwd.action")
public String editpwd() {
String adminid = (String) this.getSession().getAttribute("adminid");
String password = this.getRequest().getParameter("password");
String repassword = this.getRequest().getParameter("repassword");
Admin admin = this.adminService.getAdminById(adminid);
if (password.equals(admin.getPassword())) {
admin.setPassword(repassword);
this.adminService.updateAdmin(admin);
} else {
this.getRequest().setAttribute("message", "舊密碼錯(cuò)誤");
}
return "redirect:/admin/prePwd.action";
}
// 管理員退出登錄
@RequestMapping("exit.action")
public String exit() {
this.getSession().removeAttribute("adminid");
this.getSession().removeAttribute("adminname");
this.getSession().removeAttribute("realname");
return "redirect:/admin/index.action";
}
// 準(zhǔn)備添加數(shù)據(jù)
@RequestMapping("createAdmin.action")
public String createAdmin() {
return "admin/addadmin";
}
// 添加數(shù)據(jù)
@RequestMapping("addAdmin.action")
public String addAdmin(Admin admin) {
admin.setAddtime(VeDate.getStringDateShort());
this.adminService.insertAdmin(admin);
return "redirect:/admin/createAdmin.action";
}
// 通過主鍵刪除數(shù)據(jù)
@RequestMapping("deleteAdmin.action")
public String deleteAdmin(String id) {
this.adminService.deleteAdmin(id);
return "redirect:/admin/getAllAdmin.action";
}
// 批量刪除數(shù)據(jù)
@RequestMapping("deleteAdminByIds.action")
public String deleteAdminByIds() {
String[] ids = this.getRequest().getParameterValues("adminid");
for (String adminid : ids) {
this.adminService.deleteAdmin(adminid);
}
return "redirect:/admin/getAllAdmin.action";
}
// 更新數(shù)據(jù)
@RequestMapping("updateAdmin.action")
public String updateAdmin(Admin admin) {
this.adminService.updateAdmin(admin);
return "redirect:/admin/getAllAdmin.action";
}
// 顯示全部數(shù)據(jù)
@RequestMapping("getAllAdmin.action")
public String getAllAdmin(String number) {
List<Admin> adminList = this.adminService.getAllAdmin();
PageHelper.getPage(adminList, "admin", null, null, 10, number, this.getRequest(), null);
return "admin/listadmin";
}
// 按條件查詢數(shù)據(jù) (模糊查詢)
@RequestMapping("queryAdminByCond.action")
public String queryAdminByCond(String cond, String name, String number) {
Admin admin = new Admin();
if(cond != null){
if ("username".equals(cond)) {
admin.setUsername(name);
}
if ("password".equals(cond)) {
admin.setPassword(name);
}
if ("realname".equals(cond)) {
admin.setRealname(name);
}
if ("contact".equals(cond)) {
admin.setContact(name);
}
if ("addtime".equals(cond)) {
admin.setAddtime(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
PageHelper.getPage(this.adminService.getAdminByLike(admin), "admin", nameList, valueList, 10, number, this.getRequest(), "query");
name = null;
cond = null;
return "admin/queryadmin";
}
// 按主鍵查詢數(shù)據(jù)
@RequestMapping("getAdminById.action")
public String getAdminById(String id) {
Admin admin = this.adminService.getAdminById(id);
this.getRequest().setAttribute("admin", admin);
return "admin/editadmin";
}
}package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Article;
import com.service.ArticleService;
import com.entity.Banner;
import com.service.BannerService;
import com.util.PageHelper;
import com.util.VeDate;
//定義為控制器
@Controller
// 設(shè)置路徑
@RequestMapping(value = "/article" , produces = "text/plain;charset=utf-8")
public class ArticleController extends BaseController {
// 注入Service 由于標(biāo)簽的存在 所以不需要getter setter
@Autowired
private ArticleService articleService;
@Autowired
private BannerService bannerService;
// 準(zhǔn)備添加數(shù)據(jù)
@RequestMapping("createArticle.action")
public String createArticle() {
List<Banner> bannerList = this.bannerService.getAllBanner();
this.getRequest().setAttribute("bannerList", bannerList);
return "admin/addarticle";
}
// 添加數(shù)據(jù)
@RequestMapping("addArticle.action")
public String addArticle(Article article) {
article.setAddtime(VeDate.getStringDateShort());
article.setHits("0");
this.articleService.insertArticle(article);
return "redirect:/article/createArticle.action";
}
// 通過主鍵刪除數(shù)據(jù)
@RequestMapping("deleteArticle.action")
public String deleteArticle(String id) {
this.articleService.deleteArticle(id);
return "redirect:/article/getAllArticle.action";
}
// 批量刪除數(shù)據(jù)
@RequestMapping("deleteArticleByIds.action")
public String deleteArticleByIds() {
String[] ids = this.getRequest().getParameterValues("articleid");
for (String articleid : ids) {
this.articleService.deleteArticle(articleid);
}
return "redirect:/article/getAllArticle.action";
}
// 更新數(shù)據(jù)
@RequestMapping("updateArticle.action")
public String updateArticle(Article article) {
this.articleService.updateArticle(article);
return "redirect:/article/getAllArticle.action";
}
// 顯示全部數(shù)據(jù)
@RequestMapping("getAllArticle.action")
public String getAllArticle(String number) {
List<Article> articleList = this.articleService.getAllArticle();
PageHelper.getPage(articleList, "article", null, null, 10, number, this.getRequest(), null);
return "admin/listarticle";
}
// 按條件查詢數(shù)據(jù) (模糊查詢)
@RequestMapping("queryArticleByCond.action")
public String queryArticleByCond(String cond, String name, String number) {
Article article = new Article();
if(cond != null){
if ("title".equals(cond)) {
article.setTitle(name);
}
if ("bannerid".equals(cond)) {
article.setBannerid(name);
}
if ("image".equals(cond)) {
article.setImage(name);
}
if ("contents".equals(cond)) {
article.setContents(name);
}
if ("addtime".equals(cond)) {
article.setAddtime(name);
}
if ("hits".equals(cond)) {
article.setHits(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
PageHelper.getPage(this.articleService.getArticleByLike(article), "article", nameList, valueList, 10, number, this.getRequest(), "query");
name = null;
cond = null;
return "admin/queryarticle";
}
// 按主鍵查詢數(shù)據(jù)
@RequestMapping("getArticleById.action")
public String getArticleById(String id) {
Article article = this.articleService.getArticleById(id);
this.getRequest().setAttribute("article", article);
List<Banner> bannerList = this.bannerService.getAllBanner();
this.getRequest().setAttribute("bannerList", bannerList);
return "admin/editarticle";
}
}package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Banner;
import com.service.BannerService;
import com.util.PageHelper;
import com.util.VeDate;
//定義為控制器
@Controller
// 設(shè)置路徑
@RequestMapping(value = "/banner" , produces = "text/plain;charset=utf-8")
public class BannerController extends BaseController {
// 注入Service 由于標(biāo)簽的存在 所以不需要getter setter
@Autowired
private BannerService bannerService;
// 準(zhǔn)備添加數(shù)據(jù)
@RequestMapping("createBanner.action")
public String createBanner() {
return "admin/addbanner";
}
// 添加數(shù)據(jù)
@RequestMapping("addBanner.action")
public String addBanner(Banner banner) {
banner.setAddtime(VeDate.getStringDateShort());
this.bannerService.insertBanner(banner);
return "redirect:/banner/createBanner.action";
}
// 通過主鍵刪除數(shù)據(jù)
@RequestMapping("deleteBanner.action")
public String deleteBanner(String id) {
this.bannerService.deleteBanner(id);
return "redirect:/banner/getAllBanner.action";
}
// 批量刪除數(shù)據(jù)
@RequestMapping("deleteBannerByIds.action")
public String deleteBannerByIds() {
String[] ids = this.getRequest().getParameterValues("bannerid");
for (String bannerid : ids) {
this.bannerService.deleteBanner(bannerid);
}
return "redirect:/banner/getAllBanner.action";
}
// 更新數(shù)據(jù)
@RequestMapping("updateBanner.action")
public String updateBanner(Banner banner) {
this.bannerService.updateBanner(banner);
return "redirect:/banner/getAllBanner.action";
}
// 顯示全部數(shù)據(jù)
@RequestMapping("getAllBanner.action")
public String getAllBanner(String number) {
List<Banner> bannerList = this.bannerService.getAllBanner();
PageHelper.getPage(bannerList, "banner", null, null, 10, number, this.getRequest(), null);
return "admin/listbanner";
}
// 按條件查詢數(shù)據(jù) (模糊查詢)
@RequestMapping("queryBannerByCond.action")
public String queryBannerByCond(String cond, String name, String number) {
Banner banner = new Banner();
if(cond != null){
if ("bannername".equals(cond)) {
banner.setBannername(name);
}
if ("addtime".equals(cond)) {
banner.setAddtime(name);
}
if ("memo".equals(cond)) {
banner.setMemo(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
PageHelper.getPage(this.bannerService.getBannerByLike(banner), "banner", nameList, valueList, 10, number, this.getRequest(), "query");
name = null;
cond = null;
return "admin/querybanner";
}
// 按主鍵查詢數(shù)據(jù)
@RequestMapping("getBannerById.action")
public String getBannerById(String id) {
Banner banner = this.bannerService.getBannerById(id);
this.getRequest().setAttribute("banner", banner);
return "admin/editbanner";
}
}package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Complains;
import com.service.ComplainsService;
import com.entity.Users;
import com.service.UsersService;
import com.util.PageHelper;
//定義為控制器
@Controller
// 設(shè)置路徑
@RequestMapping(value = "/complains" , produces = "text/plain;charset=utf-8")
public class ComplainsController extends BaseController {
// 注入Service 由于標(biāo)簽的存在 所以不需要getter setter
@Autowired
private ComplainsService complainsService;
@Autowired
private UsersService usersService;
// 準(zhǔn)備添加數(shù)據(jù)
@RequestMapping("createComplains.action")
public String createComplains() {
List<Users> usersList = this.usersService.getAllUsers();
this.getRequest().setAttribute("usersList", usersList);
return "admin/addcomplains";
}
// 添加數(shù)據(jù)
@RequestMapping("addComplains.action")
public String addComplains(Complains complains) {
this.complainsService.insertComplains(complains);
return "redirect:/complains/createComplains.action";
}
// 通過主鍵刪除數(shù)據(jù)
@RequestMapping("deleteComplains.action")
public String deleteComplains(String id) {
this.complainsService.deleteComplains(id);
return "redirect:/complains/getAllComplains.action";
}
// 批量刪除數(shù)據(jù)
@RequestMapping("deleteComplainsByIds.action")
public String deleteComplainsByIds() {
String[] ids = this.getRequest().getParameterValues("complainsid");
for (String complainsid : ids) {
this.complainsService.deleteComplains(complainsid);
}
return "redirect:/complains/getAllComplains.action";
}
// 更新數(shù)據(jù)
@RequestMapping("updateComplains.action")
public String updateComplains(Complains complains) {
this.complainsService.updateComplains(complains);
return "redirect:/complains/getAllComplains.action";
}
// 更新狀態(tài)
@RequestMapping("status.action")
public String status(String id) {
String status = "";
Complains complains = this.complainsService.getComplainsById(id);
if (status.equals(complains.getStatus())) {
status = "";
}
complains.setStatus(status);
this.complainsService.updateComplains(complains);
return "redirect:/complains/getAllComplains.action";
}
// 顯示全部數(shù)據(jù)
@RequestMapping("getAllComplains.action")
public String getAllComplains(String number) {
List<Complains> complainsList = this.complainsService.getAllComplains();
PageHelper.getPage(complainsList, "complains", null, null, 10, number, this.getRequest(), null);
return "admin/listcomplains";
}
// 按條件查詢數(shù)據(jù) (模糊查詢)
@RequestMapping("queryComplainsByCond.action")
public String queryComplainsByCond(String cond, String name, String number) {
Complains complains = new Complains();
if(cond != null){
if ("usersid".equals(cond)) {
complains.setUsersid(name);
}
if ("title".equals(cond)) {
complains.setTitle(name);
}
if ("contents".equals(cond)) {
complains.setContents(name);
}
if ("addtime".equals(cond)) {
complains.setAddtime(name);
}
if ("status".equals(cond)) {
complains.setStatus(name);
}
if ("reps".equals(cond)) {
complains.setReps(name);
}
}
List<String> nameList = new ArrayList<String>();
List<String> valueList = new ArrayList<String>();
nameList.add(cond);
valueList.add(name);
PageHelper.getPage(this.complainsService.getComplainsByLike(complains), "complains", nameList, valueList, 10, number, this.getRequest(), "query");
name = null;
cond = null;
return "admin/querycomplains";
}
// 按主鍵查詢數(shù)據(jù)
@RequestMapping("getComplainsById.action")
public String getComplainsById(String id) {
Complains complains = this.complainsService.getComplainsById(id);
this.getRequest().setAttribute("complains", complains);
List<Users> usersList = this.usersService.getAllUsers();
this.getRequest().setAttribute("usersList", usersList);
return "admin/editcomplains";
}
}五,項(xiàng)目總結(jié)
本系統(tǒng)功能主要是針對(duì)農(nóng)戶、經(jīng)銷商買賣雙方進(jìn)行業(yè)務(wù)對(duì)接,平臺(tái)管理員負(fù)責(zé)基礎(chǔ)數(shù)據(jù)的管理,是一個(gè)B2B的商城平臺(tái),功能比較完整,頁(yè)面簡(jiǎn)潔大方,適合做畢業(yè)設(shè)計(jì)使用。
到此這篇關(guān)于Java通過SSM完成水果商城批發(fā)平臺(tái)流程的文章就介紹到這了,更多相關(guān)Java水果商城內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Java開發(fā)之ssm三大框架整合
- java ssm框架的controller實(shí)現(xiàn)向頁(yè)面?zhèn)鬟f參數(shù)
- 基于Java+SSM實(shí)現(xiàn)電影院購(gòu)票系統(tǒng)
- 基于Java SSM實(shí)現(xiàn)在線點(diǎn)餐系統(tǒng)
- 基于Java SSM框架實(shí)現(xiàn)簡(jiǎn)易的評(píng)教系統(tǒng)
- 基于Java SSM實(shí)現(xiàn)Excel數(shù)據(jù)批量導(dǎo)入
- 基于Java SSM的健康管理小程序的實(shí)現(xiàn)
- Java SMM框架關(guān)聯(lián)關(guān)系映射示例講解
相關(guān)文章
Java Json字符串的雙引號(hào)("")括號(hào)如何去掉
這篇文章主要介紹了Java Json字符串的雙引號(hào)("")括號(hào)如何去掉?具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-09-09
解決Spring session(redis存儲(chǔ)方式)監(jiān)聽導(dǎo)致創(chuàng)建大量redisMessageListenerConta
這篇文章主要介紹了解決Spring session(redis存儲(chǔ)方式)監(jiān)聽導(dǎo)致創(chuàng)建大量redisMessageListenerContailner-X線程問題,需要的朋友可以參考下2018-08-08
Spring Boot啟動(dòng)流程斷點(diǎn)過程解析
這篇文章主要介紹了Spring Boot啟動(dòng)流程斷點(diǎn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
解決StringBuffer和StringBuilder的擴(kuò)容問題
這篇文章主要介紹了解決StringBuffer和StringBuilder的擴(kuò)容問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07
java Callable與Future的詳解及實(shí)例
這篇文章主要介紹了java Callable與Future的詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-01-01

