使用spring-bean-invoke通过网页参数获取bean方法的执行结果
发布日期:2021-11-12 15:29:14
浏览次数:2
分类:技术文章
本文共 1417 字,大约阅读时间需要 4 分钟。
spring-bean-invoke是通过bean-invoke调用spring的bean的示例项目,结合接口访问工具便可以进行项目中bean方法的调用,可用于某一方法的单元测试
InvokeParameterResolver主要是用来实现无法自动解析的参数,比如org.springframework.data.domain.Pageable,
可在convert方法中进行转换传入的参数参数值的转换是通过类型转换——>自定义解析——>json数据的转换
bean-invoke:
spring-bean-invoke: 接口工具地址:功能说明:
- 支持远端客户端执行bean/class方法
- 结合接口工具可直接选择bean/class方法通过自定义参数完成service/controller的执行结果
如何集成到项目:
添加bean-invoke.jar依赖到项目中 参考提供的InvokeBeanController在项目中提供相应的接口(可直接复制到项目中) getBean(String name)是用来通过该name找到所对应的实例,然后执行对应的bean方法 parameterResolver()是用来提供外部无法转换的数据的自定义解析
注意事项
1. 若使用提供的接口工具访问: 1.1 接口需提供跨域支持 1.2 ajax跨域请求时若出现自定义header将出现预检请求,若项目中存在OPTIONS请求拦截的话需要进行放行,可参考AuthFilter进行处理 1.3 请求方法执行接口结束路径必须为/result (post请求,参数在body中),获取方法列表接口结束路径必须为/method/entitys (get请求)2. 方法执行权限较大,需要注意数据安全问题
接口工具操作主要步骤:
- 设置接口地址路径
- 添加请求头(可选)
- 设置储存项(可作为项目,根据不同项储存相应的接口地址/bean名称/class类型)
- 设置bean名称(用于通过bean名称找到对应实例执行对应的方法)/class类型(用于通过class类型执行对应的方法)
- 点击加载按钮,加载当前bean/class的方法列表
- 输入方法中各参数类型所对应的参数值(基本类型直接输入对应的数值,其他对象则输入符合类型的json格式数据)
- 点击获取按钮获取执行结果
HandlerService方法参数示例:
运行项目后接口工具使用截图(若未开启header token验证,则无需添加请求头)
public void showOrder(Order order1, Order order2, Order... orders) { System.out.println("show order1 : " + JSONObject.toJSONString(order1)); System.out.println("show order2 : " + JSONObject.toJSONString(order2));}
对应参数:
public int add(int a, int b) { return a + b; }
对应参数:
public Page convertPage(Page page) { return page; }
对应参数:
转载地址:https://blog.csdn.net/if_you_can_please_do/article/details/82346020 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月10日 16时07分13秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
squid 优化指南
2019-04-27
centos vnc配置笔记
2019-04-27
让Squid 显示本地时间
2019-04-27
linux mysql 命令 大全
2019-04-27
清除Squid缓存的小工具
2019-04-27
Varnish Cache 3.0.0安装
2019-04-27
2011年6月编程语言关注度排行
2019-04-27
Varnish使用小结
2019-04-27
千万级并发HAproxy均衡负载系统介绍
2019-04-27
什么是A记录、MX记录、CNAME记录
2019-04-27
MongoDB简介
2019-04-27
Varnish purges 缓存清除
2019-04-27
Linux下redis安装部署
2019-04-27
水平切分与垂直切分
2019-04-27
MySQL引擎
2019-04-27
MySQL下的NoSQL解决方案HandlerSocket
2019-04-27
Apache服务器下使用 ab 命令进行压力测试
2019-04-27
查看Firefox中的缓存
2019-04-27
http header头设置反向代理不缓存
2019-04-27
配置MySQL主从复制
2019-04-27