springboot实现用户名查找用户功能

 更新时间:2023年04月10日 14:26:03   作者:丘比特惩罚陆  
本文主要介绍了springboot实现用户名查找用户功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

为了实现根据用户名查询用户功能,我们需要在spring boot框架当中编写一下几个类:

1、UserEnetity类

它是根据数据库表的实体类,用于封装用户的基本信息。在这个表当中,需要定义与用户相关的属性,并提供getter和setter方法。

public class UserEntity {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
 
    private String name;
 
 
    public String getUsername() {
        return username;
    }
 
    public void setUsername(String username) {
        this.username = username;
    }
 
    private String username;
 
 
    private int role;
    private String avatar;
    private int status;
    private String password;
 
 
    public UserEntity(int id, String name, int role, String avatar, int status, String password,String username,String token) {
        this.id = id;
        this.name = name;
        this.role = role;
        this.avatar = avatar;
        this.status = status;
        this.password = password;
        this.username = username;
    }
 
    public UserEntity() {
 
    }
 
 
    public int getId() {
        return id;
    }
 
    public void setId(int id) {
        this.id = id;
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
 
 
    public int getRole() {
        return role;
    }
 
    public void setRole(int role) {
        this.role = role;
    }
 
    public String getAvatar() {
        return avatar;
    }
 
    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }
 
    public int getStatus() {
        return status;
    }
 
    public void setStatus(int status) {
        this.status = status;
    }
 
    public String getPassword() {
        return password;
    }
 
    public void setPassword(String password) {
        this.password = password;
    }
}

2、UserMapper类

它是基于MyBatis的接口,用于定义数据库操作的方法,例如查询用户、添加用户、更新用户等。

@Mapper
public interface UserMapper extends BaseMapper {
    List<UserEntity> findAllUser();
 
    UserDTO getUserByUsername(String subject);
}

3、UserService类

它是业务逻辑层,主要负责协调UserMapper类和User Entity类之间的关系,实现业务逻辑的处理。在这个类中,需要定义根据用户名查询用户的方法,并调用UserMapper类的方法实现查询操作。

   //用户名查询用户
    public ResultResponse findByUsername(String name) {
        QueryWrapper<UserEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("name", name);
        UserEntity user = (UserEntity) userMapper.selectOne(queryWrapper);
        if (user != null) {
            return ResultResponse.returnToken(ResultResponse.success("查询成功", user));
        } else {
            return ResultResponse.returnToken(ResultResponse.fail("查询失败,该用户不存在"));
        }
    }

4、UserController类

它是控制器层,用于处理用户请求,返回相应的结果。在这个类中,需要定义请求处理方法,例如根据用户名查询用户的方法,以及返回JSON格式的数据。

   //根据用户名查询用户--查询结果分每页十条显示
    @GetMapping("user/findByUsername")
    public ResultResponse<IPage<UserEntity>> findByUsername(@RequestParam String username,
                                                            @RequestParam Integer pageNumber,
                                                            @RequestParam Integer pageSize) {
        Page<UserEntity> userPage = new Page<>(pageNumber, pageSize);
//        IPage<UserEntity> user = (IPage<UserEntity>) userService.selectByUsername(userPage, username);
        UserEntity user = userService.selectByUsername(userPage,username);
 
        if (user == null) {
            return ResultResponse.error("没有找到匹配的用户");
        }
        return ResultResponse.ok("查询成功",user);
    }

总之,这四个类都是需要编写的,而且它们之间的关系也需要设计好。其中,User Entity类和UserMapper类与数据库之间的关系比较紧密,UserService类则是作为业务逻辑层的核心,而UserController类则是作为控制器层的核心,负责处理用户请求和返回响应结果。

5、postman测试结果

到此这篇关于springboot实现用户名查找用户功能的文章就介绍到这了,更多相关springboot 用户名查找用户内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java字符串转时间简单示例代码

    Java字符串转时间简单示例代码

    这篇文章主要给大家介绍了关于Java字符串转时间的相关资料,在Java中字符和字符串常常需要相互转化,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • mybatis-plus多表分页查询最佳实现方法(非常简单)

    mybatis-plus多表分页查询最佳实现方法(非常简单)

    这篇文章主要给大家介绍了关于mybatis-plus多表分页查询最佳实现方法,文中介绍的方法非常简单,MyBatis-Plus中分页查询是比较方便的,这个功能在网站中也是非常常用的,这方面的知识点是必备的知识点,需要的朋友可以参考下
    2023-08-08
  • Spring覆盖容器中Bean的注解如何实现@OverrideBean

    Spring覆盖容器中Bean的注解如何实现@OverrideBean

    文章介绍了在项目开发中如何通过偷梁换柱的方式重写Spring容器中的内置Bean,并指出了需要注意的两点:1. 对应的Bean应基于接口注入;2. 如果不是基于接口注入,可以使用同包名同类名的方式重写(可能存在潜在问题,不推荐),文章还强调了“基于接口编程”的好处
    2025-01-01
  • 详细SpringBoot生命周期接口的使用

    详细SpringBoot生命周期接口的使用

    本文主要介绍了SpringBoot生命周期接口的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • Spring+MyBatis实现数据读写分离的实例代码

    Spring+MyBatis实现数据读写分离的实例代码

    本篇文章主要介绍了Spring+MyBatis实现数据读写分离的实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Spring IOC容器的Bean管理基于注解属性注入方式

    Spring IOC容器的Bean管理基于注解属性注入方式

    这篇文章主要为大家介绍了Spring IOC容器的Bean管理基于注解属性注入方式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Spring-boot oauth2使用RestTemplate进行后台自动登录的实现

    Spring-boot oauth2使用RestTemplate进行后台自动登录的实现

    这篇文章主要介绍了Spring-boot oauth2使用RestTemplate进行后台自动登录的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Java中double保留两位小数的多种方法

    Java中double保留两位小数的多种方法

    这篇文章主要给大家介绍了关于Java中double保留两位小数的多种方法,对于double数据类型进行计算发生的精度丢失的情况,可以按照自己的需求选择任意方式,需要的朋友可以参考下
    2023-07-07
  • 浅谈Java泛型通配符解决了泛型的许多诟病(如不能重载)

    浅谈Java泛型通配符解决了泛型的许多诟病(如不能重载)

    下面小编就为大家带来一篇浅谈Java泛型通配符解决了泛型的许多诟病(如不能重载)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 如何更好的使用Java8中方法引用详解

    如何更好的使用Java8中方法引用详解

    在Java8中,我们可以直接通过方法引用来简写lambda表达式中已经存在的方法,这种特性就叫做方法引用(Method Reference)。下面这篇文章主要给大家介绍了关于如何更好的使用Java8中方法引用的相关资料,需要的朋友可以参考下。
    2017-09-09

最新评论