当前位置: 首页 > news >正文

从零到一构建短链接系统(三)

1.根据数据库表,利用在线网站https://jully.top/generator/

根据数据库Info自动生成代码

2.在entity中创建UserDO

@Data
@TableName("t_user")
public class UserDO {
/**
* id
*/
private Long id;
/**
* 用户名
*/
private String username;
/**
* 密码
*/
private String password;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String phone;
/**
* 邮箱
*/
private String mail;
/**
* 注销时间戳
*/
private Long deletionTime;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改时间
*/
private Date updateTime;
/**
* 删除标识 0:未删除 1:已删除
*/
private Integer delFlag;
}

3.admin的pom.xml文件中引入持久层框架

4.admin的application.yaml中引入持久层配置文件,并改成自己的数据库名

5.在ShortLinkAdminAppliaction中添加持久层扫描注解

@MapperScan("com.oli.shortlink.admin.dao.mapper")

一般来说一定要加上路径

6.shortlink-all的pom.xml加上lombok(可在其余步骤之前其实)

<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>

7.mapper中创建UserMapper接口

public interface UserMapper extends BaseMapper<UserDO> {}

8.service中创建UserService接口

public interface UserService extends IService<UserDO> {}

9.service中创建impl目录,目录中创建UserServiceImpl

@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, UserDO> implements UserService {}

10.UserController增加注解@RequiredArgsConstructor

比@Autowired和@Resource好

再增加private final UserService userService;

11.设置一手自动导入包

12.添加目录dto.req和dto.resp,并在resp目录下创建UserRespDTO

只需要有用的就行

@Data
public class UserRespDTO {
/**
* id
*/
private Long id;
/**
* 用户名
*/
private String username;
/**
* 真实姓名
*/
private String realName;
/**
* 手机号
*/
private String phone;
/**
* 邮箱
*/
private String mail;
}

13.UserService中添加

UserRespDTO getUserByUsername(String username);

14.UserServiceImpl中添加

public UserRespDTO getUserByUsername(String username) {return null;
}

15.修改UserServiceImpl

@Servicepublic class UserServiceImpl extends ServiceImpl<UserMapper, UserDO> implements UserService {public UserRespDTO getUserByUsername(String username) {LambdaQueryWrapper<UserDO> queryWrapper = Wrappers.lambdaQuery(UserDO.class).eq(UserDO::getUsername,username);UserDO userDO = baseMapper.selectOne(queryWrapper);UserRespDTO result = new UserRespDTO();BeanUtils.copyProperties(userDO,result);return result;}}

16.在sqlyog中创建一条用户记录

17.UserController改为

@RestController@RequiredArgsConstructorpublic class UserController {private final UserService userService;/***根据用户名查询用户信息*/@GetMapping("/api/shortlink/v1/user/{username}")public UserRespDTO getUserByUsername(@PathVariable("username") String username){return userService.getUserByUsername(username);}}

18.启动项目后用apifox发送请求,如下图所示返回了正确结果

http://www.lryc.cn/news/320263.html

相关文章:

  • C语言易错知识点:scanf函数
  • 如何实现图片上传至服务器
  • OSPF协议全面学习笔记
  • acwing算法提高之搜索--剪枝
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Web)上篇
  • TPU浅谈
  • 华为OD机试 - 求字符串中所有整数的最小和(Java JS Python C C++)
  • goland设置保存文件时不将4个空格转为TAB
  • 基于Linux内核的socket编程(TCP)的C语言示例
  • 【WEEK3】 【DAY4】JSON交互处理第三部分【中文版】
  • 下载chromedrive,使用自动化
  • D-Star 寻路算法
  • mysql5.7编译安装
  • Java项目实战记录:雷达数据渲染
  • 进程的概念 | PCB | Linux下的task_struct | 父子进程和子进程
  • 【GPT-SOVITS-03】SOVITS 模块-生成模型解析
  • 2024HVV行动-进军蓝中研判(log4j2、fastjson、Struts2、Shiro)
  • 亮点抢先看!4月16-17日,百度Create大会开设“AI公开课”,大咖带你打造赚钱工具
  • 【笔记本清灰/实用经验】荣耀Magicbook14-2020款-R5-4500U-清灰实战
  • 如何写好Stable Diffusion的prompt
  • 计算机毕业设计 | SpringBoot+vue 移动端社区物业管理系统(附源码+论文)
  • 玩转C语言——数组初探
  • Nginx指令配置大全
  • 富格林:安全出金关注可信操作
  • DELETE、TRUNCATE 和 DROP 在MySQL中的区别及使用示例
  • 程序员应该如何选择职业赛道?
  • 深入浅出Hive性能优化策略
  • 利用卷积神经网络进行人脸识别
  • 固态硬盘有坏道怎么恢复数据 固态硬盘坏道怎么修复
  • adobe animate 时间轴找不到编辑多个帧按钮