后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)
来源:SegmentFault
时间:2023-01-09 20:40:01 244浏览 收藏
本篇文章向大家介绍《后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)》,主要包括MySQL、android、kotlin,具有一定的参考价值,需要的朋友可以参考一下。
1 前言&概述
这篇文章是基于这篇文章的更新,主要是更新了一些技术栈以及开发工具的版本,还有修复了一些Bug。
本文是
@Entity @Getter @Setter @NoArgsConstructor @AllArgsConstructor public class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id; private String name; private String password; }
基本的
@Repository public interface UserRepository extends CrudRepository{ boolean existsByName(String name); User findByNameAndPassword(String name,String password); }
一个需要注意的点是
@Transactional @Service @RequiredArgsConstructor(onConstructor = @__(@Autowired)) public class UserService { private final UserRepository repository; public boolean exists(User user){ return repository.existsByName(user.getName()); } public User findByNameAndPassword(User user){ return repository.findByNameAndPassword(user.getName(),user.getPassword()); } public boolean insert(User user){ repository.save(user); return true; } public boolean update(User user){ if(repository.findById(user.getId()).isEmpty()){ return false; } repository.save(user); return true; } public boolean deleteById(int id){ if(!repository.existsById(id)){ return false; } repository.deleteById(id); return true; } }
注解解释如下:
@RestController @RequestMapping("/") @RequiredArgsConstructor(onConstructor = @__(@Autowired)) public class UserController { private final UserService service; @PostMapping("sign/in/up") public ResponseBody signInUp(@RequestBody User user) { if (service.exists(user)) { User u = service.findByNameAndPassword(user); return new ResponseBody(u != null ? ResponseCode.SIGN_IN_SUCCESS : ResponseCode.SIGN_IN_FAILED, u != null ? u.getId() : ""); } return new ResponseBody(service.insert(user) ? ResponseCode.SIGN_UP_SUCCESS : ResponseCode.SIGN_UP_FAILED, ""); } @PutMapping("update") public ResponseBody update(@RequestBody User user) { return new ResponseBody(service.update(user) ? ResponseCode.UPDATE_SUCCESS : ResponseCode.UPDATE_FAILED, ""); } @DeleteMapping("delete") public ResponseBody deleteByName(@RequestParam int id) { return new ResponseBody(service.deleteById(id) ? ResponseCode.DELETE_SUCCESS : ResponseCode.DELETE_FAILED, ""); } @GetMapping("test") public String test() { return "test"; } }
注解解释如下:
@Getter @Setter @AllArgsConstructor @NoArgsConstructor public class ResponseBody { private int code; private Object data; }
响应码:
public class ResponseCode { public static final int SIGN_IN_SUCCESS = 2000; public static final int SIGN_UP_SUCCESS = 2001; public static final int UPDATE_SUCCESS = 2002; public static final int DELETE_SUCCESS = 2003; public static final int SIGN_IN_FAILED = 3000; public static final int SIGN_UP_FAILED = 3001; public static final int UPDATE_FAILED = 3002; public static final int DELETE_FAILED = 3003; }
3.8 配置文件
spring: datasource: username: root password: 123456 url: jdbc:mysql://localhost:3306/userinfo jpa: open-in-view: false hibernate: ddl-auto: update
数据库名字以及用户名密码请根据自己需要修改,
implementation 'com.squareup.okhttp3:okhttp:4.9.0' implementation 'com.fasterxml.jackson.core:jackson-databind:2.12.1' implementation 'org.bouncycastle:bcprov-jdk15to18:1.68' implementation "org.projectlombok:lombok:1.18.16" annotationProcessor 'org.projectlombok:lombok:1.18.16'
权限:
相关阅读更多>-
499 收藏
-
244 收藏
-
235 收藏
-
157 收藏
-
101 收藏
最新阅读更多>-
317 收藏
-
371 收藏
-
244 收藏
-
288 收藏
-
480 收藏
-
430 收藏
课程推荐更多>-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习
-