SpringMVC4 的Hello World程序, 即SpringMVC4 的开发环境搭建
本示例实现, 控制器(controller)返回指定视图(view)页面.
工具:
Spring4.2.1
STS--(Eclipse) Spring Tool Suite Version: 3.7.0
Tomcat8
最终效果:
访问http://localhost:8080/springmvc-1/hello, Tomcat返回 /WEB-INF/view/下的hello.jsp页面.
1,创建Dynamic Web工程(springmvc-1), 拷贝Spring 类库到WEB-INF/lib下,如果不确定有哪些,干脆全部复制, Spring4.2.1一共有20个jar包, 再加一个日志包commons-logging.jar
2, 修改WEB-INF/web.xml,
<servlet>
<servlet-name>spring1</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name >spring1</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
然后创建<servlet-name>-servlet.xml文件,这里对应的就是spring1-servlet.xml,放在web.xml的同级目录,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:component-scan base-package="com.wzr.controller"/>
<mvc:annotation-driven/>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
说明:
1)所有请求都要由DispatcherServlet来处理,因此映射到"/"上面(包括静态页面),
<load-on-startup>表示服务器一起动就加载, 如不需要则删除不影响程序运行.
如果要修改spring1-servlet.xml的配置位置或名字(不想用<servlet-name>-servlet.xml这种形式),可以直接指定xml文件名
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring.xml</param-value>
</init-param>
但一定要放到<load-on-startup>前面,否则xml校验出错(经测试)。
2)在spring1-servlet.xml中,引入了mvc和context两个命名空间,其中<mvc:annotation-driven/>表示这里使用注解进行开发,<context:component-scan>指明注解所在的包名,InternalResourceViewResolver这个类,用来将逻辑视图转换成物理视图, 如果其viewClass的属性如果是jsp的话,不设置也可(默认就是用jsp作为视图格式)。
3,在com.wzr.controller包下创建HelloController.java,代码如下:
包名和类名都自己随意取, 不是固定的.
package com.wzr.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController {
@RequestMapping ({"/hello","/"})
public String hello(){
System.out.println("HelloController invoked"); // 此行将在地址被访问时在控制台窗口打印"HelloController invoked", 表明hello方法确实被调用了.
return "hello"; // 这里的返回值"hello"会提交给spring容器, 它会根据spring1-servlet.xml中的配置(前缀后缀)装配成视图地址/WEB-INF/view/hello.jsp
}
}
@RequestMapping ({"/hello","/"})也可以写成@RequestMapping ("/hello")
4, 在/WEB-INF/view/下创建hello.jsp
5.在STS中新建一个(tomcat)Server, 把工程add进去.启动服务器, 即可用如下地址访问:
http://localhost:8080/<context-path>/hello
hello.jsp用于显示结果, <body>中加入一行
<body>
Hello springMVC!
</body>
总结: 整个过程如下, 用户在浏览器地址栏访问http://localhost:8080/springmvc-1/hello, Tomcat捕获请求, 查看springmvc-1工程配置文件夹(/WEB-INF/)下是否有web.xml文件, 找到此文件, 读取解析, 发现配置了<url-pattern>为/的servlet, 这里"/"匹配所有请求(当然包括/hello), 则请求交由匹配的servlet(spring1)处理, 根据<servlet-mapping>找到处理类"org.springframework.web.servlet.DispatcherServlet", 至此进入Spring管辖范畴. Spring根据<servlet-name >spring1</servlet-name>, 到web.xml同一目录下查找spring1-servlet.xml配置文件, 找到后读取解析, 发现配置<context:component-scan base-package="com.wzr.controller"/> , 则去com.wzr.controller包下扫描注解. <mvc:annotation-driven/>是告诉Spring打开注解开关.
Spring根据扫描发现com.wzr.controller包下的类HelloController包含注解. 注解显示, 类HelloController本身是个控制器(@Controller), 其中方法hello接收请求"/hello", 于是spring把前面收到的访问请求交给hello方法处理. 方法执行完毕return "hello"交还给spring, spring根据spring1-servlet.xml文件中配置,把返回值"hello"交给InternalResourceViewResolver类处理, 此类根据配置前缀+返回值+后缀方式, 合成一个地址串/WEB-INF/view/hello.jsp, 此地址由spring交还给tomcat页面, tomcat从/WEB-INF/view/文件夹下取出hello.jsp页面, 解析返回给客户浏览器.浏览器上显示Hello springMVC!.
整个响应过程完毕.
相关推荐
springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo ...
Maven SpringMvc+mybatis 环境搭建及项目开发环境搭建手册,根据自己的项目,梳理的配置及使用流程,其中包含使用java+maven SpringMvc配置项目的经验积累,xml文件配置实例等介绍,以及当年踩过的坑等,会给您提供...
结合maven搭建SpringMVC开发环境。 刚导入有错的话在工程上右击-> Java Build Path -> Add Library...-> Server Runtime -> Apache Tomcat -> Finish。 这样就可以了
Spring + SpringMVC +Mybats环境搭建,有兴趣专研企业javaWeb的最新技术;希望能够帮助到你。不再是struts1.2或struts2来控制页面转发,也不是用Hibernate来做持久化;谢谢!
springmvc ibatis 整合, 解决BLOB,CLOB等大字段的问题,内置查询...内部并没有实际的项目,只是一个搭建好的环境,方便较少大家时间, 并提供了一个DEMO ,紧为不了解ibatis,或者首次整合springmvc-ibatis的人使用!
本环境搭建过程旨在帮助开发者快速创建一个功能完备的SSM项目,以便进行实际的业务开发。 首先,我们来看`mybatis使用手册.docx`,这通常是Mybatis官方文档或者相关教程,里面包含了Mybatis的基本概念、配置、映射...
下面我们将详细讲解如何搭建一个基于SpringMVC和MyBatis的开发环境。 首先,你需要安装和配置Java Development Kit (JDK)。确保你的系统上已经安装了JDK,并且版本不低于1.8,因为这是大多数Java应用的最低需求。你...
本文档主要是springmvc+spring+hibernate框架的搭建,文中带有一个实例dome,以供参考
在本文中,我们将深入...总结来说,SpringMVC+MyBatis的组合提供了强大的Web开发能力,让开发者能够高效地处理业务逻辑和数据库交互。通过不断学习和实践,你可以掌握这一技术栈,为构建高质量的网站奠定坚实的基础。
在IT行业中,SpringMVC、Spring和Mybatis是三大核心框架,它们的集成使用是Java Web开发中的常见实践。这个集成开发环境旨在提供一个高效、灵活的开发平台,以实现业务逻辑与数据访问的分离,提高代码的可维护性和可...
Spring、SpringMVC和Hibernate...总的来说,"spring4+springmvc4+hibernate4 整合"是一个深入学习和实践Java Web开发的重要主题。通过理解这三个框架的核心功能和整合方式,开发者能够构建出更加灵活、强大的应用系统。
### Java SpringMVC 开发环境搭建详解 #### 一、SpringMVC简介 SpringMVC是Spring框架的一个重要组成部分,它是一种基于Java的轻量级Web应用框架,主要用于简化Web层的开发工作。SpringMVC遵循MVC设计模式,使得...
Spring4、SpringMVC4和Hibernate4是Java开发中非常重要的三个框架,它们分别负责不同的职责,共同构建了一个强大的企业级应用开发环境。Spring4作为核心框架,提供了依赖注入(DI)和面向切面编程(AOP)等功能,极...
以上就是关于“Hibernate4+SpringMVC+Junit4+log4j环境搭建”的详细说明。在实际开发中,你还需要根据项目具体需求选择合适的数据库驱动包,以及可能用到的其他第三方库,如Jackson(用于JSON序列化和反序列化)。...
springMVC 中文开发指南,适合新手,适合初学者!
标题“SpringMVC+JDBC快速搭建(使用注解)”涉及的是如何利用SpringMVC框架与JDBC(Java Database Connectivity)技术快速构建一个基于注解的Web应用。在这个过程中,我们将探讨SpringMVC如何处理HTTP请求,以及如何...
最简单的springmvc4.0框架搭建, 绝对可以运行
首先,我们需要设置开发环境。确保安装了JDK、Maven或Gradle(用于管理项目依赖)、IDE(如IntelliJ IDEA或Eclipse)以及Tomcat服务器(用于运行Web应用)。然后创建一个新的Maven或Gradle项目,并在`pom.xml`或`...
在进行SpringMVC环境...以上是SpringMVC环境搭建的基本步骤和相关知识点,通过合理的配置和组织,可以建立起一个稳定、高效的开发环境。记得在开发过程中,根据具体需求选择和引入相应的库,保持项目简洁且易于维护。