SpringMVC系列(二)HelloWorld入门

有关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有了一定的了解,接下来的文章将讲述:视图页面和控制器之间是如何传参的?

时间: 2024-11-05 16:22:48

SpringMVC系列(二)HelloWorld入门的相关文章

ActiveMQ入门系列二:入门代码实例(点对点模式)

在上一篇<ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)>中,大致介绍了ActiveMQ和一些概念,并下载.安装.启动他,还访问了他的控制台页面. 这篇,就用代码实例说下如何实现消息的生产和消费. 一.理论基础 同RabbitMQ一样,ActiveMQ中也是有两种模式: 点对点模式(Point to Point,简写为PTP) 发布/订阅模式(Publish & Subscribe,简写为Pub & Sub) 通过上一篇我们知道了制造消息的应用叫生产

持久化API(JPA)系列(二)实体入门

上一篇文中我们讲述了<持久化API(JPA)系列(一)实体简介> JPA实现的作用就是:把对实体的操作,转换成对数据库的操作.这样应用程序就能以面向对象的方式操作实体,而JPA实现则负责转换成对应的SQL(结构化查询语言)操作. JPA只是一种规范!并不是任何具体的ORM框架!当在程序中使用JPA进行持久化时,底层一定需要具体的ORM框架作为实现. 本文核心: 接下来我们先介绍一个入门级的JPA实例,通过这个实例读者可以感受到JPA的简单.易用性. 您会发现JPA执行持久化操作和使用Hiber

SpringMVC学习二、入门程序与组件

入门程序 搭建环境 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <spring.version>

Springmvc系列01 Helloworld

0.springmvc请求流程图 1.使用的jia包及要写的配置文件如图 2.web.xml 配置前端控制器 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchem

Maven入门系列(二)--设置中央仓库的方法

原文地址:http://www.codeweblog.com/maven入门系列-二-设置中央仓库的方法/ Maven仓库放在我的文档里好吗?当然不好,重装一次电脑,意味着一切jar都要重新下载和发布. 下载的地址是中央仓库mvnrepository.com,当然,全球很多个仓库. 资源的坐标简称GVA 那么,现在如何修改maven的本地仓库路径呢? 关键在于maven文件夹的config下的settings.xml(E:\IDE\apache-maven-3.3.1\conf\settings

WPF入门教程系列(二) 深入剖析WPF Binding的使用方法

WPF入门教程系列(二) 深入剖析WPF Binding的使用方法 同一个对象(特指System.Windows.DependencyObject的子类)的同一种属性(特指DependencyProperty)只能拥有一个binding. 这一点可以通过设置binding对象的方法名得知: public static BindingExpressionBase SetBinding( DependencyObject target, DependencyProperty dp, BindingB

SpringMVC系列之(二) springMVC和Struts异同

Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的 Web 框架.通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术.Velocity.Tiles.iText 和POI.Sp

WPF入门教程系列二——Application介绍

原文:WPF入门教程系列二--Application介绍 一.Application介绍 WPF和WinForm 很相似, WPF与WinForm一样有一个 Application对象来进行一些全局的行为和操作,并且每个 Domain (应用程序域)中仅且只有一个 Application 实例存在.和 WinForm 不同的是WPF Application默认由两部分组成 : App.xaml 和 App.xaml.cs,这有点类似于 Asp.Net WebForm,将定义和行为代码相分离. 微

C语言快速入门系列(二)

C语言快速入门系列(二) 本节引言: 在前面一节中我们对C语言进行了初步的了解,学会了使用IDE进行代码的编写,编译运行! 在这一节中我们会对C语言的基本语法进行进一步的学习! C语言是一门语言,可以和英语进行类比,英语句子 = 单词 + 语法 同样C语言的代码语句,也有着一套自己的规则! 废话不多说,直接正文! 本节学习路线图: 正文: 1.基本字符集 1.1 标识符 ①何为标识符:在C语言中,符号常量,变量,数组,函数等都需要一定的名称,我们把这种名称成为标识符 ②标识符的命名规则 答:只能

Wireshark入门与进阶系列(二)

摘自http://blog.csdn.net/howeverpf/article/details/40743705 Wireshark入门与进阶系列(二) “君子生非异也,善假于物也”---荀子 本文由CSDN-蚍蜉撼青松 [主页:http://blog.csdn.net/howeverpf]原创,转载请注明出处! 上一篇文章我们讲了使用Wireshark进行数据包捕获与保存的最基本流程,更通常的情况下,我们对于要捕获的数据包及其展示.存储可能有一定要求,例如: 我们希望捕获的数据包中对我们有用