SSM框架扶贫管理系统的设计与实现+论文第六稿+中期自检表+文献综述+安装视频+
优采云 发布时间: 2022-07-10 16:03SSM框架扶贫管理系统的设计与实现+论文第六稿+中期自检表+文献综述+安装视频+
活动地址:毕业季·进击的技术er
博主介绍:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌
CSDN官方推荐10W+JAVA技术人文章发布打卡社区
项目名称
SSM框架扶贫管理系统的设计与实现
效果视频
SSM框架扶贫管理系统的设计与实现
系统说明
扶贫管理系统平台,他的业务流程如下:顾客通过网址浏览商品,挑选喜欢的商品登陆账号将其收藏并加入购物车,在购物车界面提交订单,选择支付方式,支付成功后生成订单,之后再我的主页里查看订单信息,后台管理员接收到订单后实时查看到订单信息,并可以进行发货处理和解决售后问题,我们是直接接入到卖家的商品库存,他们种植的农作物会同步到我们的库存,管理员可以直接进行发货。按照结业设计基本功能和产品要求,本次设计的主要任务是设计扶贫管理系统的方案,实现扶贫管理系统的编程,主要应用于农村地区贫苦地区种植的农产品的售卖。其主要功能包括以下几个功能:
如图3.1所示,以下是系统的总体功能*敏*感*词*,扶贫管理系统主要分为前台和后台两个方向,前台是用户主要使用的地方功能主要分为:首页、商品分类、新闻咨询、关于我们、购物车、*敏*感*词*、订单管理、售后管理、留言管理等功能,主要是方便前台用户能够方便地购买扶贫商品并查看相关的扶贫新闻以及系统介绍。后台是管理员管理系统的地方功能主要分为:系统管理、会员管理、资讯管理、商品管理、订单管理、留言管理以及统计管理等功能,主要是方便管理员对系统内容进行管理并保证系统的正常业务流转。
环境需要
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+CSS+JavaScript+jQuery
使用说明
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中springmvc-servlet.xml配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入:8080/ 登录
运行截图
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
编辑
用户管理控制层:
package com.houserss.controller;<br /><br />import javax.servlet.http.HttpSession;<br /><br />import org.apache.commons.lang3.StringUtils;<br />import org.springframework.beans.factory.annotation.Autowired;<br />import org.springframework.stereotype.Controller;<br />import org.springframework.web.bind.annotation.RequestMapping;<br />import org.springframework.web.bind.annotation.RequestMethod;<br />import org.springframework.web.bind.annotation.RequestParam;<br />import org.springframework.web.bind.annotation.ResponseBody;<br /><br />import com.houserss.common.Const;<br />import com.houserss.common.Const.Role;<br />import com.houserss.common.ServerResponse;<br />import com.houserss.pojo.User;<br />import com.houserss.service.IUserService;<br />import com.houserss.service.impl.UserServiceImpl;<br />import com.houserss.util.MD5Util;<br />import com.houserss.util.TimeUtils;<br />import com.houserss.vo.DeleteHouseVo;<br />import com.houserss.vo.PageInfoVo;<br /><br />/**<br /> * Created by admin<br /> */<br />@Controller<br />@RequestMapping("/user/")<br />public class UserController {<br /> @Autowired<br /> private IUserService iUserService;<br /><br /> /**<br /> * 用户登录<br /> * @param username<br /> * @param password<br /> * @param session<br /> * @return<br /> */<br /> @RequestMapping(value = "login.do",method = RequestMethod.POST)<br /> @ResponseBody<br /> public ServerResponse login(User user,String uvcode, HttpSession session){<br /> String code = (String)session.getAttribute("validationCode");<br /> if(StringUtils.isNotBlank(code)) {<br /> if(!code.equalsIgnoreCase(uvcode)) {<br /> return ServerResponse.createByErrorMessage("验证码不正确");<br /> }<br /> }<br /> ServerResponse response = iUserService.login(user.getUsername(),user.getPassword());<br /> if(response.isSuccess()){<br /> session.setAttribute(Const.CURRENT_USER,response.getData());<br /> }<br /> return response;<br /> }<br /><br /> <br /> <br /> <br />}
管理员管理控制层:
package com.sxl.controller.admin;<br /><br />import java.util.List;<br />import java.util.Map;<br /><br />import javax.servlet.http.HttpServletRequest;<br /><br />import org.springframework.http.ResponseEntity;<br />import org.springframework.stereotype.Controller;<br />import org.springframework.ui.Model;<br />import org.springframework.web.bind.annotation.RequestMapping;<br /><br />import com.sxl.controller.MyController;<br /><br />@Controller("adminController")<br />@RequestMapping(value = "/admin")<br />public class AdminController extends MyController {<br /> <br /><br /> @RequestMapping(value = "/index")<br /> public String frame(Model model, HttpServletRequest request)throws Exception {<br /> return "/admin/index";<br /> }<br /> <br /> @RequestMapping(value = "/main")<br /> public String main(Model model, HttpServletRequest request)throws Exception {<br /> return "/admin/main";<br /> }<br /> <br /> @RequestMapping(value = "/tj1")<br /> public String tj1(Model model, HttpServletRequest request)throws Exception {<br /> String sql="select DATE_FORMAT(insertDate,'%Y-%m-%d') dates,sum(allPrice) price from t_order order by DATE_FORMAT(insertDate,'%Y-%m-%d') desc";<br /> List list = db.queryForList(sql);<br /> model.addAttribute("list", list);<br /> System.out.println(list);<br /> return "/admin/tj/tj1";<br /> }<br /> <br /> <br /> @RequestMapping(value = "/password")<br /> public String password(Model model, HttpServletRequest request)throws Exception {<br /> return "/admin/password";<br /> }<br /> <br /> <br /> @RequestMapping(value = "/changePassword")<br /> public ResponseEntity loginSave(Model model,HttpServletRequest request,String oldPassword,String newPassword) throws Exception {<br /> Map admin = getAdmin(request);<br /> if(oldPassword.equals(admin.get("password").toString())){<br /> String sql="update t_admin set password=? where id=?";<br /> db.update(sql, new Object[]{newPassword,admin.get("id")});<br /> return renderData(true,"1",null);<br /> }else{<br /> return renderData(false,"1",null);<br /> }<br /> }<br />}
修改密码业务逻辑:
package com.sxl.controller.admin;<br /><br />import java.util.Map;<br /><br />import javax.servlet.http.HttpServletRequest;<br /><br />import org.springframework.http.ResponseEntity;<br />import org.springframework.stereotype.Controller;<br />import org.springframework.ui.Model;<br />import org.springframework.web.bind.annotation.RequestMapping;<br /><br />import com.sxl.controller.MyController;<br /><br />@Controller("userController")<br />@RequestMapping(value = "/user")<br />public class UserController extends MyController {<br /> <br /><br /> @RequestMapping(value = "/index")<br /> public String frame(Model model, HttpServletRequest request)throws Exception {<br /> return "/user/index";<br /> }<br /> <br /> @RequestMapping(value = "/main")<br /> public String main(Model model, HttpServletRequest request)throws Exception {<br /> return "/user/main";<br /> }<br /> <br /> <br /> @RequestMapping(value = "/password")<br /> public String password(Model model, HttpServletRequest request)throws Exception {<br /> return "/user/password";<br /> }<br /> <br /> <br /> @RequestMapping(value = "/changePassword")<br /> public ResponseEntity loginSave(Model model,HttpServletRequest request,String oldPassword,String newPassword) throws Exception {<br /> Map user = getUser(request);<br /> if(oldPassword.equals(user.get("password").toString())){<br /> String sql="update t_user set password=? where id=?";<br /> db.update(sql, new Object[]{newPassword,user.get("id")});<br /> return renderData(true,"1",null);<br /> }else{<br /> return renderData(false,"1",null);<br /> }<br /> }<br /> @RequestMapping(value = "/mine")<br /> public String mine(Model model, HttpServletRequest request)throws Exception {<br />Map user =getUser(request);Map map = db.queryForMap("select * from t_user where id=?",new Object[]{user.get("id")});model.addAttribute("map", map); return "/user/mine";<br /> }<br /> <br /> <br /><br /> @RequestMapping(value = "/mineSave")<br /> public ResponseEntity mineSave(Model model,HttpServletRequest request,Long id<br /> ,String username,String password,String name,String gh,String mobile) throws Exception{<br /> int result = 0;<br /> String sql="update t_user set name=?,gh=?,mobile=? where id=?";<br /> result = db.update(sql, new Object[]{name,gh,mobile,id});<br /> if(result==1){<br /> return renderData(true,"操作成功",null);<br /> }else{<br /> return renderData(false,"操作失败",null);<br /> }<br /> }<br /> }
通用管理模块:
package com.sxl.controller;<br /><br /><br />import java.nio.charset.Charset;<br />import java.util.Locale;<br />import java.util.ResourceBundle;<br /><br />import javax.servlet.http.HttpServletRequest;<br /><br />import org.apache.commons.lang.StringUtils;<br />import org.springframework.beans.factory.annotation.Autowired;<br />import org.springframework.http.HttpHeaders;<br />import org.springframework.http.HttpStatus;<br />import org.springframework.http.MediaType;<br />import org.springframework.http.ResponseEntity;<br /><br />import com.sxl.util.JacksonJsonUtil;<br />import com.sxl.util.StringUtil;<br />import com.sxl.util.SystemProperties;<br /><br /><br />public class BaseController {<br /> public static final Long EXPIRES_IN = 1000 * 3600 * 24 * 1L;// 1天<br /><br /> @Autowired<br /> private SystemProperties systemProperties;<br /><br /> /**<br /> * 获得配置文件内容<br /> */<br /> public String getConfig(String key) {<br /> return systemProperties.getProperties(key);<br /> }<br /><br /> /**<br /> * 返回服务器地址 like http://192.168.1.1:8441/UUBean/<br /> */<br /> public String getHostUrl(HttpServletRequest request) {<br /> String hostName = request.getServerName();<br /> Integer hostPort = request.getServerPort();<br /> String path = request.getContextPath();<br /><br /> if (hostPort == 80) {<br /> return "http://" + hostName + path + "/";<br /> } else {<br /> return "http://" + hostName + ":" + hostPort + path + "/";<br /> }<br /> }<br /><br /> /***<br /> * 获取当前的website路径 String<br /> */<br /> public static String getWebSite(HttpServletRequest request) {<br /> String returnUrl = request.getScheme() + "://"<br /> + request.getServerName();<br /><br /> if (request.getServerPort() != 80) {<br /> returnUrl += ":" + request.getServerPort();<br /> }<br /><br /> returnUrl += request.getContextPath();<br /><br /> return returnUrl;<br /> }<br /><br /><br /><br /> /**<br /> * 初始化HTTP头.<br /> * <br /> * @return HttpHeaders<br /> */<br /> public HttpHeaders initHttpHeaders() {<br /> HttpHeaders headers = new HttpHeaders();<br /> MediaType mediaType = new MediaType("text", "html",<br /> Charset.forName("utf-8"));<br /> headers.setContentType(mediaType);<br /> return headers;<br /> }<br /><br /> /**<br /> * 返回 信息数据<br /> * <br /> * @param status<br /> * @param msg<br /> * @return<br /> */<br /> public ResponseEntity renderMsg(Boolean status, String msg) {<br /> if (StringUtils.isEmpty(msg)) {<br /> msg = "";<br /> }<br /> String str = "{\"status\":\"" + status + "\",\"msg\":\"" + msg + "\"}";<br /> ResponseEntity responseEntity = new ResponseEntity(str,<br /> initHttpHeaders(), HttpStatus.OK);<br /> return responseEntity;<br /> }<br /><br /> /**<br /> * 返回obj数据<br /> * <br /> * @param status<br /> * @param msg<br /> * @param obj<br /> * @return<br /> */<br /> public ResponseEntity renderData(Boolean status, String msg,<br /> Object obj) {<br /> if (StringUtils.isEmpty(msg)) {<br /> msg = "";<br /> }<br /> StringBuffer sb = new StringBuffer();<br /> sb.append("{");<br /> sb.append("\"status\":\"" + status + "\",\"msg\":\"" + msg + "\",");<br /> sb.append("\"data\":" + JacksonJsonUtil.toJson(obj) + "");<br /> sb.append("}");<br /><br /> ResponseEntity responseEntity = new ResponseEntity(<br /> sb.toString(), initHttpHeaders(), HttpStatus.OK);<br /> return responseEntity;<br /> }<br /><br /><br /> /***<br /> * 获取IP(如果是多级代理,则得到的是一串IP值)<br /> */<br /> public static String getIpAddr(HttpServletRequest request) {<br /> String ip = request.getHeader("x-forwarded-for");<br /> if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {<br /> ip = request.getHeader("Proxy-Client-IP");<br /> }<br /><br /> if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {<br /> ip = request.getHeader("WL-Proxy-Client-IP");<br /> }<br /><br /> if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {<br /> ip = request.getRemoteAddr();<br /> }<br /><br /> if (ip != null && ip.length() > 0) {<br /> String[] ips = ip.split(",");<br /> for (int i = 0; i < ips.length; i++) {<br /> if (!"unknown".equalsIgnoreCase(ips[i])) {<br /> ip = ips[i];<br /> break;<br /> }<br /> }<br /> }<br /><br /> return ip;<br /> }<br /><br /> /**<br /> * 国际化获得语言内容<br /> * <br /> * @param key<br /> * 语言key<br /> * @param args<br /> * @param argsSplit<br /> * @param defaultMessage<br /> * @param locale<br /> * @return<br /> */<br /> public static String getLanguage(String key, String args, String argsSplit,<br /> String defaultMessage, String locale) {<br /> String language = "zh";<br /> String contry = "cn";<br /> String returnValue = defaultMessage;<br /><br /> if (!StringUtil.isEmpty(locale)) {<br /> try {<br /> String[] localeArray = locale.split("_");<br /> language = localeArray[0];<br /> contry = localeArray[1];<br /> } catch (Exception e) {<br /> }<br /> }<br /><br /> try {<br /> ResourceBundle resource = ResourceBundle.getBundle("lang.resource",<br /> new Locale(language, contry));<br /> returnValue = resource.getString(key);<br /> if (!StringUtil.isEmpty(args)) {<br /> String[] argsArray = args.split(argsSplit);<br /> for (int i = 0; i < argsArray.length; i++) {<br /> returnValue = returnValue.replace("{" + i + "}",<br /> argsArray[i]);<br /> }<br /> }<br /> } catch (Exception e) {<br /> }<br /><br /> return returnValue;<br /> }<br />}
源码获取: