既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
@RequestMapping(“users”)
@RestController
public class UsersController{
@Autowired
private UsersService userService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UsersEntity user = userService.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());
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@PostMapping(value = "/register")
public R register(@RequestBody UsersEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper().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){
UsersEntity user = userService.selectOne(new EntityWrapper<UsersEntity>().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,UsersEntity user){
EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();
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( UsersEntity user){
EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();
ew.allEq(MPUtil.allEQMapPre( user, "user"));
return R.ok().put("data", userService.selectListView(ew));
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
UsersEntity 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");
UsersEntity user = userService.selectById(id);
return R.ok().put("data", user);
}
/**
* 保存
*/
@PostMapping("/save")
public R save(@RequestBody UsersEntity user){
// ValidatorUtils.validateEntity(user);
if(userService.selectOne(new EntityWrapper().eq(“username”, user.getUsername())) !=null) {
return R.error(“用户已存在”);
}
userService.insert(user);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody UsersEntity user){
// ValidatorUtils.validateEntity(user);
UsersEntity u = userService.selectOne(new EntityWrapper().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();
}
}
>
> ## 四、其他案例:
>
>
>
![](https://img-blog.csdnimg.cn/direct/ec1da891525d41358935e6e298596e45.jpeg)![](https://img-blog.csdnimg.cn/786a1b9cfb4c4a5f955ba3e1ffacd478.png)
![](https://img-blog.csdnimg.cn/8dfe5de316ac4d7c822f04e0e919f594.png)
![](https://img-blog.csdnimg.cn/0980b1f4c2804b6c838935a8bb7741be.png) ![](https://img-blog.csdnimg.cn/22629826870f4ce89335897c0f029628.png)
![](https://img-blog.csdnimg.cn/b125831cdf0944839fe62ebda742e793.png)
![](https://img-blog.csdnimg.cn/4ec241647a4a4f1e924529de169bde83.png)![](https://img-blog.csdnimg.cn/5950670d8dd7440ebe3c45cfcb10b49e.png)
![](https://img-blog.csdnimg.cn/0925f6d893d548a9a6e5163cb89fc43e.png)
![](https://img-blog.csdnimg.cn/fac65fb160144c21b0f4b8051cbedaf4.png)
>
> ## 五、推荐项目:
>
>
>
[基于微信小程序+Springboot线上租房平台设计和实现-三端]( )
[2022-2024年最全的计算机软件毕业设计选题大全]( )
[基于Java+SpringBoot+Vue前后端分离手机销售商城系统设计和实现]( )
[基于Java+SpringBoot+Vue前后端分离仓库管理系统设计实现]( )
[基于SpringBoot+uniapp微信小程序校园点餐平台详细设计和实现]( )
[基于Java+SpringBoot+Vue+echarts健身房管理系统设计和实现]( )
[基于JavaSpringBoot+Vue+uniapp微信小程序实现鲜花商城购物系统]( )
[基于Java+SpringBoot+Vue前后端分离摄影分享网站平台系统]( )
[基于Java+SpringBoot+Vue前后端分离餐厅点餐管理系统设计和实现]( )
[基于Python热门旅游景点数据分析系统设计与实现]( )
>
> ## **六、源码获取:**
>
>
> 大家**点赞、收藏、关注、评论**啦 、**查看**👇🏻**获取联系方式**👇🏻
>
![img](https://img-blog.csdnimg.cn/img_convert/da6a60695efce4b2146108ecf2e250d0.png)
![img](https://img-blog.csdnimg.cn/img_convert/7f511893c5a9b716efd426caa962f5f6.png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**