框架
文章平均质量分 50
玉离骚
这个作者很懒,什么都没留下…
展开
-
FeignClient接口类用自定义注解添加统一的入参字段或者处理参数
远程调用第三方系统的接口,都需要传sign签字字段,而此字段一般是用密钥和入参根据约定的算法生成的字符串。为了代码简洁快捷,所以通过注解的方式去实现。题外话,若对方接口要求请求头里面有某个固定的参数,比如token,实现方法可参考如下。fegin接口调用此拦截。fegin调用demo。先创建一个请求拦截器。原创 2024-08-08 15:35:17 · 233 阅读 · 0 评论 -
请求返回参数公共部分设计
在些接口的时候, 对于某些入参在每个接口都出现的话(比如给PC、APP写的一堆接口,每个接口会包含请求渠道方名称、IP地址、版本、时间戳、签名等参数),可以抽取出来作为公共的参数,减少代码的冗余。java 的继承虽然不能多继承,但可以一层一层的继承。D继承C,C继承B,B继承A, 这样D也就有了A里面的属性方法.同样的,方案二也可以一层包一层比如。比如大部分表,有创建人/时间、更新人/时间等字段,这些也可以抽取出来,通过拦截器的方法去自动填充。公共参数放父DTO里面,每个接口的DTO继承这个父DTO。原创 2023-04-24 10:34:53 · 127 阅读 · 0 评论 -
拦截器实现
举个简单易懂的例子,假设HandlerInterceptor是你爷爷,你想拥有你爷爷的财产。要么你直接继承你爷爷(HandlerInterceptor),要么是你爸已继承你爷爷,这时你直接继承你爸就等于继承你爷爷了(HandlerInterceptorAdapter),同时还拥有了你爸的财产(如果你爸有财产)。拦截器是对所有action请求都执行,切面Aspect的粒度比拦截器HandlerInterceptor更小一些,可以指定某个方法、某个类包下的全部方法、某个注解才去执行致这段拦截功能。原创 2023-09-28 11:00:00 · 337 阅读 · 0 评论 -
自定义注解(校验参数必填demo)
以上就是整个过程,最重要的是第二步,整个自定义注解的功能都是在这里面实现的。其实字段必填spring也提供了注解@NotNull,示例如下。所以自定义注解一般会写点其他什么业务逻辑的功能,有现成的肯定是直接用谁还不辞辛苦自己去写。其中异常工具类ExceptionUtil.buildException()我这里就不贴代码了,自己写一个或者替换一下。注解在开发过程中很常用,他也支持自定义注解。下面写了一个校验请求参数必填的自定义注解。原创 2023-07-01 15:52:39 · 851 阅读 · 0 评论 -
maven的pom文件
我们只需要引入spring-boot-start-parent后很多其他依赖就不用在引用了,因为spring-boot-start-parent这个文件中的套餐将我们需要的所有依赖都准备好了。maven会根据pom文件拉取依赖包,根据群组id先是在我们本地仓库对应的路径去找,找不到就去远程仓库下载回来本地。下面这个是安装maven后配置文件里面的,它是所有pom的父pom,所有maven项目继承该配置。我就还需要配置这些非中央仓库告诉maven除了上面的中央仓库,你还可以去我提供的这些仓库里找。原创 2023-06-08 16:00:00 · 1985 阅读 · 0 评论 -
单个用户单个接口请求次数限制
除了注解的实现方式, 也可以通过拦截器+redis缓存之类的去实现。通过注解的形式去实现,需要用到的jar是。给需要限制请求次数的接口添加自定义注解。原创 2023-05-12 00:15:00 · 444 阅读 · 1 评论 -
plus和mybatis的区别
plus和mybatis的区别:puls是增强版,在mybatis上进行了拓展,保留了mybatis的全部功能。对于业务线的开发人员来说,相比mybatis最大的优点是: 单表的增删改查以及列表分页不需要xml来写sql语句,因为plus提供了一个叫做BaseMapper的接口(在mybatis-plus-core.jar里面),内部已经提供了相当多的crud操作方法,详细如下只有当联表查询或者一些复杂......原创 2022-07-01 17:11:56 · 1922 阅读 · 0 评论 -
认识分布式
又有个新朋友问我分布式,我表示了一下自己的看法, 也与大家分享一下。一、要点单应用服务器:客户端的请求全部由一个服务器完成。服务器挂了就请求不了。只适合用户量比较小的小型网站。负载均衡(集群): 部署多个单应用(每台服务器部署的应用相同),然后通过nginx或其他软件对客户端的请求进行分发分工。即使其中某一个或者多个坏了,剩下的仍在工作仍可请求通完成任务。相比单应用服务器,能有效的解决高并发和服务器压力。分布式:将整个系统的功能进行拆解,根据业务功能模块分别部署到不同的服务器上,各个业务模块之间通原创 2020-09-18 17:07:24 · 159 阅读 · 0 评论 -
play页面错误解决方法
玩play框架的小伙伴有时会遇到这个问题Oops, an error occuredThis exception has been logged with id 7bglink78.浏览器错误如下一般后台也会报错java的 AccountHome 的 1613行如下:render();这个是页面渲染时报错,500找不到页面, 从后台错误来看 TemplateNotFoundExce...原创 2019-04-16 18:56:52 · 3015 阅读 · 0 评论