spring mvc

Spring、Spring Boot与Spring MVC

夙愿已清 提交于 2019-11-29 15:52:34
总论 Spring框架就像一个家族,有众多衍生产品例如boot、security、jpa等等。但他们的基础都是Spring的ioc和aop。ioc提供了依赖注入的容器,aop解决了面向横切面的编程;然后在此二者的基础上实现了其他延伸产品的高级功能。 Spring MVC是基于 Servlet 的一个 MVC 框架,主要解决 WEB 开发的问题。 后来因为 Spring 的配置非常复杂,各种XML、 JavaConfig处理起来比较繁琐。于是为了方便开发者使用,从而又推出了Spring BOOT,简化了Spring的配置流程。 说得更简便一些:Spring 最初利用“工厂模式”(DI)和“代理模式”(AOP)解耦应用组件。大家觉得挺好用,于是按照这种模式搞了一个MVC框架(一些用Spring解耦的组件),用来开发web应用,最终形成了SpringMVC。然后有发现每次开发都写很多样板代码,为了简化工作流程,于是开发出了一些“懒人整合包”(starter),这套就是 Spring BOOT。 Spring MVC的功能 Spring MVC提供了一种轻度耦合的方式来开发web应用。 Spring MVC是Spring的一个模块,一个web框架。通过Dispatcher Servlet、ModelAndView 和 View Resolver,开发web应用变得很容易

Spring Cloud-Honghu Cloud分布式微服务云系统—技术点

余生颓废 提交于 2019-11-28 09:37:18
鸿鹄Cloud是基于springcloud的,spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢? 下面我针对于spring cloud微服务分布式云架构做了以下技术总结: View : H5、Vue.js Spring Boot/Spring Cloud : Zuul、Ribbon、Feign、Turbine、Hystrix、Oauthor2、Sleuth、API Gateway、Spring Cloud、Config Eureka、SSO、Spring Cloud、 BUS、Turbine、Zipkin、Cache、Spring Cloud Admin、API Gateway、ELK Spring Cloud Security、 Spring Cloud Stream Component : RoketMQ、Kafka、MongoDB、OSS、Redis、Swagger、Zuul、Label、BASE、Charts、Utils DAO : Spring Data、Mybatis、OSS、 DTO Data Storage : RDBS DFS、NOSQL/Hadoop Infrastructure : LogBack、BUS、Jenkins、Zipkin、Druid、Swagger、Docker

1:spring mvc 概述

依然范特西╮ 提交于 2019-11-27 17:32:21
什么是mvc 什么是spring mvc Spring MVC 是一种基于 Java 的实现了 Web MVC 设计模式的请求驱动类型的轻量级 Web 框架, 即使用了MVC 架构模式的思想,将 web 层进行职责解耦, 基于请求驱动指的就是使用请求-响应模型, 框架的目的就是帮助我们简化开发, Spring Web MVC 也是要简化我们日常 Web 开发的。 spring mvc能做什么 ▶ 进行更简洁的 Web 层的开发; ▶ 天生与 Spring 框架集成(如 IoC 容器、 AOP 等); ▶ 提供强大的约定大于配置的契约式编程支持; ▶ 能简单的进行 Web 层的单元测试;提供强大的约定大于配置的契约式编程支持; ▶ 能简单的进行 Web 层的单元测试; ▶ 支持灵活的 URL 到页面控制器的映射; ▶ 非常容易与其他视图技术集成,如 Velocity、FreeMarker 等等, 因为模型数据不放在特定的 API 里,而是放在一个Model 里(Map 数据结构实现, 因此很容易被其他框架使用); ▶ 非常灵活的数据验证、 格式化和数据绑定机制, 能使用任何对象进行数据绑定, 不必实现特定框架的 API;提供一套强大的 JSP 标签库, 简化 JSP 开发; ▶ 支持灵活的本地化、 主题等解析; ▶ 更加简单的异常处理; ▶ 对静态资源的支持; ▶ 支持

Spring MVC静态资源url映射处理

点点圈 提交于 2019-11-27 11:09:08
今天发现网上有些坑爹的博客,估计博主自己也没要用过,就写了出来,害得我折腾半天。鉴于避免其他同学出现类似的情况,写出来,也请大家指正。 优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往使用 *.do 、 *.xhtml、*.hml等后缀方式进行区分。这就决定了请求URL必须是一个带后缀的URL,而无法采用真正的REST风格的URL。通俗说RESTf风格就是在 Sp ring MVC 3.0新增的,它通过不带扩展名的URL来访问系统资源。 如果将DispatcherServlet请求映射配置为"/",则Spring MVC将捕获Web容器所有的请求,包括静态资源的请求,Spring MVC会将它们当成一个普通请求处理,因此找不到对应处理器将导致错误。 如何让Spring框架能够捕获所有URL的请求,同时又将静态资源的请求转由Web容器处理,是可将DispatcherServlet的请求映射配置为"/"的前提。由于REST是Spring3.0最重要的功能之一,所以Spring团队很看重静态资源处理这项任务,给出了堪称经典的两种解决方案。 先调整web.xml中的DispatcherServlet的配置,使其可以捕获所有的请求:

Spring Cloud-honghu Cloud分布式微服务云系统

被刻印的时光 ゝ 提交于 2019-11-27 06:28:48
简介 鸿鹄云Cloud是基于SpringCloud来封装的,是一系列框架的有序集合。利用Spring Boot的开发模式简化了分布式系统基础设施的开发,如 服务发现、注册、配置中心、消息总线、负载均衡、断路器、数据监控 等(这里只简单的列了一部分),都可以用Spring Boot的开发风格做到一键启动和部署。鸿鹄云Cloud将目前比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装,屏蔽掉了复杂的配置和实现原理,最终整合出一套简单易懂、易部署和易维护的分布式系统架构平台。 鸿鹄 Cloud 组成 SpringCloud的子项目,大致可分成两类: 一类是对现有成熟框架Spring Boot的封装和抽象,也是数量最多的项目; 第二类是开发了一部分分布式系统的基础设施的实现,如SpringCloud Stream就是kafka, ActiveMQ这样的角色。开发人员进行微服务的实践,第一类子项目就已经足够使用,如: 1. SpringCloud Netflix 是对Netflix开发的一套分布式服务框架的封装,包括服务的发现和注册,负载均衡、断路器、REST客户端、请求路由等。 2. SpringCloud Config 将配置信息中央化保存, 配置SpringCloud Bus可以实现动态修改配置文件。 3. SpringCloud Bus