JavaWeb使用SpringMVC的简单案例

来源:互联网 发布:java正则表达式$ 编辑:程序博客网 时间:2024/05/20 06:51

使用SpringMVC框架需要在web.xml,spring-mvc.xml和applicationContext.xml以及注解类进行配置,下面的例子使用注解类进行配置bean,未使用xml方式

首先上web.xml的配置:

<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"><display-name>Eryi</display-name><!-- 监听器Spring,web容器启动的时候,会自动装配Spring的位于/WEB-INF/下的applicationContext.xml --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!-- 默认是/WEB-INF/applicationContext.xml --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value></context-param><servlet><!-- load-on-startup:表示启动容器时初始化该Servlet; --><servlet-name>spring</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc-context.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><!-- url-pattern:表示哪些请求交给Spring Web MVC处理, “/” 是用来定义默认servlet映射的。 --><!-- 也可以如“*.html”表示拦截所有以html为扩展名的请求。 --><servlet-mapping><servlet-name>spring</servlet-name><url-pattern>/</url-pattern></servlet-mapping><!-- 自此请求已交给Spring Web MVC框架处理,因此我们需要配置Spring的配置文件, --><!-- 默认DispatcherServlet会加载WEB-INF/[DispatcherServlet的Servlet名字,也就是上面的spring]-servlet.xml配置文件。 --><!-- 即spring-servlet.xml --><welcome-file-list><welcome-file>login.jsp</welcome-file></welcome-file-list></web-app>

applicationContext.xml

因为我们要使用注解,所以我们不在applicationContext.xml进行配置,里面不填写内容就行:

<?xml version="1.0" encoding="UTF-8"?><beans:beans xmlns:beans="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" xmlns:p="http://www.springframework.org/schema/p"    xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.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 "></beans:beans>

spring-mvc.xml,这里要将指定包下的bean类让spring管理:

<?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:mvc="http://www.springframework.org/schema/mvc"    xmlns:context="http://www.springframework.org/schema/context"    xmlns:aop="http://www.springframework.org/schema/aop"    xmlns:tx="http://www.springframework.org/schema/tx"    xsi:schemaLocation="http://www.springframework.org/schema/beans                         http://www.springframework.org/schema/beans/spring-beans-4.0.xsd                         http://www.springframework.org/schema/mvc                         http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd                         http://www.springframework.org/schema/context                         http://www.springframework.org/schema/context/spring-context-4.0.xsd                         http://www.springframework.org/schema/aop                         http://www.springframework.org/schema/aop/spring-aop-4.0.xsd                         http://www.springframework.org/schema/tx                         http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">    <!-- 设置使用注解的类所在的jar包 -->    <context:component-scan base-package="com.springMVC.demo" /></beans>

com.springMVC.demo包下面的bean类:

package com.springMVC.demo;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controllerpublic class HelloController {        @RequestMapping("/hello")    public @ResponseBody String test() {        return "hello, world! This com from spring!";    }}

maven.xml中Spring-mvc的配置:

<dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency> <dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency>

项目图:


访问Hello页面,得到运行结果: