——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Node.js≥14
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
❗没学过node.js的不要搞前后端分离项目
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot技术交流和分享平台(java+springboot+mybaits+vue+elementui+mysql)
项目介绍
springbootIT技术交流和分享平台的设计与实现
环境需要
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项目:是;
技术栈
后端:SpringBoot+Mybaits
前端:Vue + elementui
使用说明
项目运行:
使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令;
将项目中application.yml配置文件中的数据库配置改为自己的配置;
运行项目,在浏览器中输入地址:
前台地址:http://localhost:8080/springbootrpj39/front/index.html
后台地址
http://localhost:8080/springbootrpj39/admin/dist/index.html
管理员 abo 密码 abo
用户:用户1 密码: 123456
注意项目文件路径中不能含有中文、空格、特殊字符等,否则图片会上传不成功。
——————————CodeStart——————————
用户操作页面:
/*
- 用户操作页面
*/
@Controller
@RequestMapping(“/user”)
public class UserContriller {
@Autowired
UserService userService;
//跳转个人首页首页
@RequestMapping(“index.do”)
public String index(HttpServletRequest request) {
if(Tool.ismobile(request)){
return “jsp/mobile/user/user”;
}else{
return “jsp/index/user/user-ziliao”;
//查看个人资料
@RequestMapping(“ziliao.do”)
public String ziliao(HttpServletRequest request) {
if(Tool.ismobile(request)){
return “jsp/mobile/user/user-ziliao”;
}else{
return “jsp/index/user/user-ziliao”;
//修改用户
@RequestMapping(“update.do”)
public String update(HttpServletRequest request, Model model,User user) {
User sessionuser=(User)request.getSession().getAttribute(PublicStatic.USER);
user.setId(sessionuser.getId());
userService.update(user);
user=userService.findbyuserid(sessionuser.getId());
request.getSession().setAttribute(PublicStatic.USER, user);
return “redirect:/user/index.do”;
//退出
@RequestMapping(“logout.do”)
public String logout(HttpServletRequest request,HttpServletResponse response) {
HttpSession session = request.getSession();
session.invalidate();
Cookie[] cookies=request.getCookies();
for(Cookie cookie: cookies){
cookie.setMaxAge(0);
cookie.setPath(“/“);
response.addCookie(cookie);
return “redirect:/“;
//跳转修改密码
@RequestMapping(“topwd.do”)
public String topwd(HttpServletRequest request) {
return “jsp/index/user/user-pwd”;
//修改密码
@ResponseBody
@RequestMapping(“pwd.do”)
public String pwd(HttpServletRequest request,String pwd ,String newpwd) {
User sessionuser=(User)request.getSession().getAttribute(PublicStatic.USER);
User user=new User();
user.setId(sessionuser.getId());
user.setPwd(pwd);
String login = userService.login(user, request);
if(“1”.equals(login)){
user.setPwd(Tool.MD5(newpwd));
userService.update(user);
return “1”;
}else{
return “0”;
后台用户管理页面:
/*
- 后台用户管理页面
*/
@Controller
@RequestMapping(“/admin/user”)
public class AdminUserContriller {
@Autowired
UserService userService;
@Autowired
GroupService groupService;
@Autowired
JifenGroupService jifenGroupService;
//跳转首页
@RequestMapping(“index.do”)
public String add(HttpServletRequest request, Model model,User user,PageBean
page = userService.findpage(user,page);
model.addAttribute(“page”, page);
model.addAttribute(“quser”, user);
return “jsp/admin/user/index”;
//更新
@RequestMapping(“update.do”)
public String update(HttpServletRequest request, Model model,User user) {
User sessionuser=(User)request.getSession().getAttribute(PublicStatic.USER);
user.setId(sessionuser.getId());
userService.update(user);
return “redirect:/user/index.do”;
//删除
@ResponseBody
@RequestMapping(“del.do”)
public String del(HttpServletRequest request, Model model,User user) {
return userService.delete(user.getId());
//重置密码
@ResponseBody
@RequestMapping(“updatepwd.do”)
public String updatepwd(HttpServletRequest request, Model model,User user) {
String pwd=”123456”;
user.setPwd(Tool.MD5(pwd));
userService.update(user);
return “1”;
//重置密码
@ResponseBody
@RequestMapping(“updateflag.do”)
public String updateflag(HttpServletRequest request, Model model,User user) {
userService.update(user);
return “1”;
//设置管理员
@ResponseBody
@RequestMapping(“updategroup.do”)
public String updategroup(HttpServletRequest request, Model model,User user,int groupid) {
boolean b = groupService.updategroupbyuser(user.getId(), groupid);
if(b){
return “1”;
}else{
return “0”;
//删除用户帖子 留言 回帖 图片等信息信息
@ResponseBody
@RequestMapping(“deluserallinfo.do”)
public String deluserallinfo(HttpServletRequest request, Model model,User user) {
boolean b = userService.deluserallinfo(user.getId());
if(b){
return “1”;
}else{
return “0”;
@RequestMapping(“tooptions.do”)
public String tooptions(HttpServletRequest request, Model model,User user){
user = userService.findbyid(user);
model.addAttribute(“user”, user);
return “jsp/admin/user/option”;
/**
设置用户vip等级
@param request
@param model
@param user
@return
*/
@RequestMapping(value=”set_vip.do”,method=RequestMethod.GET)
public String setVip(Model model,User user){
user = userService.findbyid(user);
model.addAttribute(“user”, user);
model.addAttribute(“jifenGroupList”, jifenGroupService.find(null));
return “jsp/admin/user/set_vip”;
/**
设置用户vip等级表单提交
@param userId
@param jifen
@return
*/
@RequestMapping(value=”set_vip.do”,method=RequestMethod.POST)
public String setVip(Integer userId, String vipLevel){
User user = new User();
user.setId(userId);
user = userService.findbyid(user);
user.setVipLevel(vipLevel);
userService.update(user);
return “redirect:index.do”;
上传图片控制层:
/*
- 上传图片
*/
@Controller
@RequestMapping(“/upload”)
public class UploadController {
@ResponseBody
@RequestMapping(“uploadimg.do”)
public Map<String, String> findAllWhere(HttpServletRequest request) throws IOException {
//0代表失败,1代表成功,2格式错误
Map<String, String> map=new HashMap<String, String>();
// 转型为MultipartHttpRequest
try {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
List
for (MultipartFile mf : fileList) {
if(!mf.isEmpty()){
try {
// 文件保存路径
String dirname=Tool.getyyyyMMdd();
String filePath =PublicStatic.FILE_PATH+”image/“+dirname+”/“;
File file = new File(filePath);
if (!file.exists()) {
file.mkdirs();
String filenamelast=getfilenamelast(mf.getOriginalFilename()).toUpperCase();
if(!filenamelast.equals(“.JPG”)&&!filenamelast.equals(“.GIF”)&&!filenamelast.equals(“.JPEG”)&&!filenamelast.equals(“.PNG”)&&!filenamelast.equals(“.SWF”)){
map.put(“isok”, “2”);
}else{
filenamelast=Tool.getyyyyMMddHHmmssSSS()+Tool.getRandom()+filenamelast;
map.put(“isok”, “1”);
map.put(“path”, dirname+”/“+filenamelast);
// 转存文件
mf.transferTo(new File(filePath+filenamelast));
} catch (Exception e) {
map.put(“isok”, “0”);
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
return map;
//获取文件名
private String getfilenamelast(String filename){
int start=filename.lastIndexOf(“.”);
if(start!=-1){
filename=filename.substring(start, filename.length());
return filename;
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=531125130706201re
https://javayms.pages.dev?id=531125130706201re