Hello SpringMVC
1. MVC框架能做哪些事情?
- 讲url映射到java类或者方法
- 封装用户提交的数据
- 处理请求-调用相关业务处理-封装相应数据
- 将相应数据进行渲染 jsp/html/freemaker等
- ...
2. 关于SpringMVC:是一个轻量级的基于请求响应的MVC框架
3. 为什么要学习SpringMVC?
- 性能较Structs2好
- 简单,便捷,易学
- 和spring无缝集成(spring ioc,aop)
- 约定优于配置
- 能够进行简单Junit测试
- 支持restful风格
- 异常处理
- 本地化,国际化
- 数据验证,类型转换
- 拦截器
- 用的人多(哈...)
- ...
4. 简单了解结构
5. Hello SpringMVC 案例
步骤:
a)导入相关jar包
commons-logging-1.2.jar
spring-beans-4.3.6.RELEASE.jar
spring-context-4.3.6.RELEASE.jar
spring-context-support-4.3.6.RELEASE.jar
spring-core-4.3.6.RELEASE.jar
spring-expression-4.3.6.RELEASE.jar
spring-web-4.3.6.RELEASE.jar
spring-webmvc-4.3.6.RELEASE.jar
taglibs-standard-compat-1.2.5.jar
taglibs-standard-impl-1.2.5.jar
taglibs-standard-jstlel-1.2.5.jar
taglibs-standard-spec-1.2.5.jar
b)配置web.xml文件-分发器
<servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
c)添加springmvc的配置文件:默认在web-inf目录下添加[DispacherServlet Name]-servlet.xml文件
d)编写hellocontroller.java
public class HelloController implements Controller { @Override public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) throws Exception { // TODO Auto-generated method stub ModelAndView mav = new ModelAndView(); //封装要显示到视图中的数据 mav.addObject("msg", "hello springmvc"); //视图名 mav.setViewName("hello"); return mav; } }
e)编写springmvc配置文件
<!-- 配置 HandlerMapping --> <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean> <!-- 配置 handlerAdapter --> <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"></bean> <!-- 配置渲染器 --> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <!-- 结果视图的前缀 --> <property name="prefix" value="/WEB-INF/jsp/"/> <!-- 结果视图的后缀 --> <property name="suffix" value=".jsp"/> </bean> <!-- 配置请求和处理器 --> <bean name="/hello.do" class="com.test.controller.HelloController"></bean>
f)测试
http://localhost:8888/springmvc_hello/hello.do