计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)

项目介绍

使用在线动漫信息平台的用户分管理员和会员两个角色的权限子模块。
管理员所能使用的功能主要有:首页、个人中心、动漫分类管理、热门动漫管理、文章专栏管理、会员管理、会员分享管理、论坛管理、系统管理等。
会员可以实现首页、个人中心、会员分享管理、我的收藏管理等。
前台首页实现热门动漫、文章专栏、会员分享、论坛信息、个人中心、后台管理等。

管理员登录后可进行首页、个人中心、动漫分类管理、热门动漫管理、文章专栏管理、会员管理、会员分享管理、论坛管理、系统管理,管理员的用例如图
计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第1张图片
前台首页页面:首页、热门动漫、文章专栏、会员分享、论坛信息、个人中心、后台管理,前台首页用例如图
计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第2张图片

开发环境

计算机毕业设计基于springboot+vue+elementUI的在线动漫平台 前后端分离(源码+系统+mysql数据库+Lw文档)
开发语言:Java
开发工具:IDEA /Eclipse
数据库:MYSQL5.7
应用服务:Tomcat7/Tomcat8
使用框架:ssm+vue
可定制框架:ssm/Springboot/vue/python/PHP/小程序/安卓均可开发

系统截图

注册、登录账户和登录密码,然后我们使用程序来检索,检索数据库中的账户信息一致输入账号密码,如果输入账号信息让会员登录时,如果它不存在,给一个提示,非法登陆,所以这个功能模块是非常重要的。
会员通过网址进入到网站界面,进行填写自己的会员名和密码等信息输入完成后会员登录成功,如图5-1所示,如果会员没有自己的账户信息,则需要会员进行在线注册,会员注册时根据需求可以通过注册界面提示的文本框信息进行在线填写自己的基本信息内容,信息编辑完成后核对信息无误后进行在线提交,新的会员登陆完成
计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第3张图片

当用户在上一步中点击了想要看的动漫的图片或者标题之后系统会自动的跳转到动漫详情页面。在动漫详情页面可以看到动漫的封面名称,标签,作者,更新时间。并且可以以视频的方式进行播放,同时还可以进行收藏和点赞。
计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第4张图片
在动漫详情页面中,用户除了观看动漫和点赞收藏之外,还可以在登录之后进行评论。
计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第5张图片
本系统是一个综合性的动漫交流平台,用户可以在论坛中心中发布帖子,并且可以查看和回复他人的帖子。
计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第6张图片
本等界面为管理人员对动漫信息的管理界面。主要包括动漫名称动漫分类标签图片作者视频更新时,动漫分类,标签,图片,作者,视频,更新时间的内容。同时还可以查看动漫的详细信息和他人对动漫的评论信息。计算机毕业设计基于springboot+vue+elementUI的在线动漫漫画投稿播放平台 前后端分离(源码+系统+mysql数据库+Lw文档)_第7张图片


/**
 * 热门动漫
 * 后端接口
 * @author 
 * @email 
 * @date 2021-01-05 19:42:08
 */
@RestController
@RequestMapping("/remendongman")
public class RemendongmanController {
    @Autowired
    private RemendongmanService remendongmanService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,RemendongmanEntity remendongman, HttpServletRequest request){
        EntityWrapper<RemendongmanEntity> ew = new EntityWrapper<RemendongmanEntity>();
		PageUtils page = remendongmanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, remendongman), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,RemendongmanEntity remendongman, HttpServletRequest request){
        EntityWrapper<RemendongmanEntity> ew = new EntityWrapper<RemendongmanEntity>();
		PageUtils page = remendongmanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, remendongman), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( RemendongmanEntity remendongman){
       	EntityWrapper<RemendongmanEntity> ew = new EntityWrapper<RemendongmanEntity>();
      	ew.allEq(MPUtil.allEQMapPre( remendongman, "remendongman")); 
        return R.ok().put("data", remendongmanService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(RemendongmanEntity remendongman){
        EntityWrapper< RemendongmanEntity> ew = new EntityWrapper< RemendongmanEntity>();
 		ew.allEq(MPUtil.allEQMapPre( remendongman, "remendongman")); 
		RemendongmanView remendongmanView =  remendongmanService.selectView(ew);
		return R.ok("查询热门动漫成功").put("data", remendongmanView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        RemendongmanEntity remendongman = remendongmanService.selectById(id);
		remendongman.setClicknum(remendongman.getClicknum()+1);
		remendongman.setClicktime(new Date());
		remendongmanService.updateById(remendongman);
        return R.ok().put("data", remendongman);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") String id){
        RemendongmanEntity remendongman = remendongmanService.selectById(id);
		remendongman.setClicknum(remendongman.getClicknum()+1);
		remendongman.setClicktime(new Date());
		remendongmanService.updateById(remendongman);
        return R.ok().put("data", remendongman);
    }
    


    /**
     * 赞或踩
     */
    @RequestMapping("/thumbsup/{id}")
    public R vote(@PathVariable("id") String id,String type){
        RemendongmanEntity remendongman = remendongmanService.selectById(id);
        if(type.equals("1")) {
        	remendongman.setThumbsupnum(remendongman.getThumbsupnum()+1);
        } else {
        	remendongman.setCrazilynum(remendongman.getCrazilynum()+1);
        }
        remendongmanService.updateById(remendongman);
        return R.ok("投票成功");
    }

    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody RemendongmanEntity remendongman, HttpServletRequest request){
    	remendongman.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(remendongman);
        remendongmanService.insert(remendongman);
        return R.ok();
    }

你可能感兴趣的:(vue.js,数据库,spring,boot)