Java项目:漫画之家管理系统(java+SpringBoot+Vue+ElementUI+Layui+Mysql)

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

项目介绍

基于SpringBoot Vue的漫画之家系统

角色:管理员、用户

管理员:管理员登录进入系统可以查看首页,个人中心,用户管理,漫画管理,同人插画管理,漫画活动管理,商品管理,论坛管理,我的收藏管理,留言板管理,系统管理,订单管理等功能

用户:在用户管理页面中可以查看索引,用户账号,用户姓名,性别,联系方式,头像等内容,并进行详情,修改和删除等操作


环境需要

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+Layui+HTML+CSS+JS


使用说明

项目运行:
1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,控制台提示运行成功后再去运行前端项目;
5. 管理员用户名密码:admin/admin
普通用户名密码:user/123456

 

 

 

管理员控制层: 

@Controller
@RequestMapping("/admin")
public class UserController {

    @Autowired
    private IUserService userService;

    //加载列表界面
    @RequestMapping("/userView")
    public String showUser() {
        return "user/user";
    }


    //跳转add页面
    @RequestMapping("/addView")
    public String userAddView() {

        return "user/userAdd";
    }

    @RequestMapping(value = "/userAdd", method = RequestMethod.POST)
    @ResponseBody
    public String userAdd(@RequestBody User user) {
        int insert = userService.insert(user);
        if (insert < 0) {
            return "error";
        }
        return "success";
    }

    //page=1&limit=10
    @RequestMapping(value = "/userList", method = RequestMethod.GET)
    public @ResponseBody
    Map<String, Object> showUserList(@RequestParam("page") int page, @RequestParam("limit") int limit,
                                     String keyword1, String keyword2) {
        System.out.println("keyword1 = " + keyword1);
        System.out.println("keyword2 = " + keyword2);
        //查询结果集对象
        List<User> countData = userService.selectAll(keyword1, keyword2);
        //封装json数据
        Map<String, Object> resultMap = new HashMap<String, Object>();
        //分页
        if (page < 0) {
            page = 1;
            PageHelper.startPage(page, limit);
        }
        List<User> users = userService.selectAll(keyword1, keyword2);
        resultMap.put("code", 0);
        resultMap.put("msg", "");
        //结果总数
        resultMap.put("count", countData.size());
        //结果对象数据
        resultMap.put("data", users);
        return resultMap;
    }

    @RequestMapping("/delete")
    @ResponseBody
    public String delete(@RequestParam("id") Long id) {
        System.out.println("id = " + id);
        int index = userService.deleteByPrimaryKey(id);
        if (index > 0) {
            return "success";
        }
        //删除失败返回error
        return "error";
    }

    @RequestMapping("/update")
    @ResponseBody
    public String update(@RequestBody User user) {
        if (user != null) {
            int index = userService.updateByPrimaryKey(user);
            if (index > 0) {
                return "success";
            }
        }
        return "error";
    }

}

 登录控制层:

@Controller
public class LoginController {

    //依赖Mapper
    @Autowired
    private UserMapper mapper;

    //处理验证码
    @RequestMapping("/imageCode")
    public void imgCode(HttpServletRequest request, HttpServletResponse response) throws IOException {
        //这个方法实现验证码的生成
        BufferedImage bi = new BufferedImage(68, 22, BufferedImage.TYPE_INT_RGB);//创建图像缓冲区
        Graphics g = bi.getGraphics(); //通过缓冲区创建一个画布
        Color c = new Color(200, 150, 255); //创建颜色
        /*根据背景画了一个矩形框
         */
        g.setColor(c);//为画布创建背景颜色
        g.fillRect(0, 0, 68, 22); //fillRect:填充指定的矩形

        char[] ch = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toCharArray();//转化为字符型的数组
        Random r = new Random();
        int len = ch.length;
        int index; //index用于存放随机数字
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < 4; i++) {
            index = r.nextInt(len);//产生随机数字
            g.setColor(new Color(r.nextInt(88), r.nextInt(188), r.nextInt(255)));  //设置颜色
            g.drawString(ch[index] + "", (i * 15) + 3, 18);//画数字以及数字的位置
            sb.append(ch[index]);
        }
        request.getSession().setAttribute("imgCode", sb.toString()); //将数字保留在session中,便于后续的使用
        ImageIO.write(bi, "JPG", response.getOutputStream());
    }

    //登入处理
    @RequestMapping(value = "/login", method = {RequestMethod.POST, RequestMethod.GET})
    public ModelAndView login(@RequestParam("loginname") String loginname, @RequestParam("password") String password,
                              @RequestParam("imgCode") String imgCode, HttpSession session, ModelAndView mv) {
        User user = mapper.selectByLogin(loginname, password);
        //取出session中的验证码
        String imgCode1 = (String) session.getAttribute("imgCode");
        System.out.println("user = " + user);

        //校验账号密码
        if (user == null) {
            session.setAttribute("errorMsg", "账号密码错误!请检查!");
            session.setAttribute("loginname", loginname);
            // 服务器内部跳转到登录页面
            mv.setViewName("forward:/login.jsp");
            return mv;

            //检验验证码
        } else if (!(imgCode.equals(imgCode1))) {
            session.setAttribute("errorMsg", "验证码错误!请重新输入!");
            session.setAttribute("loginname", loginname);
            // 服务器内部跳转到登录页面
            mv.setViewName("forward:/login.jsp");
            return mv;
        } else if (user.getState() == 0) {
            session.setAttribute("errorMsg", user.getLoginname()+"用户被锁定!请联系管理员!");
            session.setAttribute("loginname", loginname);
            // 服务器内部跳转到登录页面
            mv.setViewName("forward:/login.jsp");
            return mv;
        }
        //存储用户登入信息
        UserContext.setUserInSession(user);
        // 客户端跳转到main页面
        mv.setViewName("redirect:/main");
        return mv;
    }

    @RequestMapping("/main")
    public String main() {
        return "main";
    }

    //注销处理
    @RequestMapping("/loginOut")
    public String invalidate(HttpSession session) {
        session.invalidate();
        return "redirect:login.jsp";
    }
}

首页管理控制层: 

@Controller
public class WelcomeController {

    @RequestMapping("/hello")
    public String welcome(){

        return "common/welcome";
    }

    //跳转到主页
    @RequestMapping("/index")
    public String index(){

        return "/main.jsp";
    }

}

 

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

beyondwild

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

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

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

打赏作者

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

抵扣说明:

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

余额充值