![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
文章平均质量分 63
xinluke
这个作者很懒,什么都没留下…
展开
-
Spring Resource加载资源
Spring提供了一个强大加载资源的机制,原创 2016-05-20 00:13:53 · 3892 阅读 · 0 评论 -
RESTful API总结
误区使用restful的api设计,对于springmvc进行api定义不是很方便?例如,设计一个查询一个应用下面某个订单号信息的api 假如使用传统的url设计思路http://www.example.com/order?appKey=adsds&orderId=2434545对应要写的mapping方法为@GetMapping("order") public Order getOrde原创 2017-08-06 18:25:57 · 1232 阅读 · 0 评论 -
Feign接口编写规范
不要在接口类名上使用RequestMapping虽然可以使用,但同时SpringMVC会把该接口的实例当作Controller开放出去,这个可以在启动的Mapping日志中查看到。 这样的做法会污染调用方的mapping映射空间。假如在controller中存在相同路径的url,会造成项目启动失败。原创 2017-07-26 14:21:08 · 4714 阅读 · 1 评论 -
spring cloud 监控配置
pom.xml中添加依赖引入监控相关的jar<!-- 监控 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId></dependency>actuator内置常规的endpoint(端点),通过spring原创 2017-06-27 17:54:48 · 1155 阅读 · 0 评论 -
Spring Cloud微服务交互设计总结
采用http协议进行数据交互在spring cloud微服务交互中,基本上还是采用http协议进行数据交互。 与dubbo不同的是,http协议与编程语言无关,所以无法向dubbo一样,将抛出的Exception的内容进行序列化传到调用方,所以只能采用错误码的方式来传递异常消息。数据的包装形式当调用正常的情况下,只需要返回完整的数据对象即可。josnObject or jsonArray当出现错误原创 2017-07-13 13:14:59 · 2640 阅读 · 0 评论 -
hystrix适用场景
在分布式架构中,当某个服务单元发生故障(类似用电器发生短路)之后,通过断路器的故障监控(类似熔断保险丝),向调用方返回一个错误响应,而不是长时间的等待。这样就不会使得线程因调用故障服务被长时间占用不释放,避免了故障在分布式系统中的蔓延。hystrix适用场景核心无降级业务计费业务,id生成器业务作为核心业务,是整个短信业务的核心,如果引入熔断机制会导致业务流程失败,相当于整个短信业务不可用,所以这类原创 2017-06-13 16:31:01 · 4337 阅读 · 0 评论 -
Feign logging
spring cloud netfix组件中,feign相关的日志默认是不会输出的。 Logger.Level用于通知Feign进行记录的log的详细程度。NONE, No logging (DEFAULT).BASIC, Log only the request method and URL and the response status code and execution time.HEAD原创 2017-04-14 15:15:16 · 4399 阅读 · 0 评论 -
项目改造接入Spring Cloud流程
首先,项目先改造为spring boot工程建议,采用下列方式引入spring boot依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE原创 2017-03-29 14:24:13 · 11989 阅读 · 0 评论 -
Spring-Rabbit消费多个mq中相同的队列
因为业务规模比较大,采用多台rabbitmq服务器进行处理,在每台rabbitmq建立相同的exchange,采用客户端分片的方式,生产者根据hash分发消息到不同的服务器中。 作为消费者,必须能支持消费全部rabbitmq的相同的exchange。这里因为4台mq,就在代码中写死数组下标package cn.jpush.sms.common;import org.springframework.原创 2017-01-11 20:40:11 · 4756 阅读 · 0 评论 -
Spring Boot整合Spring MVC
在Spring Boot工程中,只需要在pom.xml中配置 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>既可以在启动的时候开启w原创 2017-01-01 19:17:48 · 12093 阅读 · 1 评论 -
Spring进行Bean配置的方式:Annotation VS Xml
无论通过哪种进行的Bean配置,最终都会被Spring扫描到生成对应的BeanDefinition,进而根据BeanDefinition配置信息在ApplicationContext中进行初始化并且依赖注入。Annotation VS Xml采用Annotaion配置简单,编码简单易读,对于需要注入的字段可以通过Alt + /进行提示,不用担心在Xml中拼错字段 采用Java元配置,编写的时候可以原创 2017-01-02 00:25:51 · 684 阅读 · 0 评论 -
@RequestBody和@RequestParam区别
@RequestParam用来处理Content-Type: 为 application/x-www-form-urlencoded编码的内容。(Http协议中,如果不指定Content-Type,则默认传递的参数就是application/x-www-form-urlencoded类型)RequestParam可以接受简单类型的属性,也可以接受对象类型。 实质是将Request.getParam原创 2016-09-30 13:18:21 · 115371 阅读 · 18 评论 -
Spring配置中<bean>的id和name属性区分
ID属性在spring容器管理的Bean中,必须仅且只有一个无重复的ID。手动指定ID属性一般情况下,配置一个bean时,需要指定它的ID属性作为bean的名称。<bean id="helloWorld" class="com.learnSpring.hellWorld"/>Q:如果在spring环境下,如果出现多个配置ID属性值一样的bean如果spring是默认设定,即可以覆盖bean定义,则原创 2016-09-28 14:53:22 · 10869 阅读 · 1 评论 -
dev,test环境公用一个Eureka的总结
保证不同环境服务调用稳定为了dev环境和test环境下的服务调用不会乱串,必须在eureka上报中指定自己的所属分区配置application-test.ymleureka: instance: metadata-map: zone: test而dev环境中的配置不需要特别指定,以默认的zone即可。 这样,在服务在Eureka中注册成功后,从Eureka中拉取全部注册的A原创 2017-07-13 15:12:31 · 8559 阅读 · 1 评论