Java项目:技术交流和分享平台(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

使用说明
项目运行:
1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入地址:
前台地址:http://localhost:8080/springbootrpj39/front/index.html

后台地址
http://localhost:8080/springbootrpj39/admin/dist/index.html
管理员 abo 密码 abo
用户:用户1 密码: 123456

注意项目文件路径中不能含有中文、空格、特殊字符等,否则图片会上传不成功。

 

 

 

 

 

 

用户操作页面: 

/*
 * 用户操作页面
 * 
 */
@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<User> page) {
		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<MultipartFile> fileList = multipartRequest.getFiles("file");  
            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;
    }
    
}

源码获取:俺的博客首页 "资源" 里下载!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OldWinePot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值