文末获取源码
开发语言:Java
框架:SSM
JDK版本:JDK1.8
数据库:mysql 5.7
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.5.4
框架:uniapp
开发软件:HBuilder X
目录
前言
网络的广泛应用给生活带来了十分的便利。所以把校园考研论坛管理与现在网络相结合,利用java技术建设基于Android的校园考研论坛,实现校园考研论坛的信息化。则对于进一步提高校园考研论坛管理发展,丰富校园考研论坛管理经验能起到不少的促进作用。
基于Android的校园考研论坛能够通过互联网得到广泛的、全面的宣传,让尽可能多的会员了解和熟知基于Android的校园考研论坛的便捷高效,不仅为会员提供了服务,而且也推广了自己,让更多的会员了解自己。对于校园考研论坛而言,若拥有自己的APP,通过系统得到更好的管理,同时提升了形象。
本app设计的现状和趋势,从需求、结构、数据库等方面的设计到app的实现,分别为前后端实现。论文的内容从系统的设计、描述、实现、分析、测试方面来表明开发的过程。本app根据现实情况来选择一种可行的开发方案,借助java编程语言和MySQL数据库等实现app的全部功能,接下来对系统进行测试,测试系统是否有漏洞和测试用户权限来完善app,最终app完成达到相关标准。
系统展示
APP端(会员功能)
会员登录,会员进入app,输入自己的账号和密码,进行系统登录操作,如图5-1所示。
会员注册,进入会员注册页面,通过填写用户名,密码 ,确认密码,姓名,年龄,性别,手机等信息进行注册操作,如图5-2所示。
会员登陆系统后,可以对首页,考研论坛,我的等内容进行详细操作,如图5-3所示。
考研论坛,在考研论坛页面可以查看文章标题,话题分类,关键词,分布日期,账号,姓名,点击次数,已赞等信息,进行点赞操作,如图5-4所示。
用户,在我的页面可以对考研论坛,我的收藏管理,联系我们等详细信息进行操作,如图5-5所示。
用户信息,在用户信息页面通过账号,密码,姓名,年龄,性别,手机,照片等信息进行保存操作,如图5-6所示。
管理员功能模块
管理员登录,管理员通过输入用户名,密码,点击登录进入系统操作进行操作,如图5-7所示。
管理员登陆系统后,可以查看首页,个人中心,会员管理,话题分类管理,考研论坛管理,系统管理等功能,还能对每个功能逐一进行相应操作,如图5-8所示。
会员管理,在会员管理页面可以对索引,账号,姓名,年龄,性别,手机,照片等内容进行详情,修改或删除等操作,如图5-9所示。
话题分类管理,在话题分类管理页面可以对索引,话题分类等内容进行详情,修改或删除等操作,如图5-10所示。
考研论坛管理,在考研论坛管理页面可以对索引,文章标题,话题分类,关键词,封面,发布日期,账号,姓名等内容进行详情,修改,查看评论,删除等操作,如图5-11所示。
系统管理,在轮播图管理页面可以对索引,名称,值等内容进行详情,修改操作,还可对关于我们,联系我们进行相对应操作,如图5-12所示。
代码实现
登录功能实现代码
@IgnoreAuth
@PostMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null || !user.getPassword().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
return R.ok().put("token", token);
}
注册功能实现代码
@IgnoreAuth
@PostMapping(value = "/register")
public R register(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}
密码重置功能实现代码
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
if(user==null) {
return R.error("账号不存在");
}
user.setPassword("123456");
userService.update(user,null);
return R.ok("密码已重置为:123456");
}
修改信息功能实现代码
@RequestMapping("/update")
public R update(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));
if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {
return R.error("用户名已存在。");
}
userService.updateById(user);//全部更新
return R.ok();
}
删除信息功能实现代码
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
userService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
保存信息功能实现代码
@PostMapping("/save")
public R save(@RequestBody UserEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
return R.error("用户已存在");
}
userService.insert(user);
return R.ok();
}