SpringMVC框架学习

Spring MVC 通过一套 MVC 注解,可以让 POJO 成为处理请求的控制器,无须实现任何接口

1. 搭建环境:

1). 加入 jar 包:

commons-logging-1.1.1.jar
spring-aop-4.0.0.RELEASE.jar
spring-beans-4.0.0.RELEASE.jar
spring-context-4.0.0.RELEASE.jar
spring-core-4.0.0.RELEASE.jar
spring-expression-4.0.0.RELEASE.jar

spring-web-4.0.0.RELEASE.jar
spring-webmvc-4.0.0.RELEASE.jar

2). 在 web.xml 文件加入对 Spring MVC 的配置:

I.   参看 docs/spring-framework-reference/htmlsingle/index.html#mvc-servlet
II.  具体配置:

<servlet>
        <servlet-name>dispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
             <param-name>contextConfigLocation</param-name>
             <param-value>classpath:spring-mvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

<servlet-mapping>
        <servlet-name>dispatcherServlet</servlet-name>
        <url-pattern>*.action</url-pattern>
    </servlet-mapping>

3). 加入 Spring MVC 的配置文件: 在类路径下新建 Spring 的配置文件 spring-mvc.xml.

4). 编写一个 Controller:

@Controller
public class HelloWorldController {
    
     @RequestMapping("/helloWorld")
     public String helloWolrd(){
          System.out.println("HelloWorld SpringMVC");
          return "/success";
     }
    
}

5). 具体编辑 spring-mvc.xml

<!-- 配置自动扫描的包 -->
     <context:component-scan base-package="com.atguigu.springmvc"></context:component-scan>

<!-- 配置 SpringMVC 的视图解析器 -->
     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
          <property name="prefix" value="/WEB-INF/view"></property>
          <property name="suffix" value=".jsp"></property>
     </bean>
    
6). 编辑两个 JSP:

I.  在 WEB 应用的根目录下新建 inde.jsp, 编辑: <a href="helloWorld.action">Spring MVC HelloWorld</a>
II. 在 WEB 应用的 WEB-INF 下新建 view 文件夹, 在 view 下新建一个 success.jsp

时间: 2024-08-30 15:35:40

SpringMVC框架学习的相关文章

SpringMVC框架学习笔记(1)——HelloWorld

搭建SpringMVC框架 1.添加jar包 jsp-api.jar servlet-api.jar jstl.jar commons-logging-1.1.1.jar spring-beans-4.1.6.RELEASE.jar spring-context-4.1.6.RELEASE.jar spring-core-4.1.6.RELEASE.jar spring-expression-4.1.6.RELEASE.jar spring-tx-4.1.6.RELEASE.jar spring

SpringMVC框架学习笔记(4)——结果跳转方式

1.设置ModelAndView对象.根据View和视图解析器跳转到指定页面(视图解析器前缀+viewname+视图解析器后缀) @Override public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) throws Exception { ModelAndView mv = new ModelAndView(); mv.setViewName("hello"); mv.a

SpringMVC框架学习笔记(2)——使用注解开发SpringMVC

1.配置web.xml <servlet> <servlet-name>mvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-v

SpringMVC框架学习(2)--SpringMVC和Mybatis的整合

整个项目源码的下载地址:源码--FishRoad 整个项目的目录结构如下: 以上是整个项目的目录以及所用的jar包. web.xml配置文件如下: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j

SpringMVC框架学习笔记(二)

6. 源码分析(了解) 通过前端控制器源码分析springmvc的执行过程. 第一步:前端控制器接收请求 调用doDispatch 第二步:前端控制器调用处理器映射器查找 Handler 第三步:调用处理器适配器执行Handler,得到执行结果ModelAndView 第四步:视图渲染,将model数据填充到request域. 视图解析,得到view: 调用view的渲染方法,将model数据填充到request域 渲染方法: 7. 入门程序小结 通过入门程序理解springmvc前端控制器.处

Java SpringMVC框架学习(三)springMVC的执行流程

具体执行逻辑如下: 浏览器提交请求到中央调度器. 中央调度器将请求转给处理器映射器. 处理器映射器根据请求, 找到请求对应的处理器, 并将其封装为处理器执行链返回给中央调度器. 中央调度器根据处理器执行链中的处理器, 找到能够执行该处理器的适配器. 适配器调用执行处理器. 处理器将处理结果以及要跳转的视图封装到一个对象ModelAndView中, 并将其返回给处理器适配器. 适配器将结果返回给中央调度器. 中央调度器调用视图解析器, 将ModelAndView中的视图名封装为视图对象. 视图解析

SpringMVC框架学习笔记(3)——controller配置汇总

1.通过URL对应bean <!-- 配置handlerMapper 映射器 --> <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/> <!-- 配置Controller 自定义控制器 --> <bean name="/hello.do" class="cn.sxt.controller.HelloCo

SpringMVC框架学习笔记——各种异常、报错解决

1.Target runtime com.genuitec.runtime.generic.jee60 is not defined. 找到导入项目的.setting文件夹org.eclipse.wst.common.project.facet.core.xml文件 删除<runtime name="com.genuitec.runtime.generic.jee60"/>这一段 2.Implementation of project facet jst.web.jstl

Java SpringMVC框架学习(二)httpServeltRequest和Model传值的区别

为什么大多程序在controller中给jsp传值时使用model.addAttribute()而不使用httpServeletRequest.setAttribute()? 事实上model数据,最终spring也是写到HttpServletRequest属性中,只是用model更符合mvc设计,减少各层间耦合. @RequestMapping(value="/list",method=RequestMethod.GET) public String list(Model model