Spring
文章平均质量分 92
gonghaiyu
7年开发经验,2年项目管理经验。曾分别就职于某军工所,京东,美的等全球500强企业。
展开
-
Spring Cloud封神之旅(一)-微服务与springcloud
微服务微服务架构的提出者 Martin Fowler 在其文章Microservices中定义了包括服务组件化、去中心化、基础设施自动化在内的多个微服务架构特点。微服务架构三大要素,即如下图所示的业务建模、技术体系和研发过程。微服务架构的第一要素:业务建模为什么我们首先需要考虑的是这个要素呢?因为微服务架构与传统 SOA 等技术体系有本质区别,就是其服务的粒度和服务本身的面向业务和组件化特性。针对服务建模,我们首先需要明确服务的类别,以及服务与业务之间的关系,尽可能明确领域的边界。针对服务建模,原创 2021-06-16 23:01:56 · 2047 阅读 · 12 评论 -
spring专栏(三)
示例下面示例表示当前线程中,每获取一个连接提交一个事务,在下面这种情况,我们应该一个事务控制多个链接的提交和回滚。这个问题就是:事务被自动控制了。换言之,我们使用了connection对象的setAutoCommit(true)此方式控制事务,如果我们每次都执行一条 sql 语句,没有问题,但是如果业务方法一次要执行多条 sql语句,这种方式就无法实现功能了。Connection、SqlSession与Transaction的关系示例改进//ConnectionUtils.java/**原创 2021-04-05 13:13:58 · 100 阅读 · 0 评论 -
spring专栏(一)
spring的优势方便解耦,简化开发通过 Spring提供的 IoC容器,可以将对象间的依赖关系交由 Spring进行控制,避免硬编码所造成的过度程序耦合。用户也不必再为单例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。AOP编程的支持通过 Spring的 AOP 功能,方便进行面向切面的编程,许多不容易用传统OOP 实现的功能可以通过 AOP 轻松应付。声明式事务的支持可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活的进行事务的管理,提高开发效率和质原创 2021-02-22 23:18:42 · 182 阅读 · 0 评论 -
分布式事务原理及落地方案
分布式事务主要有两种处理方式,一种是通过强一致性来保证的,一种是通过最终一致性来保证。他们典型的方案有:强一致性最终一致性一致性理论分布式事务的目的是解决应用垂直拆分后的分库数据的一致性的,所以,应用的垂直拆分规则对分布式事务的影响非常大。如果某个节点宕机,就无法像单机一样保证事务的ACID。业界CAP理论告诉我们,为了保证分布式环境下事务的一致性,需要将数据一致性、系统可靠性和分区容忍性放一起考虑。CAP理论在分布式系统中,一致性(Consistency)、可用性(Availability原创 2020-11-07 16:27:56 · 250 阅读 · 0 评论 -
Spring 5.0版本全家桶四
Web 开发进阶设计好的 RESTful Web ServiceRoy Thomas Fielding:REST提供了⼀组架构约束,当作为一个整体来应⽤时,强调组件交互的可伸缩性、接⼝的通用性、组件的独⽴部署、以及用来减少交互延迟、增强安全性、封装遗留系统的中间组件。Richardson 成熟度模型Richardson使用三个因素来决定服务的成熟度,即URI,HTTP方法和HATEOAS(超媒体)。服务越多采用这些技术 - 应该考虑更成熟。Level 0成熟度的零级别不使用任何URI,HT原创 2020-09-30 16:57:56 · 341 阅读 · 0 评论 -
Spring的核心功能及执行流程
Spring BeanSpring Bean的注册方式XML配置文件的注册方式Java注解的注册方式Java API的注册方式注意:xml的优先级会高于注解的优先级,即如果配置了xml和注解两种注册方式,则通过xml注册的属性值会覆盖注解设置的属性值。XML 配置文件注册方式<bean id="person" class="org.springframework.beans.Person"> <property name="id" value="1"/>原创 2020-07-28 17:02:52 · 630 阅读 · 0 评论 -
(基础)YAML语法及K8S参数
目前项目中配置文件采用yml方式,有必要对yml的配置重新复习下。起因因最近使用配置时,发现一个变量获得的值与实际的值不对。#产品号visualCodeProductCode: 010001private String visualCodeProductCode;在java对象中获取的值为:4097问题分析其他值获取的都没有问题,查看并没有被其他变量覆盖。想到是否是yml中将010001当做了int类型进行转化为java对象中的String类型。通过网上工具发现,确实是这样。重新学习基原创 2020-06-11 10:31:27 · 1808 阅读 · 0 评论 -
手写SpringMVC
/**前端控制器也是用java语言编写,主要用来处理网络请求势必会集成HttpServlet j2ee规范https://v.qq.com/x/page/c0393ws95u5.html@WebServlet注解将DispatcherServlet(中央控制器)交给容器进行管理,servlet3.0的注解 */ @WebServlet(“/DispatcherServlet”) p...原创 2020-02-15 09:31:37 · 114 阅读 · 0 评论 -
Spring事务使用注意事项
Spring事务注意事项Spring有两种事务操作方式。1.采用编程式事务。2.采用注解声明式事务。编程式事务依赖于Spring事务管理的两个核心类。分别式:1. PlatformTransactionManager2. TransactionTemplate(推荐使用)PlatformTransactionManager的使用 1. 先注入DataSource到事务管理器中...原创 2018-12-09 17:38:00 · 849 阅读 · 0 评论