SpringMVC的配置和使用

什么是SpringMVC?

SpringMVC是Spring家族的一员,Spring是将现在开发中流行的组件进行组合而成的一个框架!它用在基于MVC的表现层开发,类似于struts2框架

导入开发包

前6个是Spring的核心功能包【IOC】,第7个是关于web的包,第8个是SpringMVC包

  • org.springframework.context-3.0.5.RELEASE.jar
  • org.springframework.expression-3.0.5.RELEASE.jar
  • org.springframework.core-3.0.5.RELEASE.jar
  • org.springframework.beans-3.0.5.RELEASE.jar
  • org.springframework.asm-3.0.5.RELEASE.jar
  • commons-logging.jar
  • org.springframework.web-3.0.5.RELEASE.jar
  • org.springframework.web.servlet-3.0.5.RELEASE.jar

编写Action

Action实现Controller接口

public class HelloAction implements Controller {
@Override
public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
return null;
}
}

  

我们只要实现handleRequest方法即可,该方法已经说了request和response对象给我们用了。这是我们非常熟悉的request和response对象。然而该方法返回的是ModelAndView这么一个对象,这是和Struts2不同的。Struts2返回的是字符串,而SpringMVC返回的是ModelAndView

ModelAndView其实他就是将我们的视图路径和数据封装起来而已【我们想要跳转到哪,把什么数据存到request域中,设置这个对象的属性就行了

public class HelloAction implements Controller {
@Override
public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
ModelAndView modelAndView = new ModelAndView();
//跳转到hello.jsp页面。
modelAndView.setViewName("/hello.jsp");
return modelAndView;
}
}

  

注册核心控制器

在Struts2中,我们想要使用Struts2的功能,那么就得在web.xml文件中配置过滤器。而我们使用SpringMVC的话,我们是在web.xml中配置核心控制器

<!-- 注册springmvc框架核心控制器 -->
<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:hello.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<!--映射的路径为.action-->
<url-pattern>*.action</url-pattern>
</servlet-mapping>

  

创建SpringMVC控制器

我们在hello.xml配置文件中把SpringMVC的控制器创建出来

<!--
注册控制器
name属性的值表示的是请求的路径【也就是说,当用户请求到/helloAction时,就交由HelloAction类进行处理】
-->
<bean class="HelloAction" name="/hello.action"></bean>

  

访问

当我们在浏览器访问http://localhost:8080/hello.action的时候,Spring会读取到我们的访问路径,然后对比一下我们的配置文件中是否有配置/hello.action,如果有。那么就交由对应的Action类来进行处理。Action类的业务方法将其请求输出到hello.jsp页面上。


最新文章

  1. 【原】tomcat 7 启动报错:java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()Ljavax/servlet/SessionCookieConfig的解决
  2. Three.js制作360度全景图
  3. HDU3535AreYouBusy[混合背包 分组背包]
  4. 对iOS中Delegate的理解
  5. Magento Table Rate运费国家代码汇总
  6. IE浏览器GET传参后台乱码
  7. codeforce
  8. SVN配置使用
  9. 一步一步学习SignalR进行实时通信_8_案例2
  10. python 参议院文本预处理的一维数组的间隔空间
  11. 一种用javascript实现的比较兼容的回到顶部demo + 阻止事件冒泡
  12. JavaScript 中 if 条件判断
  13. openssh-clients(CentOS 7 自带的SSH客户端)
  14. 利用shell实现批量添加用户
  15. attr和prop的区别以及在企业开发中应该如何抉择
  16. python 时间戳和时间格式互相转换
  17. 安全之路 —— C/C++实现利用添加注册表项实现文件自启动
  18. java代码审计文章集合
  19. 高并发和大流量解决方案--CND加速
  20. Linux Install redis

热门文章

  1. Linux apache的运行用户和用户组
  2. asp.net core 学习资料整理
  3. SVG初尝试(一)
  4. 两条命令,实现ssh免密登陆
  5. python json按输入顺序输出内容
  6. idea cpu 卡慢 占用100%
  7. 程序守护服务 Supervisor
  8. PHP金钱数字转金钱大写
  9. DevExpress控件库 开发使用经验总结1 DevExpress简介、安装、使用
  10. 通过iis访问电脑文件