当前位置: 首页 > wzjs >正文

北京地区网站制作公司大连最好的做网站的公司

北京地区网站制作公司,大连最好的做网站的公司,互联云主机,网站建设常州麦策电商一.什么是 MVC? MVC 是 Model 、 View 和 Controller 的缩写,分别代表 Web 应用程序中的 3 种职责, MVC 是一种软件设计规范。它将业务逻辑、数据、显示分离的方法来组织代码,降低了视图与业 务逻辑之间的…

一.什么是 MVC?

MVC Model View Controller 的缩写,分别代表 Web 应用程序中的 3 种职责, MVC
是一种软件设计规范。它将业务逻辑、数据、显示分离的方法来组织代码,降低了视图与业
务逻辑之间的双向耦合。
Model( 模型 ) :数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型
JavaBean 组件(包含数据和行为),不过现在一般都分离开来: Value Object (数据 Dao
和 服务层(行为 Service )。也就是模型提供了模型数据查询和模型数据的状态更新等功能,
包括数据和业务。
View( 视图 ) :负责进行模型的展示,一般就是我们见到的用户界面,客户想看到的东西。
Controller( 控制器 ) :接收用户请求,委托给模型进行处理(状态改变),处理完毕后把返回
的模型数据返回给视图,由视图负责展示。也就是说控制器做了个调度员的工作。
最典型的 MVC 模式就是 JSP+Servlet+JavaBean 的模式。

二.什么是 Spring MVC?

Spring MVC 是一个基于 MVC 模式的 Web 框架,是 Spring 框架的一个模块。
它以 Spring IOC 容器为基础,并利用容器的特性来简化它的配置,所以 Spring MVC Spring
可直接整合使用。
Spring MVC MVC 流程进行了封装,屏蔽掉很多底层代码,让开发者可以更加轻松快捷 的完成基于 MVC 模式的 Web 开发。
总的来说: Spring MVC Spring Framework 的一部分,是基于 Java 实现 MVC 的轻量级 Web
框架。
Spring MVC 的特点:
Spring 框架的一部分,可以方便的利用 Spring 所提供的其他功能。
灵活性强,易于与其他框架集成。
提供了一个前端控制器 DispatcherServlet ,使开发人员无需额外开发控制器对象。
可自动绑定用户输入,并能正确的转换数据类型。
内置了常见的校验器,可以校验用户输入。如果校验不能通过,那么就会重定向到输入表单。
支持国际化。可以根据用户区域显示多国语言。
支持多种视图技术。它支持 JSP Velocity FreeMarker 等视图技术。
使用基于 XML 的配置文件,在编辑后,不需要重新编译应用程序。

三.SpringMVC 中的核心组件

1 )前端控制器( DispactherServlet ):接收请求、响应结果,相当于转发器,它是 SpringMVC
框架最核心的组件,有了它就能减少其他组件之间的耦合度。(不需要程序员开发)
2 )处理器映射器( HandlerMapping ):根据配置的映射规则(根据请求的 URL ),找到对
应的处理器。(不需要程序员开发)
3 )处理器适配器( HandlerAdapter ):适配调用具体的处理器,并且执行处理器中处理请求
的方法,执行完毕之后返回一个 ModelAndView 对象。
4 )处理器( Handler ):(需要程序员手动开发)。
5 )视图解析器( ViewResolver ):会根据传递过来的 ModelAndView 对象进行视图解析,根
据视图解析名解析称真正的视图 View 。(不需要程序员开发)
6 )视图( View ): View 是一个接口,它的实现类支持不同类型的视图。比如: JSP freemarker 、 Thymeleaf 等等。

四.Spring MVC 的执行流程

1 )当用户通过浏览器发起一个 HTTP 请求,请求直接到前端控制器 DispatcherServlet
2 )前端控制器接收到请求以后调用处理器映射器 HandlerMapping ,处理器映射器根据请
求的 URL 找到具体的 Handler ,并将它返回给前端控制器;
3 )前端控制器调用处理器适配器 HandlerAdapter 去适配调用 Handler
4 )处理器适配器会根据 Handler 去调用真正的处理器去处理请求,并且处理对应的业务
逻辑;
5 )当处理器处理完业务之后,会返回一个 ModelAndView 对象给处理器适配器,
HandlerAdapter 再将该对象返回给前端控制器;这里的 Model 是返回的数据对象, View
逻辑上的 View
6 )前端控制器 DispatcherServlet 将返回的 ModelAndView 对象传给视图解析器 ViewResolver
进行解析,解析完成之后就会返回一个具体的视图 View 给前端控制器。( ViewResolver
据逻辑的 View 查找具体的 View
7 )前端控制器 DispatcherServlet 将具体的视图进行渲染,渲染完成之后响应给用户(浏
览器显示)。

