基于SpringBoot实习生管理系统的设计与实现

博主主页:一点教程
博主简介:专注Java技术领域和毕业设计项目实战、Java微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。
主要内容:毕业设计,SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Python、Nodejs、小程序、安卓app、大数据等设计与开发

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以和博主沟通,希望帮助更多的人

🍅文末获取联系🍅

一、项目介绍 

本实习生管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此实习生管理系统利用当下成熟完善的SpringBoot框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线查看数据。管理员管理字典表管理、辅导员管理、公告管理、简历管理、企业管理、实习生培养记录管理、实习作业管理、用户管理、职位招聘管理、职位收藏管理、职位留言管理、简历投递管理、管理员管理等功能。

二、系统主要技术 

开发语言:Java
 
使用框架:spring boot
 
前端技术:Vue 、css、element-ui、js、html
 
开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code
 
数据库:MySQL 5.7/8.0
 
数据库管理工具:phpstudy/Navicat
 
JDK版本:jdk1.8
 
Maven: apache-maven 3.8.1-bin

三、系统结构设计

在分析并得出使用者对程序的功能要求时,就可以进行程序设计了。如图4.3展示的就是管理员功能结构图,管理员在后台主要管理字典表管理、辅导员管理、公告管理、简历管理、企业管理、实习生培养记录管理、实习作业管理、用户管理、职位招聘管理、职位收藏管理、职位留言管理、简历投递管理、管理员管理等。

四、部分功能展示 

5.1 管理员功能介绍

5.1.1 职位招聘列表

如图5.1显示的就是职位招聘列表页面,此页面提供给管理员的功能有:查看职位招聘、新增职位招聘、修改职位招聘、删除职位招聘等。

图5.1 职位招聘列表页面

5.1.2 公告信息管理

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

图5.3 公告信息管理页面

5.1.3公告类型管理

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

图5.3 公告类型列表页面

5.1.4 企业管理

如图5.4显示的就是企业管理页面,此页面提供给管理员的功能有:新增企业,修改企业,删除企业。

图5.4企业管理页面

5.1.5 企业类型管理

如图5.5显示的就是企业类型管理页面,此页面提供给管理员的功能有:新增企业类型,修改企业类型,删除企业类型。

图5.5 企业类型管理页面

五、文章目录 


1 绪论    1
1.1 研究背景    1
1.2 目的和意义    1
1.3 论文结构安排    2
2 相关技术    3
2.1 MYSQL数据库    3
2.2 JAVA语言技术    4
2.3 SPRINGBOOT框架    4
2.4 B/S模式框架    5
3 系统分析    6
3.1 系统可行性分析    6
3.1.1技术可行性分析    6
3.1.2经济可行性分析    6
3.1.3运行可行性分析    6
3.2 系统流程    6
3.2.1 操作信息流程    7
3.2.2 登录信息流程    7
3.2.3 删除信息流程    8
3.3系统功能分析    8
4 系统设计    9
4.1 总体功能    9
4.2 系统概要设计    9
4.3 系统功能结构设计    9
4.4 数据库设计    10
4.4.1 数据库E-R图设计    10
4.4.2 数据库表结构设计    15
5 系统实现    20
5.1 管理员功能介绍    20
5.1.1 职位招聘列表    20
5.1.2 公告信息管理    20
5.1.3公告类型管理    21
5.1.4 企业管理    22
5.1.5 企业类型管理    22
6 系统测试    23
6.1测试目的    23
6.2测试环境    23
6.3测试测试用例    24
6.4测试结果    24
7 总结与展望    25
致  谢    26
参考文献    27
 

六、部分代码实现

/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UsersController {
	
	@Autowired
	private UsersService usersService;
	
	@Autowired
	private TokenService tokenService;

	/**
	 * 登录
	 */
	@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UsersEntity user = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		R r = R.ok();
		r.put("token", token);
		r.put("role",user.getRole());
		r.put("userId",user.getId());
		return r;
	}
	
	/**
	 * 注册
	 */
	@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UsersEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        usersService.insert(user);
        return R.ok();
    }

	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}

	/**
	 * 修改密码
	 */
	@GetMapping(value = "/updatePassword")
	public R updatePassword(String  oldPassword, String  newPassword, HttpServletRequest request) {
		UsersEntity users = usersService.selectById((Integer)request.getSession().getAttribute("userId"));
		if(newPassword == null){
			return R.error("新密码不能为空") ;
		}
		if(!oldPassword.equals(users.getPassword())){
			return R.error("原密码输入错误");
		}
		if(newPassword.equals(users.getPassword())){
			return R.error("新密码不能和原密码一致") ;
		}
		users.setPassword(newPassword);
		usersService.updateById(users);
		return R.ok();
	}
	
	/**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UsersEntity user = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        usersService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
	
	/**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UsersEntity user){
        EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();
    	PageUtils page = usersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }

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

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

    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UsersEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        usersService.insert(user);
        return R.ok();
    }

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

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
		List<UsersEntity> user = usersService.selectList(null);
		if(user.size() > 1){
			usersService.deleteBatchIds(Arrays.asList(ids));
		}else{
			return R.error("管理员最少保留一个");
		}
        return R.ok();
    }
}

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-13 20:26:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-13 20:26:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-13 20:26:01       82 阅读
  4. Python语言-面向对象

    2024-02-13 20:26:01       91 阅读

热门阅读

  1. CSDN文章导出PDF整理状况一览

    2024-02-13 20:26:01       50 阅读
  2. 经典逻辑面试题--有多少黑帽子

    2024-02-13 20:26:01       60 阅读
  3. RabbitMQ入门

    2024-02-13 20:26:01       52 阅读
  4. 代码随想录第二十九天

    2024-02-13 20:26:01       59 阅读
  5. 机器学习在各个行业的应用介绍

    2024-02-13 20:26:01       49 阅读
  6. Rust切片

    2024-02-13 20:26:01       43 阅读
  7. SQL语句执行顺序相关问题

    2024-02-13 20:26:01       67 阅读
  8. XGboost集成学习

    2024-02-13 20:26:01       55 阅读
  9. 记录一下关于typescript类型的相关用法

    2024-02-13 20:26:01       51 阅读
  10. docker compose安装minio

    2024-02-13 20:26:01       46 阅读