spring开发模式的工作流程
spring是程序设计基础吗?
spring是程序设计基础吗?
spring是程序设计基础。
Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
spring启动原理?
spring启动时先读取xml启动配置文件,然后启动Tomcat服务,最后加载jar包,按照代码中开发的服务,对外提供rest接口,等待外部服务的调用。
spring语言什么时候出来?
spring语言是2003年出来的。2002 年 10 月,Rod Johnson 撰写了一本名为 Expert One-on-One J2EE 设计和开发的书。本书由 Wrox出版,介绍了当时 Java 企业应用程序开发的情况,并指出了 Java EE 和 EJB 组件框架中的存在的一些主要缺陷。在这本书中,他提出了一个基于普通 Java 类和依赖注入的更简单的解决方案。
在本书发布后不久,开发者 Juergen Hoeller 和 Yann Caroff 说服 Rod Johnson 创建一个基于基础结构代码的开源项目。Rod,Juergen 和 Yann 于 2003 年 2 月左右开始合作开发该项目 。Yann 为新框架创造了“Spring”的名字。Yann Caroff 在早期离开了团队,Rod Johnson 在 2012 年离开,Juergen Hoeller 仍然是 Spring 开发团队的积极成员。
自 2004 年 1.0 版本发布以来,Spring 框架迅速发展。Spring 2.0 于 2006 年 10 月发布,到那时,Spring的下载量超过了 100 万。Spring 2.0 具有可扩展的 XML 配置功能,用于简化 XML 配置,支持 Java 5,额外的 IoC 容器扩展点,支持动态语言。
Dubbo框架的开发流程是怎么样的?
Dubbo架构介绍
Dubbo经常会和SpringCloud微服务架构作比较,但实际上两者侧重的领域是有很大不同的。Dubbo侧重于服务治理即服务的注册更新、管理服务的生命周期、定制服务的遵从规则,确保服务一致性、服务监控等、服务的调用等。而SpringCloud则侧重于整个微服务生态,除了服务治理以外对服务网关、分布式配置、服务跟踪、消息总线、数据流、批量任务等都有很好的技术规范实现。可以看出来Dubbo可以作为SpringCloud生态的一部分和SpringCloud整合在一起提供服务治理方面的支持。虽然功能没有SpringCloud整个生态完善,但是就服务治理来讲,Dubbo有着诸多优势:
1.支持更多协议,如:rmi、hessian、http、webservice等。
2.效率更高,因为访问方式的不同Dubbo能有更好的表现。
3.服务治理提供粒度更小的管理。
Dubbo核心功能:
1.远程通讯,提供对多种基于长连接的 NIO 框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。
2.集群容错,提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。
3.自动发现,基于注册中心目录服务,使服务消费方能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。
Dubbo架构如下图所示:
由上图可知Dubbo的服务调用流程如下:
1.服务提供者将自己发布注册到服务注册中心暴露服务
2.服务消费者从服务注册中心订阅服务
3.服务消费者根据注册中心获取的服务进行进行远程调用
Dubbo本地开发环境搭建
Duoobo服务注册注册中心的搭建,我们将使用Zookeeper作为实际注册中心进行操作演练。
Dubbo项目的搭建
使用eclipse新建一个服务提供者的maven项目。这里新建一个项目名为:dubbo-provider用来提供根据用户名来返回用户信息的简单实例:
1.首先将Dubbo和Zookeeper的依赖架包进行引入。
新建服务提供接口和具体实现类,在eclipse下创建名为:dubbo-provider的maven项目。
1.创建用户信息查询服务接口QueryUserInfoService提供一个根据用户名返回用户信息的接口getUserInfo(String name)。
2.创建具体的实现类QueryUserInfoServiceImpl,实现根据用户名返回一个用户信息的字符串。
3.在resources文件夹下创建applicationProvider.xml配置服务类的相关信息,用来注册和暴露服务。
4.创建服务注册类:ServerMain读取配置文件,注册配置文件中的服务,配置完成后启动该类即可完成服务的注册。
配置监控中心。如果我们需要对自己的服务进行监控和查看需要安装Monitor服务。1.在Github上下载dubbo-admin项目后修改目录下的文件:
1)配置zk地址:
2)配置登录用户root密码:
2.构建项目,在dubbo-admin目录下
使用maven命令打包:mvn clean package
3.运行dubbo-admin项目可以用以下两种方式:
1)mvn --projects dubbo-admin-server spring-boot:run
2)cd dubbo-admin-distribution/targejava -jar dubbo-admin-0.1.jar
4.运行成功后即可通过默认的127.0.0.1:8080访问监控后台页面
新建服务消费者项目实现对服务提供者进行服务消费,在eclipse下创建名为:dubbo-customer的maven项目。
1.引入或创建服务接口QueryUserInfoService类
2.在resources文件夹下创建applicationContext.xml配置注册中心信息,用来获取服务信息。
3.创建一个消费测试类QueryUserInfoService调用服务。