springcloud_day2_创建一个微服务工程

1、版本的选择

https://start.spring.io/actuator/info

2、搭建版本

 3、技术路线图

 

 4、父级工程使用pom类型,聚合模型

 

 5、微服务模块的步骤

1)建module。2)改pom。3)写YML。4)主启动。5)业务类。 

6、子模块之间调用如果是post请求传递参数需要加@RequestBody,并且postman调用的时候是需要使用json格式

总结 @requestBody加与不加的区别如下
使用@requestBody.当请求content_type为:application/json类型的请求,数据类型为json时, json格式如下:{“aaa”:“111”,“bbb”:“222”}
不使用@requestBody.当请求content_type为:application/x-www-form-urlencoded类型的或multipart/form-data时,数据格式为aaa=111&bbb=222。

JQuery的$.ajax(url,[settings])
1.默认的ContentType的值为:application/x-www-form-urlencoded; charset=UTF-8
此格式为表单提交格式,数据为key1=value1&key2=value2的格式 。图二serrializeble,只用的是默认contentType类型。
2.虽然ajax的data属性值格式为:{key1:value1,key2:value2},但最后会转为key1=value1&key2=value2的格式提交到后台 。图二,虽然打印出的结果是不是&格式的,但是会转化。
3.如果ajax要和springmvc交互,要使用key1=value1&key2=value2的格式,后台springmvc只需要定义对象或者参数就行了,会自动映射。
4.如果springmvc的参数有@RequestBody注解(接收json字符串格式数据),ajax必须将date属性值转为json字符串,不能为json对象(js对象,会自动转为key=value形式)。并且,修改contentType的值为:application/json; charset=UTF-8,这样加了@RequestBody注解的属性才能自定映射到值。
5.使用在进行图片或者文件上传时使用 multipart/form-data 类型时、 数据会自动进行映射不要添加任何注解。

7、如果子模块之间有相同的entity类,可以创建一个公用的服务,比如名称是cloud-api-commons;创建完毕,

把entity整个类跟包复制到公共项目去,然后clean、package。把子项目就中的entity删掉,会爆红,再把下面的pom依赖放到子项目中去,刷新就可以了。

  <!--公共工程的实体类-->
        <dependency>
            <groupId>com.xiangwen</groupId>
            <artifactId>cloud-api-commons</artifactId>
            <version>${project.version}</version>
        </dependency>

 

posted @ 2021-05-07 21:45  傲云萧雨  阅读(48)  评论(0编辑  收藏  举报