spring-mvc
来源:互联网 发布:阿里云 p7 编辑:程序博客网 时间:2024/06/05 16:16
MVC
1. 将web页面中的输入元素封装为一个(请求)数据对象
2. 根据请求的不同,调度相应的逻辑处理单元,并将(请求)数据对象作为参数传入。
3. 逻辑处理单元完成运算后,返回一个结果数据对象。
4. 将结果数据对象中的数据与预先设计的变现层相融合并展现给用户
MVC(Model View Controller)是模型(model)-视图(view)-控制器(controller)
使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表面形式上,分离视图层和业务逻辑层也使得WEB应用更易于维护和修改
Spring
Spring的依赖注入机制,可以在运行期为组件配置所需资源,而无需在编写组件代码时就加以指定。
Spring在运行期间将视图发送的请求绑定到控制器。
web.xml中的重要定义
<servlet>
<servlet-name>Dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/spring-mvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
1. Servlet定义:
org.springframework.web.servlet.DispatcherServlet
负责请求调度的核心引擎。
<init-param></init-param>节点中配置了Spring中配置文件的位置
2. 请求映射<url-pattern>/</url-pattern>
我们这里设定所有的请求都会经过Spring mvc的分发,也可以设定为*.do,则只有带有“.do”的请求才会被spring mvc分发
spring-mvc文件中,包含了所有“请求/处理单元”的关系映射设定
1. 视图解析器(View Resolver 的prefix和suffix)
指定了表现层资源的前缀和后缀,运行时,spring将为指定的表现层资源自动追加前缀和后缀,以形成一个完整的资源路径。
<beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 前缀 -->
<propertyname="prefix"value="/WEB-INF/jsp/"></property>
<!-- 后缀 -->
<propertyname="suffix"value=".jsp"></property>
</bean>
2. 静态资源映射
一般在这个位置映射的资源都是css和js,在这里映射的资源,不会被spring mvc进行请求分发。
<mvc:resourceslocation="/css/"mapping="/css/**"/>
<mvc:resourceslocation="/Script/"mapping="/Script/**"/>
3. 扫描注解
<mvc:annotation-driven />
是一种简写形式,完全可以手动配置替代这种简写形式,简写形式可以让初学者
会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter 两个bean,是spring MVC为@Controllers分发请求所必须的。
- spring mvc
- spring mvc
- spring mvc
- spring,MVC
- Spring MVC
- spring mvc
- Spring-MVC
- Spring MVC
- Spring MVC
- Spring MVC
- SPring MVC
- spring mvc
- Spring mvc
- spring MVC
- spring mvc
- spring mvc
- spring mvc
- Spring MVC
- ubuntu16.04安装caffe以及各种问题汇总
- 【Objective-C基础】委托、非正式协议、正式协议
- BigDecimal 加减乘除运算
- 移动端WebApp隐藏地址栏的方法
- 设置iframe高度自适应
- spring-mvc
- hibernate注解(二)
- 常用方法
- NSString 基本用法
- python词云 wordcloud入门
- C++著名类库
- 如何根据动态SQL代码自动生成DTO
- Dubbo入门
- nginx限制某个IP同一时间段的访问次数