创建package: com.biboheart.demos.api,这个包里放置API接口的RestController
在com.biboheart.demos.api包中创建一个class: ParamController。这章的示例都在这个类中进行。
路径中包含参数,这种情况适合与传递一个不能为空值的参数。比如有些应用中,查询某个企业的数据,必须包含企业的编号,就可以在地址里接收这个编号。
在ParamController中增加一个函数PathParam
路径中的参数通过{sn}接收值。
使用名称接收参数比较直观,我用得比较多。不用注解。跟客户端传的参数同名就可以接收到。如下例子中的reqParam
也可以用get传参
上面用参数名称接收值,只要与请求时的名称一致就能接收到参数值。如果需要传递的参数比较多的时候,就不适合一个一个参数写在函数里了,那样很不方便,也容易出错。可以把这些参数写到一个对象里接收。如下例子
创建一个package: com.biboheart.demos.model,创建一个类Person
用Person对象接收参数
虽然这样的方式也能接收get传参,但是因为需要传的参数多了,用get显得不太方便。这里就不测试GET方式请求了。
有的时候,需要接收JSON传参。比如某些服务的调用需要开发一个回调函数接收对方的回调并获得参数值为结果,对方回调回来的值是JSON格式的值,这时候就需要接收JSON传参数了。用RequestBody可以接收到JSON传值。
需要JSON请求才能正确接到值
springboot 的参数注入有多种方式
类似与conpoment 的类注入的话 可以用springboot的注解
@ConfigurationProperties(prefix= "spring.merchantinfo" )
配置 如图所示
还有一种是直接注入@Autowired这种方式
单一属性值的注入
如
可以使用@Value注解
yml 的属性还有一个特点就是内部引用
同时 springboot yml的配置内部还自带了部分的特殊属性
# 随机字符串
com.didispace.blog.value=${random.value}
# 随机int
com.didispace.blog.number=${random.int}
# 随机long
com.didispace.blog.bignumber=${random.long}
# 10以内的随机数
com.didispace.blog.test1=${random.int(10)}
# 10-20的随机数
com.didispace.blog.test2=${random.int[10,20]}
为了应对不同的生产环境可能你需要不停的改配置 springboot 也有一个良好的解决方案
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)