第一个接口怎么设计 Indie Hack Lab

第一个接口怎么设计

很多人第一次写接口时,会把重点放在“能不能返回数据”。只要前端能调通,页面能显示,就觉得接口设计完成了。 但接口不是临时函数。它是前端、后端、数据库、权限、错误处理和未来扩展之间的契约。一开始设计得太随意,后面每次改功能都会变成连锁反应。 第一个接口不需要复杂,但一定要清楚、稳定、可理解。 先明确接口服务什么动作 写接口前,不要先想 URL,而要先想用户动作。 用户是在创建项目、获取列表...
阅读全文
再谈RestTemplate实战应用 Spring

再谈RestTemplate实战应用

笔者在两年前写过一篇RestTemplate使用相关的文章,地址: springboot中使用RestTemplate调用web服务小结 。 文章写作时SpringBoot版本尚在1.x徘徊,随着SpringBoot版本升级,有些用法在2.x版本中已经不适用。恰逢最近又用到了RestTemplate进行HTTP接口对接, 因此写作本文对最新的使用方法进行小结,方便后续参考,也希望能够...
阅读全文
深入理解Spring IOC之扩展篇(五)、基于注解整合Spring框架 Spring

深入理解Spring IOC之扩展篇(五)、基于注解整合Spring框架

本篇讲的是如何将我们自己的业务逻辑和Spring框架整合起来,整合的方式主要采用的是注解,里面涉及到了多个知识点。 我们的目的是做出我们自己的注解,主要是标在接口上,当调用接口里相应的方法的时候,就会执行我们自己的逻辑。 对的,就是现在的MyBatis和Feign的整合方式,这种也是现在比较容易的,如果你业务里面xml用的多,你也可以结合xml来搞,拓展xml的文章我之前已经说过,你可...
阅读全文
Spring-boot多环境启动参数添加 Spring

Spring-boot多环境启动参数添加

添加以下参数(二选一即可) -Dspring.profiles.active=test -Dserver.port=8081 # 或 spring.profiles.active=test;server.port=8081 复制代码 2、启动时添加参数 对应上面的参数在启动jar包是添加参数 第一种 java -jar -Dspring.profiles.active=t...
阅读全文
java开发时各类工具的使用规范 编程技术

java开发时各类工具的使用规范

工具类规范 一个项目不可能没有工具类,工具类的初衷是良好的,代码重用,但到了后面工具类越来越乱,有些项目工具类有几十个,看的眼花缭乱,还有不少重复。如何编写出好的工具类,我有几点建议: 隐藏实现 就是要定义自己的工具类,尽量不要在业务代码里面直接调用第三方的工具类。这也是解耦的一种体现。如果我们不定义自己的工具类而是直接使用第三方的工具类有2个不好的地方: 不同的...
阅读全文
(六) SpringBoot起飞之路-整合JdbcTemplate-Druid-MyBatis-Redis Spring

(六) SpringBoot起飞之路-整合JdbcTemplate-Druid-MyBatis-Redis

有兴趣的朋友可以去了解一下前五篇,你的赞就是对我最大的支持,感谢大家! (一) SpringBoot起飞之路-HelloWorld (二) SpringBoot起飞之路-入门原理分析 (三) SpringBoot起飞之路-YAML配置小结(入门必知必会) (四) SpringBoot起飞之路-静态资源处理 (五) SpringBoot起飞之路-Thymeleaf模板引...
阅读全文
SpringBoot 入门:10 - 统一异常处理 Java

SpringBoot 入门:10 - 统一异常处理

在开发过程中,我们经常会遇到程序报错的情况,对调用方来说,这种情况下他们能看到的就是一大段错误或者是描述模糊的提示。我们希望对可预期的异常进行全局捕获,并进行适当处理,然后以清晰的说明返回给调用方。 在 Spring Boot 中我们可以使用 @ControllerAdvice 注解然后配合 @ExceptionHandler 对不同类型的异常进行统一的捕获并输出: @ExceptionHan...
阅读全文
Java 并发编程之 ReentrantLock 源码分析 编程技术

Java 并发编程之 ReentrantLock 源码分析

我是一个优秀的人,但也有缺点,比我优秀的人有很多很多。连自己都认输,何谈你的对手,与你一样优秀,甚至比你优秀的人。战胜自己,就是最大的超越。 在Java5.0之前,协调对共享对象的访问可以使用的机制只有synchronized和volatile。我们知道synchronized关键字实现了内置锁,而volatile关键字保证了多线程的内存可见性。 在大多数情况下,这些机制都能很好地完成工作,但...
阅读全文
Loading...