首页 > 数据库 >Java毕设项目案例实战II基于Spring Boot的科研项目验收管理系统(开发文档+数据库+源码)

Java毕设项目案例实战II基于Spring Boot的科研项目验收管理系统(开发文档+数据库+源码)

时间:2024-10-16 19:50:38浏览次数:9  
标签:username 毕设 return ok 源码 user userService Java public

目录

一、前言

二、技术介绍

三、系统实现

四、论文参考

五、核心代码

六、源码获取


全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末

一、前言

随着科研活动的日益增多,科研项目验收作为项目管理的关键环节,其重要性愈发凸显。传统的验收方式往往流程繁琐、效率低下,且难以保证验收结果的客观性和公正性。为了提升科研项目验收的效率和质量,我们基于Spring Boot框架开发了一款科研项目验收管理系统本系统充分利用Spring Boot的灵活性和扩展性,实现了项目申报、审批、实施、验收等全流程的信息化管理。通过系统,科研人员和管理人员可以实时跟踪项目进度,了解项目进展情况和存在的问题,确保项目按计划顺利推进。同时,系统还提供了丰富的数据分析和报表生成功能,为科研项目管理和决策提供有力支持。我们相信,这款科研项目验收管理系统的推出,将极大地提升科研项目管理的效率和水平,为科研事业的发展贡献力量。

二、技术介绍

语言:Java
使用框架:Spring Boot
前端技术:JS、Vue 、css3
开发工具:IDEA/Eclipse
数据库:MySQL 5.7/8.0
数据库管理工具:phpstudy/Navicat
JDK版本:jdk1.8
Maven: apache-maven 3.8.1-bin
前端环境:Node.Js 12\14\16

三、系统实现

系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。下图就是管理员登录页面。

 项目管理页面提供的功能操作有:查看项目,删除项目操作。下图就是项目管理页面。

公告信息管理页面提供的功能操作有:新增公告,修改公告,删除公告操作。下图就是公告信息管理页面。 

 公告类型管理页面显示所有公告类型,在此页面既可以让管理员添加新的公告信息类型,也能对已有的公告类型信息执行编辑更新,失效的公告类型信息也能让管理员快速删除。下图就是公告类型管理页面。

 

四、论文参考

五、核心代码

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

六、源码获取

 感谢大家点赞、收藏、关注、评论啦 、获取联系方式在个人简介绿泡泡

标签:username,毕设,return,ok,源码,user,userService,Java,public
From: https://blog.csdn.net/Seapostmoon/article/details/142966693

相关文章

  • 一个标准java程序的创建和使用
    创建1.创建一个记事本,在记事本中写入JAVA代码2.另存为一个后缀为.java的文件,注意,文件名要与类名相同,且存储为ANSI文件 3.点击右键,从终端打开,然后按照如下图方法运行(cat查看文件内容) 命名规范:1.大驼峰:类名2.小驼峰:变量名,方法名,文件名,文件夹名3.全部大写:常量名字命......
  • Java毕设项目案例实战II基于Spring Boot的校园资产管理系统(开发文档+数据库+源码)
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言在信息化技术日益普及的今天,高效、智能的......
  • JAVA基础知识点
    C/C++速度快JAVA大型web开发,手机端安卓(JAVA是HTML的扩展)C# 中小型Web,桌面程序开发SHELL,VB操作指令Python数字处理,中小型网站PHP中小型网站Arrays.toString(args)对于importjava.util具有依赖作用JAVA特点:1)简单性//语法相较C更简易2)面向对象 3)分......
  • Java毕设项目案例实战II基于Spring Boot的在线互动学习网站(开发文档+数据库+源码)
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着互联网技术的飞速发展,教育领域也迎来......
  • 数据结构八大排序的java实现
    冒泡排序package排序;importjava.util.Arrays;publicclassBubbleSort{   publicstaticvoidmain(String[]args){      int[]arr={5,7,4,2,0,3,1,6};      sort(arr);      System.out.println(Arrays.toString(arr));   }......
  • java_day13_ArrayList、Vector、LinkedList、泛型
    一、ArrayListCollection[接口]:List[接口]:元素有序,可以发生重复,有索引的概念ArrayList[具体的子类]:底层数据结构是数组,查询快,增删慢,线程不安全,效率高。Set[接口]:元素无序且唯一,没有索引代码案例publicclassArrayListDemo1{publicstaticv......
  • java 堆oom进程还在吗 在
    java堆oom进程还在吗我整理的一些关于【Java转架构设计】的项目学习资料+视频(附讲解~~)和大家一起分享、学习一下: https://d.51cto.com/bLN8S1实现"java堆OOM进程还在吗"的步骤1.理解问题在开始解决问题之前,首先需要理解"java堆OOM进程还在吗"这个问题的含义。Java中的OOM(Out......
  • 2024年 Java 面试八股文(20w字)
    第一章-Java基础篇1、你是怎样理解OOP面向对象   难度系数:⭐面向对象是利于语言对现实事物进行抽象。面向对象具有以下特征:继承:继承是从已有类得到继承信息创建新类的过程封装:封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口多态性:多态性是指允......
  • Java最新版面试题(全网最全、高频)
    面向对象三大特性1、面向对象的特征有哪些方面面向对象的特征主要有以下几个方面:抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。封装:封装把一个对象的属性私有......
  • java 查看jvm使用哪个垃圾回收器 -XX:+PrintCommandLineFlags
    java查看jvm使用哪个垃圾回收器在Java中,你可以通过查看JVM启动参数来确定使用的垃圾收集器。你可以使用java命令的-XX:+PrintCommandLineFlags参数来打印出JVM的启动配置,包括选择的垃圾收集器。例如,你可以通过以下命令运行Java应用程序来查看使用的垃圾收集器:java-XX:+PrintC......