SpringMVC框架特点
清晰地角色划分。
灵活的配置功能。
提供了大量的控制器接口和实现类。
真正做到与View层的实现无关(JSP、Velocity、Xslt等)。
国际化支持。
面向接口编程。
Spring提供了Web应用开发的一整套流程,不仅仅是MVC,他们之间可以很方便的结合一起。
MVC设计模式
模型(Model)-对应组件:JavaBean。
视图(View)-对应组件:JSP或者HTML文件。
控制器(Controller)-对应组件:Servlet。
MVC 优点:
多视图共享一个模型,大大提高代码的可重用性。
MVC三个模块相互独立,松耦合架构。
控制器提高了应用程序的灵活性和可配置性。
有利于软件工程化管理。
MVC 缺点:
原理复杂。
增加了系统结构和实现的复杂性。
视图对模型数据的低效率访问。
SpringMVC程序实现步骤
Spring MVC框架搭建步骤:
(1) 下载jar文件并导入工程
spring-web-3.2.13.RELEASE.jar
spring-webmvc-3.2.13.RELEASE.jar
(2) 配置文件
在web.xml中配置Servlet,定义DispatcherServlet。
创建Spring MVC的配置文件。
(3) 创建Controller(处理请求的控制器)
(4) 创建View(JSP视图)
(5) 部署运行
控制器代码:
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class IndexController {
private Logger logger = Logger.getLogger(IndexController.class);
// RequestMapping表示用哪个url来对应(此处:"/index")
@RequestMapping("/index")
public String index() {
// System.out.println("hello,SpringMVC!");
logger.info("hello,SpringMVC!");
return "index";
}
}
SpringMVC配置文件spring-servlet.xml代码:
<context:component-scan base-package="cn.hyg.controller" />
<mvc:annotation-driven />
<!-- 完成视图的对应 -->
<!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
web.xml代码:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name>springMVC</display-name>
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc-servlet.xml</param-value>
</init-param>
<!-- 标记容器在启动的时候就加载这个servlet(实例化并调用其init()方法)。它的值必须是一个整数,表示servlet应该被载入的顺序 -->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
</web-app>
版权声明:本文为wfr661原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。