多平台统一管理软件接口,如何实现多平台统一管理软件接口
287
2023-01-10
本文目录一览:
这种场景下,只能通过 byName 注入的方式。可以使用 @Resource 或 @Qualifier 注解。@Resource 默认是按照 byName 的方式注入的, 如果通过 byName 的方式匹配不到,再按 byType 的方式去匹配。
例如接口IAnimal有两个实现类 DaoImpl 和 CatImpl。
@Service("dogImpl")
public class DaoImpl impliments IAnimal{
...
}
@Service("catImpl")
public class CatImpl impliments IAnimal{
...
}
public class AnimalController {
@Resource(name="dogImpl") //实现类1中 @Service注解中标定的名称
private IAnimal dogImpl;
......
}或者
@Qualifier 注解也是 byName的方式,但是与@Resource 有区别,@Qualifier 使用的是 类名
public class AnimalController {
@Qualifier("DaoImpl") //实现类1的类名。注意区分与Resource(name="dogImpl") 的区别。
private IAnimal dogImpl;
......
}
目标
本章我们将编写一个starter自动实现接口注解,目标如下自动实现接口注解:
1、对外提供 @OpenAPI 注解,使用此注解它会对接收的请求数据进行解密,对要返回的数据进行加密。
2、完成服务端使用示例
3、完成前端调用示例
加密规则
1、对业务数据进行AES加密,示意代码:encryptData=AES("业务数据", aesKey)
2、对AES的key进行公钥加密,示意代码:encryptKey=RSA(aesKey, 公钥)
3、签名sign=md5(encryptData+encryptKey)
加密后请求示例
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
请求参数
服务端返回示例
pom.xml
定义注解
配置公私钥
具体代码逻辑
定义切面和自动装配
spring.factories
服务端修改
在业务项目中引入jar 包
配置公私钥
改动的地方很少,只需要在原接口增加@OpenAPI注解即可
前端修改
修改前代码
修改后要先对参数加密,然后对返回数据解密
安装两个加密库
封装RSA、AES和Base64加解密
关于自动实现接口注解和注解 接口的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 自动实现接口注解的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于注解 接口、自动实现接口注解的信息别忘了在本站进行查找喔。版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~