——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明






基于javaweb的SpringBoot爱心捐赠管理系统(java+springboot+html+thymeleaf+mybatis+mysql+maven)
项目介绍
本项目分两种角色:管理员、用户。
项目功能:注册、登录、修改密码、捐赠衣服、论坛交流、爱心许愿、统计分析、捐赠记录、用户管理等等功能。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 5.7版本;
5.是否Maven项目:是;
技术栈
SpringBoot + FreeMarker + JPA
使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行;
将项目中application-dev.properties配置文件中的数据库配置改为自己的配置;
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
@RequestMapping("/insertDonationList") public String insertDonationList(@RequestBody List<Donation> list) { return donationService.insertDonationList(list); }
@RequestMapping("/deleteDonation") public String deleteDonation(String id) { return donationService.deletePhysical(id); }
@RequestMapping("/selfDonation") public List<Map<String, Object>> selfDonation(){ User currentUser = UserContext.getCurrentUser(); List<Map<String, Object>> listMap = donationService.countSelfDonation(currentUser.getId()); return listMap; }
@RequestMapping("/updateVerify") public String updateVerify(String id, Integer verify){ return donationService.updateVerifyById(id, verify); }
@RequestMapping("/echartsDataOne") public List<Map<String, String>> echartsDataOne(){ List<Donation> allList = donationService.selectAllList(); Map<String, List<Donation>> allMap = allList.stream().peek(o -> { if(o.getKind() == 0){
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
@Controller @RequestMapping("/file") public class FileController {
public static String filePrePath = System.getProperty("user.dir")+ "\\src\\main\\resources\\static\\";
@RequestMapping("/imagesUpload") @ResponseBody public String imagesUpload(@RequestParam("file") MultipartFile file){ Map<String, Object> resultMap = new HashMap<>(4); try{ String filename = file.getOriginalFilename(); String extName = FileNameUtil.getSuffix(filename); String newFileName = IdUtil.simpleUUID() + "." +extName; String pathString = filePrePath + "forumImg\\" + newFileName; File f = new File(pathString); file.transferTo(f); String base64 = "data:image/"+extName+";base64," + Base64.encode(f); resultMap.put("code",0); resultMap.put("data", newFileName); resultMap.put("baseData", base64); return JSON.toJSONString(resultMap); }catch(Exception e){
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| for(String currentDate : dateList){ List<Donation> list = allList.stream().filter(o -> currentDate.equals(o.getCreateDate().split(" ")[0])).collect(Collectors.toList()); agreeList.add(String.valueOf(list.stream().filter(o -> o.getVerify() == 1).count())); refuseList.add(String.valueOf(list.stream().filter(o -> o.getVerify() == 2).count())); waitList.add(String.valueOf(list.stream().filter(o -> o.getVerify() == 0).count())); } resultMap.put("dateList", dateList); resultMap.put("agreeList", agreeList); resultMap.put("refuseList", refuseList); resultMap.put("waitList", waitList); return resultMap;
}
} package com.lc.controller;
@RestController @RequestMapping("/user") public class UserController {
@Autowired UserService userService; @Autowired DonationService donationService; @Autowired ArticleService articleService; @Autowired MessageService messageService; @Autowired WishService wishService;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
public class UserContext {
private static final String USER_IN_SESSION = "CURRENT_USER";
public static HttpSession getSession() { return ((ServletRequestAttributes) (RequestContextHolder.getRequestAttributes())).getRequest().getSession(); }
public static void setCurrentUser(User user) { if(user == null) { getSession().invalidate(); }else { getSession().setAttribute(USER_IN_SESSION,user); } }
public static User getCurrentUser() { return (User) getSession().getAttribute(USER_IN_SESSION); }
} package com.lc.filter;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| */ @RequestMapping("/updateVerify") public String updateVerify(String id, Integer verify){ return donationService.updateVerifyById(id, verify); }
@RequestMapping("/echartsDataOne") public List<Map<String, String>> echartsDataOne(){ List<Donation> allList = donationService.selectAllList(); Map<String, List<Donation>> allMap = allList.stream().peek(o -> { if(o.getKind() == 0){ o.setKindName("上衣"); }else if(o.getKind() == 1){ o.setKindName("裤子"); }else if(o.getKind() == 2){ o.setKindName("袜子"); }else if(o.getKind() == 3){ o.setKindName("手套"); }else if(o.getKind() == 4){ o.setKindName("帽子"); }else if(o.getKind() == 5){ o.setKindName("其他"); } }).collect(Collectors.groupingBy(Donation::getKindName)); List<Map<String, String>> listMap = new ArrayList<>(); for(Map.Entry<String, List<Donation>> map : allMap.entrySet()){ Double sum = map.getValue().stream().mapToDouble(Donation::getNumber).sum(); Map<String, String> itemMap = new HashMap<String, String>(); itemMap.put("value", String.valueOf(sum)); itemMap.put("name", map.getKey()); listMap.add(itemMap); } return listMap; }
@RequestMapping("/echartsDataTwo") public Map<String, List<String>> echartsDataTwo(){ Map<String, List<String>> resultMap = new HashMap<>(); List<String> dateList = new ArrayList<>(); String today= DateUtil.today(); Date date = DateUtil.parse(today); for(int i=0; i<7; i++){
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
@RequestMapping("detailPage") public String detailPage(String articleId) { return "user/detailPage"; }
@RequestMapping("wishPage") public String wishPage() { return "user/wishPage"; }
@RequestMapping("wishForm") public String wishForm() { return "user/wishForm"; }
@RequestMapping("managerUser") public String managerUser() { return "manager/managerUser"; }
@RequestMapping("userForm") public String userForm() { return "manager/userForm"; }
@RequestMapping("managerDonation") public String managerDonation() { return "manager/managerDonation"; }
@RequestMapping("managerForum")
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=011023501103200zi
https://javayms.pages.dev?id=011023501103200zi