SpringMVC系列(二)HelloWorld入门

  • Post author:
  • Post category:其他



有关SpringMVC环境的搭建和Demo网上比比皆是,这里不再赘述,本文的侧重点将放在:

配置文件的理解!


Hello World入门主要分为以下步骤:


1、准备开发环境和运行环境——>2、前端控制器的配置——>3、页面控制器——>4、开发视图页面——>5、启动服务器运行调试





1、准备开发环境和运行环境



开发工具:Eclipse


运行环境:Tomcat


工程:springmvc


依赖jar包(放在WEB-INF/lib下):


1、Spring框架的jar包


2、框架依赖jar包


日志:



commons.logging.

jar


JSTL标签库:jstl.jar   standard.jar




2、前端控制器的配置



(1)将用户请求缴费SpringMVC处理


在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>sprindmvc</servlet-name>  
        <url-pattern>/</url-pattern> 
 </servlet-mapping>



load-on-startup

:表示启动容器时初始化此Servelt



url-pattern

:标示有哪些请求需要SpringMVC处理。



/

:拦截所有请求



*.jsp

:拦截所有以.jsp为扩展名的请求


(2)在Spring配置文件中配置ViewResolver


默认DispatcherServlet会加载WEB-INF/lib下的springmvc-servlet.xml配置文件

<!-- ViewResolver -->  
<bean 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> 



InternalResourceViewResolver




用于支持 Servlet、JSP 视图解析;



viewClass




JstlView 表示 JSP 模板页面需要使用 JSTL 标签库,classpath 中必须包含 jstl 的相关 jar 包;



prefix





suffix




查找视图页面的前缀和后缀,比如传进来的逻辑视图名为 hello,则该jsp 视图页面应该存放在“WEB-INF/jsp/hello.jsp”;




3、页面控制器


(1)写controller

public class HelloWorldController implements Controller { 
 
 @Override  
 public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) throws Exception { 
 
   	//1、收集参数、验证参数 
   	//2、绑定参数到命令对象 
   	//3、将命令对象传入业务对象进行业务处理 
   	//4、选择下一个页面 
          ModelAndView mv = new ModelAndView(); 
 
   	//添加模型数据 可以是任意的POJO对象 
          mv.addObject("message", "Hello World!"); 
 
   	//设置逻辑视图名,视图解析器会根据该名字解析到具体的视图页面,如:WEB-INF/jsp/hello.jsp 
          mv.setViewName("hello"); 
 
        return mv; 
 
 } 
 
} 



org.springframework.web.servlet.mvc.Controller




页面控制器/处理器必须实现Controller接口



public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp)




功能处理方法,实现相应的功能处理,比如收集参数、验证参数、绑定参数到命令对象、将命令对象传入业务对象进行业务处理、最后返回ModelAndView对象;



ModelAndView




包含了视图要实现的模型数据和逻辑视图名;


“mv.addObject(

“message”

,

“Hello World!”

); ”表示添加模型数据,此处可以是任意POJO对象


“mv.setViewName(“hello”);”表示设置逻辑视图名为“hello”,


视图解析器 InternalResourceViewResolver 会将其解析为具体的视图“WEB-INF/jsp/hello.jsp”。


(2)把Controller放在Spring IOC容器中管理

 <!-- 处理器 --> 
<bean name="/test1/helloworld" class="cn.tgb.web.controller.HelloWorldController"/> 




4、开发视图页面


hello.jsp中添加


<span style="color:#000000;"> <title>Hello World</title> 
 <body> 
     ${message} 
 </body> 
</span>




5、启动服务器运行调试



http://localhost:8080/springmvc-helloworld/test1/helloworld





如果页面输出为“HelloWorld!”表明成功




通过上面的12345步,相信大家对于SpringMVC入门实例HelloWorld有了一定的了解,接下来的文章将讲述:视图页面和控制器之间是如何传参的?



版权声明:本文为lantingxv_jing原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。