java基于springboot的高校学报论文在线投稿系统

196 篇文章 5 订阅
188 篇文章 5 订阅

项目介绍

在新发展的时代,众多的软件被开发出来,给用户带来了很大的选择余地,而且人们越来越追求更个性的需求。在这种时代背景下,高校只能以工作人员为导向,以稿件的持续创新作为高校最重要的竞争手段。

功能介绍

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,Java(java server pages),和XML技术。JAVA语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务,开发者只需要知道一些概念就能够编写出一些应用程序。Java程序相对较小,其代码能够在小机器上运行。Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于高校Web应用程序开发和移动应用程序开发。
Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了改进。

请添加图片描述
系统采用了Java技术,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的数据库,开发工具选择 eclipse来进行系统的设计。基本实现了高校学报论文在线投稿系统应有的主要功能模块,本系统有管理员、作者和工作人员,管理员;首页、个人中心、作者管理、工作人员管理、新闻公告管理、稿件信息管理、论文投稿管理、论文类型管理、留言板管理、系统管理,工作人员;首页、个人中心、作者管理、新闻公告管理、稿件信息管理、论文投稿管理、论文类型管理、留言板管理,作者;首页、个人中心、新闻公告管理、稿件信息管理、论文投稿管理,前台首页;首页、新闻公告、稿件信息、报刊资讯、留言反馈、个人中心、后台管理、管理人员等操作。
对系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,并且该系统有很好的操作体验,实现了高校学报论文在线投稿系统。

开发环境

java基于springboot的高校学报论文在线投稿系统
开发语言:Java+mysql+vue
开发工具:IDEA /Eclipse
数据库:MYSQL5.7
应用服务:Tomcat7/Tomcat8
使用框架:springboot+vue
可定制框架:ssm/Springboot/vue/python/PHP/小程序/安卓均可开发

系统截图

高校学报论文在线投稿系统,在高校学报论文在线投稿系统可以查看首页、新闻公告、稿件信息、报刊资讯、留言反馈、个人中心、后台管理、管理人员等内容,如图请添加图片描述
作者注册,在注册页面填写作者账号、密码、作者姓名、用户手机等信息进行注册,如图
请添加图片描述
新闻公告,在新闻公告页面可以查看公告标题、公告类型、发布时间、发布人、公告文件、封面等信息进行提交,如图请添加图片描述
稿件信息,在稿件信息页面可以查看稿件编号、论文题目、论文类型、论文作者、投稿日期、论文状态、论文图片、审核专家编号、审核专家姓名等信息进行我要投稿、点我收藏,如图
请添加图片描述
请添加图片描述

后台部分展示

管理员输入个人的用户名、密码、角色登录系统,这时候系统的数据库就会在进行查找相关的信息,如果我们输入的用户名、密码、角色不正确,数据库就会提示出错误的信息提示,同时会提示管理员重新输入自己的用户名、密码、角色,直到账号密码输入成功后,会提登录成功的信息。管理员登录效果图如图
请添加图片描述
作者进入高校学报论文在线投稿系统可以对首页、个人中心、新闻公告管理、稿件信息管理、论文投稿管理等功能进行相对应操作。程序成效图如下图请添加图片描述
工作人员进入高校学报论文在线投稿系统可以对首页、个人中心、作者管理、新闻公告管理、稿件信息管理、论文投稿管理、论文类型管理、留言板管理等功能,进行相对应操作。程序成效图如下图请添加图片描述
请添加图片描述
摘 要 I
Abstract II
第1章 前 言 3
1.1 研究背景 3
1.2 研究现状 3
1.3 系统开发目标 3
第2章 系统开发环境 5
2.1 JAVA简介 5
2.2 MySql数据库 5
2.4 Spring Boot框架 6
2.5 ECLIPSE 开发环境 7
第3章 需求分析 8
3.1 需求分析 8
3.2 系统可行性分析 8
3.3 项目设计目标与原则 8
3.4 系统流程分析 9
第4章 架构设计 11
4.1 系统体系结构 11
4.2 数据库实体设计 12
4.3 数据库表设计 14
第5章 系统实现 17
5.1 管理员登录 17
5.2 管理员功能模块 18
5.3 工作人员功能模块 20
5.4 作者功能模块 22
5.5前台首页功能模块 24
第6章 系统测试 27
6.1 测试目的 27
6.2 测试方法 28
6.3 功能测试 28
6.4 测试结论 29
第7章 结 论 31
参考文献 31
致 谢 33


/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private TokenService tokenService;

	/**
	 * 登录
	 */
	@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();
    }

	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		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("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
    	PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }

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

    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
    	Long id = (Long)request.getSession().getAttribute("userId");
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }

    /**
     * 保存
     */
    @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();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        userService.updateById(user);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wqq6310855

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

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

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

打赏作者

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

抵扣说明:

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

余额充值