五.关于 Spring MVC 常用部分注解解释

@SpringBootApplication 此 注 解 是 一 个 组 合 注 解 , 包 含 了 ( @Configuration
@EnableAutoConfiguration @ComponentScan )三个重要注解的功能。其主要作用在于简化
启动类的编写,使得开发者可以快速搭建起一个基于 Spring 的应用程序框架。
@Component 标注在类上,表示将该类作为一个组件交给 Spring 容器管理。
@Controller 声明 Controller 组件,通常作用在控制层(如 Spring MVC Controller ),用于将控制层的类标识为 Spring 中的 Bean ,其功能与 @Component 相同。
@Service 声明 Service 组件 @Service( myMovieLister ) ,通常作用在业务层( Service 层),用于将业务层的类标识为 Spring 中的 Bean ,其功能与 @Component 相同。
@Repository 声明 Dao 组件,将数据访问层( DAO 层)的类标识为 Spring 中的 Bean ,其 功能与 @Component 相同。
@Resource 用于注入,默认按名称装配, @Resource(name= beanName )
@Autowired 用于注入,默认按类型装配
@Transactional: 事务管理
@RequestBody :注解实现接收 http 请求的 json 数据,将 json 转换为 java 对象。
@ResponseBody :注解实现将 conreoller 方法返回对象转化为 json 对象响应给客户。
@Scope: Spring IOC 容器中的一个作用域,在 Spring IOC 容器中,他用来配置 Bean 实例的
作用域对象。
@RequestMapping("/menu") 请求映射,用于映射 url 到控制器类或一个特定的处理程序方法。
可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
@GetMapping :它是 @RequestMapping(method =RequestMethod.GET) 的一个快捷方式,只
能处理 Get 类型请求。
@PostMapping : 它是 @RequestMapping(method =RequestMethod.POST) 的一个快捷方式,
只能处理 Post 类型请求。
@RequestParam :从请求中提取查询参数
http://www.dtcms.com/wzjs/799208.html

相关文章:

  • 网站有哪几种柳州最强的网站建设
  • 做网站域名备案需要多久wordpress设置固定链接不生效
  • 石家庄建设厅网站免费十八种禁用网站
  • PHP与网站建设的课后笔记百度关键词搜索热度
  • w3c网站代码标准规范怎样建设淘宝客导购网站
  • 怎么建设个人网站教程新开传奇网站新开网
  • 网站建站的步骤wordpress微信支付插件
  • 网站建设费用初步预算台州网络营销公司
  • 西安网站开发高端网站开发佛山网站搭建公司
  • 网站诊断及优化方案成立一个公司需要多少钱
  • 阜阳做网站的网络公司wordpress主页显示图片
  • 华夏运用网站服务器 无法访问网站
  • 网站开发技术与开发环境天津网站建设价格多少
  • 如何创建自己公司的网站wordpress主体中的psd
  • php网站建设教程视频公众号开发者怎么添加
  • 网站设计活动主题免费网址大全免费观看
  • 做自己的网站怎么赚钱有本地服务器怎么做网站
  • 上传网站的软件昆明网站建设大全
  • 个人网站界面设计图片互联网+创业项目计划书
  • wordpress官方网站制作公司网站大概多少钱
  • 网站百度终端适配代码胶州网站设计公司
  • 邢台网站制作哪家强如何做优品快报下的子网站
  • 为何建设银行的网站登不上去网站设计的基本步骤
  • 品牌型网站制作公司wordpress文章内翻页
  • 苏州网站建设方案策划找人做网站!!! 网站定制开发
  • 济南可信网站中文域名注册平台
  • 设计师个人网站源码软件开发公司好的有哪些
  • 常用的app开发制作上饶网站seo
  • 做网站映射tcpwordpress 删除主题
  • 网站建设后台 手工上传建设银行信用卡网站查询