【springmvc】传值的几种方式&&postman接口测试

【springmvc】传值的几种方式&&postman接口测试

                    版权声明:本文为博主原创文章,未经博主允许不得转载。                        https://blog.youkuaiyun.com/u013034640/article/details/76980779                    </div>
                                                <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-3019150162.css">
                                    <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-3019150162.css">
            <div class="htmledit_views" id="content_views">

    最近在用postman测试postman接口,对于springmvc传值这一块,测试了几种常用方式,总结一下。对于postman这个工具的使用也增加了了解。postman测试很棒,有了工具,测试接口,事倍功半。


一、单个参数传递


1.@RequestBody注解


 
 
  1. /**
  2. * 测试单个参数@RequestBody
  3. */
  4. @CrossOrigin
  5. @RequestMapping(value = {"/insertTestParamsRequest"}, method = RequestMethod.GET)
  6. @ResponseBody
  7. public void insertTestParamsRequest( @RequestBody String name, @RequestBody String age) {
  8. System. out.println( "name=====" + name);
  9. System. out.println( "age=====" + age);
  10. }

测试请求路径


2.@RequestParam

   常用来处理简单类型的绑定,通过Request.getParameter() 获取的String可直接转换为简单类型的情况( ;
该注解有两个属性: value、required; value用来指定要传入值的id名称,required用来指示参数是否必须绑定;


 
 
  1. /**
  2. * 测试单个参数@RequestParam
  3. */
  4. @CrossOrigin
  5. @RequestMapping(value = {"/insertTestParams"}, method = RequestMethod.GET)
  6. @ResponseBody
  7. public void insertTestParams(HttpServletRequest request, @RequestParam String name, @RequestParam String age) {
  8. System. out.println( "name=====" + name);
  9. System. out.println( "age=====" + age);
  10. }

请求路径:


3.@PathVariable注解

    路径为resultful风格,将参数当做请求路径。

   当使用@RequestMapping URI template 样式映射时, 即 Url/{paramId}, 这时的paramId可通过 @Pathvariable注解绑定它传过来的值到方法的参数上。


 
 
  1. /**
  2. * 测试单个参数@PathVariable
  3. */
  4. @CrossOrigin
  5. @RequestMapping(value = {"/insertTest/{name}/{age}"}, method = RequestMethod.GET)
  6. @ResponseBody
  7. public void insertTestPathVeriable(HttpServletRequest request, @PathVariable("name") String name, @PathVariable String age) {
  8. System. out.println( "name=====" + name);
  9. System. out.println( "age=====" + age);
  10. }

上面代码把URI template 中变量 name的值和age的值,绑定到方法的参数上。若方法参数名称和需要绑定的uri template中变量名称不一致,需要在@PathVariable("name")指定uri template中的名称。


二、传递pojo对象


1.@RequestBody注解


 
 
  1. /*测试添加实体*/
  2. @CrossOrigin
  3. @RequestMapping(value = {"/insertEntityTest"}, method = RequestMethod.POST)
  4. @ResponseBody
  5. public void insertEntityTest( @RequestBody CurriculumScheduleEntity curriculumScheduleEntity) {
  6. System. out.println( "name=====" + curriculumScheduleEntity.getClassId());
  7. System. out.println( "age=====" + curriculumScheduleEntity.getTeachclassId());
  8. }

postman通过json格式测试



2.直接写实体


 
 
  1. /*测试添加实体*/
  2. @CrossOrigin
  3. @RequestMapping(value = {"/insertTest"}, method = RequestMethod.POST)
  4. @ResponseBody
  5. public void insertTest(CurriculumScheduleEntity curriculumScheduleEntity) {
  6. System. out.println( "name=====" + curriculumScheduleEntity.getClassId());
  7. System. out.println( "age=====" + curriculumScheduleEntity.getWeekId());
  8. }

form表单测试

 
 
  1. <div>
  2. <form action="/curriculumSchedule/insertTest" method="post">
  3. classId : <input name="classId"> <br>
  4. teachClassId: <input name="weekId"> <br>
  5. <input type="submit" value="提交">
  6. </form>
  7. </div>

postman测试格式


三、postman测试List类型参数

以List<string>为例,测试批量删除方法,参数为List<String>。写这个其实没有什么技术,但是中午在测试List接口的时候,用postman测试,格式一致写错,不知道用postman该怎么测试了。所以花费了一点时间,记录下来,思考这个工具的执行过程。

Controller方法


3.参考连接

http://www.cnblogs.com/sandyliu1999/p/4802706.html



基于html+python+Apriori 算法、SVD(奇异分解)的电影推荐算法+源码+项目文档+算法解析+数据集,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 电影推荐算法:Apriori 算法、SVD(奇异分解)推荐算法 电影、用户可视化 电影、用户管理 数据统计 SVD 推荐 根据电影打分进行推荐 使用 svd 模型计算用户对未评分的电影打分,返回前 n 个打分最高的电影作为推荐结果 n = 30 for now 使用相似电影进行推荐 根据用户最喜欢的前 K 部电影,分别计算这 K 部电影的相似电影 n 部,返回 K*n 部电影进行推荐 K = 10 and n = 5 for now 根据相似用户进行推荐 获取相似用户 K 个,分别取这 K 个用户的最喜爱电影 n 部,返回 K*n 部电影进行推荐 K = 10 and n = 5 for now Redis 使用 Redis 做页面访问次数统计 缓存相似电影 在使用相似电影推荐的方式时,每次请求大概需要 6.6s(需要遍历计算与所有电影的相似度)。 将相似电影存储至 redis 中(仅存储 movie_id,拿到 movie_id 后还是从 mysql 中获取电影详细信息), 时间缩短至:93ms。 十部电影,每部存 top 5 similar movie 登录了 1-6 user并使用了推荐系统,redis 中新增了 50 部电影的 similar movie,也就是说,系统只为 6 为用户计算了共 60 部电影的相似度,其中就有10 部重复电影。 热点电影重复度还是比较高的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值