Spring MVC注解Demo
说明:在Spring MVC中开始比较全面的支持注解,通过注解可以大大简化J2EE应用开发的配置、精简开发人员的工作量从而提高开发效率。
好处:
① Controller不需要继承任何AbstractController等Controller;
② 无需通过配置文件配置,大大简化了Spring MVC相关的配置;
③ 细粒度处理各种request请求,针对最基础的统一请求的GET/POST方式进行不同处理,除此还还可以对拥有不同请求参数的同一request请求分别用不同的方法处理{灵活};
④ 更加丰富的参数绑定机制,可以在Controller方法定义中,通过注解将某个或某些参数直接绑定到Controller方法的参数上,从而在方法体内,可以完全对HttpServletRequest视而不见,直接使用已经绑定好的参数。
简单Demo实现步骤:
一、在web.xml配置Spring MVC的控制器,以及加入相应的jar包,在此略,详情何以参照:Spring MVC入门实例;
二、配置Demo-servlet.xml文件,即配置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:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/beans/spring-mvc-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<!-- 控制器所在的包{添加注解的Controller} -->
<context:component-scan base-package="com.teana.controller" />
<!-- jsp文件的前缀和后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>
三、在com.teana.controller包下创建一个TestController.java的Controller,代码如下:
package com.teana.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
@RequestMapping("/teana")
public class TestController
{
@RequestMapping("/start/{name}/{age}")
public String start(@PathVariable("name") String name,
@PathVariable("age") int age)
{
System.out.println("姓名:" + name + ", 年龄:" + age);
return "start";
}
@RequestMapping(value="/linda", method=RequestMethod.GET)
public String getMethod()
{
return "getPage";
}
@RequestMapping(value="/linda", method=RequestMethod.POST)
public String postMethod()
{
return "postPage";
}
}
对TestController.java文件的说明:
① 在Controller类定义之前加@Controller;
② 在类级别上加@RequestMapping不是必须的,但在方法级别上是必须的,如果类级别上配置了该注解,则访问方式为:http://localhost:8080/Demo/teana/linda.html{注意:.html为web.xml配置的拦截类型},如果没有包级别的,可以直接访问如:http://locahost:8080/Demo/linda.html;
③ 为请求配置参数如我们输入:http://localhost:8080/Demo/teana/start/KING/23.html我们再看:
@RequestMapping("/start/{name}/{age}")
public String start(@PathVariable("name") String name,
@PathVariable("age") int age)
{
System.out.println("姓名:" + name + ", 年龄:" + age);
return "start";
}
说明:@PathVariable("age") int age表示定义一个路径参数,即KING表示一个name的参数,23表示一个age的参数;
④ @RequestMapping(value="/linda", method=RequestMethod.GET)
@RequestMapping(value="/linda", method=RequestMethod.POST)表示请求相同但采取不同的方式 GET和POST
四、注意Controller的方法的返回值,我们必须在如Demo-servlet.xml配置相应的jsp文件{start.jsp}。
分享到:
相关推荐
在本"Spring MVC注解Demo"中,我们将深入探讨如何利用注解简化Spring MVC的配置和控制器的实现,使其更适合初学者快速上手。 在Spring MVC中,注解的使用大大减少了XML配置,使得代码更加简洁且易于理解。以下是...
这个"Spring MVC使用Demo"提供了实践操作,帮助开发者深入理解Spring MVC的开发环境配置、注解的使用以及工作原理。 首先,Spring MVC的设计模式基于Model-View-Controller(MVC),它将应用程序的业务逻辑、数据和...
"Spring MVC REST Demo"是一个示例项目,旨在展示如何在Spring MVC框架中实现RESTful Web服务。下面将详细讨论Spring MVC与RESTful API的结合,以及如何创建和测试此类服务。 首先,Spring MVC是Spring框架的一部分...
**Spring MVC Portlet Demo** Spring MVC Portlet是一个用于构建portlet应用程序的框架,它结合了Spring MVC的灵活性和portlet规范的强大功能。在这个demo中,我们将会深入探讨如何利用Spring 3.0 MVC架构来开发...
这个简单的Demo将向我们展示如何使用Spring MVC创建一个基本的Web应用。在这个过程中,我们将涉及控制器、视图解析器、模型数据以及HTTP请求处理等核心概念。 首先,我们需要在项目中引入Spring MVC的依赖。这通常...
1. **注解驱动开发**:Spring MVC允许使用注解来简化配置,例如@Controller、@RequestMapping、@Autowired等。 2. **视图解析**:理解如何配置视图解析器,例如使用InternalResourceViewResolver解析JSP页面。 3. ...
这个"spring mvc login demo"项目旨在提供一个基础的登录功能示例,帮助开发者理解如何在Spring MVC环境中实现用户身份验证。在这个教程中,我们将深入探讨相关知识点。 首先,Spring MVC 的核心组件包括...
为了实现这些功能,你需要熟悉Spring3MVC的注解驱动开发,如`@RequestMapping`、`@RequestParam`等,以及JSP或Thymeleaf等视图技术。此外,了解如何与数据库交互(例如使用JDBC、Hibernate或MyBatis)也是非常重要的...
这个"最新maven搭建的Spring MVC的demo"是一个很好的学习资源,它展示了如何使用Maven来构建一个简单的Spring MVC应用。通过这个例子,初学者可以了解Spring MVC的核心组件和Maven的项目构建流程,为后续深入学习和...
在本示例中,"Spring-MVC的demo" 提供了一个完整的Spring MVC学习项目,包含了数据库操作、JDBC以及Spring的核心功能。 1. **Spring MVC 框架简介** Spring MVC 是Spring框架的一部分,主要用于处理Web请求。它将...
**Spring MVC IDEA版本DEMO详解** 在现代Java Web开发中,Spring MVC框架是不可或缺的一部分,它为构建可扩展、模块化的Web应用程序提供了强大的支持。IntelliJ IDEA作为一款高效的Java集成开发环境,使得开发...
Spring MVC 提供了注解驱动开发的能力,使得代码更加简洁且易于维护。 Mybatis 则是通过 XML 或注解的方式定义 SQL 映射,将 SQL 语句与 Java 代码分离,增强了代码的可读性和可维护性。Mybatis 提供了 ...
在这个"Spring mvc+hibernate+mysql Demo"项目中,可能包含了一个简单的示例应用,展示了如何配置和使用这三个技术。"test"文件可能是测试代码或者测试数据,用于验证整个系统的正确性。测试可能涵盖了CRUD操作,...
在这个 Demo 中,我们将深入理解 Spring MVC 的核心概念,以及如何通过实际操作搭建一个可用的应用。 **一、Spring MVC 架构** 1. **模型(Model)**: 模型对象包含了应用程序的数据。在 Spring MVC 中,这些数据...
本教程将围绕“spring mvc web demo(helloworld)”这一主题,引导你了解如何构建一个简单的Spring MVC HelloWorld示例。 首先,项目的基础结构至关重要。从提供的文件列表来看,我们有以下几个关键文件: 1. `....
本 demo 提供了一个全面且精炼的示例,适合初学者快速理解和上手 Spring MVC。 1. **Spring MVC 架构** Spring MVC 采用 MVC 设计模式,将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器...
**基于注解的Spring MVC小demo** 在Java Web开发领域,Spring MVC框架因其强大的功能和灵活性而被广泛应用。本demo展示了如何使用注解驱动的方式来构建一个简单的Spring MVC应用程序。注解使得代码更加简洁,减少了...
在本项目"Spring MVC Demo"中,我们将会探讨Spring MVC如何与Gradle构建工具相结合,来创建一个简单高效的应用开发环境。 首先,让我们了解Spring MVC的核心组件: 1. **DispatcherServlet**:它是Spring MVC的...
这个“Spring MVC-demo项目源码”是一个示例工程,旨在帮助开发者了解如何在实际项目中应用Spring MVC和Maven。 在Spring MVC中,核心概念包括DispatcherServlet、Controllers、Models、Views和ViewModels。...
本入门Demo将帮助初学者快速理解并掌握 Spring MVC 的基本概念和使用方法。 首先,Spring MVC 提供了控制器(Controller)的概念,它负责接收来自客户端的请求,处理业务逻辑,并将结果传递给视图(View)。在 ...