Java SpringBoot开发查询用户信息接口API

100 阅读1分钟

数据库连接 配置 application.yml ,application-dev.yml ,application-prod.yml

server:
  port: 8099 #默认8080

  spring:
    datasource: # 数据源的相关配置
      type: com.zaxxer.hikari.HikariDataSource      # 数据源的类型,可以更改为其他的数据源配置,比如druid
      driver-class-name: com.mysql.jdbc.Driver      # mysql/MariaDB 的数据库驱动类名称
      url: jdbc:mysql://106.54.1.115:3306/imooc_red_book_dev?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true #jdbc:mysql://localhost:3306/sync_study?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
      username: root
      password: root
      hikari:
        connection-timeout: 30000               # 等待连接池分配连接的最大时间(毫秒),超过这个时长还没有可用的连接,则会抛出SQLException
        minimum-idle: 5                         # 最小连接数
        maximum-pool-size: 20                   # 最大连接数
        auto-commit: true                       # 自动提交
        idle-timeout: 600000                    # 连接超时的最大时长(毫秒),超时则会被释放(retired)
        pool-name: DataSourceHikariCP           # 连接池的名字
        max-lifetime: 18000000                  # 连接池的最大生命时长(毫秒),超时则会被释放(retired)
        connection-test-query: SELECT 1

    redis:
      host: 127.0.0.1
      port: 6379
      database: 0

Spring boot REST 请求类型
  • @GetMapping("hello")
  • @PostMapping("upload")
  • @PutMapping
  • @DeleteMapping
  • @RequestMapping 兼容 get ,post

pojo mapper 生成

Java SpringBoot 整合Mybatis 生成mapper 和 pojo juejin.cn/spost/74418…

book-api 层 创建 UserInfoController


@RestController
@Slf4j //打印日志
@Api(tags = "UserInfo 用户信息接口 ")
@RequestMapping("userInfo")//映射路由地址
public class UserInfoController {

    @Autowired
    private UserService userService;

    @ApiOperation(value = "query 根据userId查询用户信息")
    @GetMapping("query")
    public GraceJSONResult query(@RequestParam String userId)  throws  Exception{

       Users user =  userService.getUser(userId);
       
// vo = view object 视图object
        UsersVO usersVO = new UsersVO();
        BeanUtils.copyProperties(user,usersVO);

        return GraceJSONResult.ok(usersVO);
    }

}

book-service 层

  • 创建 UserService
public interface UserService {

    /*
    根据用户主键 查询
     */
    public Users getUser(String userId);


}
  • 实现UserServiceImpl
// Impl 功能实现
@Service //服务器扫描到
public class UserServiceImpl implements UserService {
    @Autowired
    private UsersMapper usersMapper;

    @Autowired //注入
    private Sid sid;
    private static final String USER_FACE1 = "";

    @Override
    public Users queryMobileIsExist(String mobile) {
        Example userExample = new Example(Users.class);
        Example.Criteria criteria = userExample.createCriteria();//创建一个条件
        criteria.andEqualTo("mobile",mobile);
        Users user = usersMapper.selectOneByExample(userExample);
        return user;
    }

    @Override
    public Users getUser(String userId) {
        return  usersMapper.selectByPrimaryKey(userId);
    }

}