基于annotation的SpringMVC入门小例子
**基于Annotation的SpringMVC入门小例子** 在Java Web开发中,SpringMVC是一个非常流行的框架,它使得构建Web应用程序变得更加简洁和高效。本篇将详细介绍如何使用注解(Annotation)来配置和运行一个基本的SpringMVC项目。 我们要理解SpringMVC的核心组件: 1. **DispatcherServlet**:它是SpringMVC的前端控制器,负责接收HTTP请求,并根据配置分发到相应的处理器。 2. **@Controller**:这个注解用于标记一个类作为SpringMVC的控制器,处理来自前端的请求。 3. **@RequestMapping**:该注解用于映射HTTP请求,可以定义在类级别或方法级别,用于匹配URL。 4. **@RequestParam**:用于从请求参数中获取值,通常用于GET或POST请求中的参数。 5. **ModelAndView**:用于存储模型数据和视图信息,控制器方法返回时使用。 接下来,我们将按照以下步骤创建一个简单的SpringMVC项目: 1. **环境准备**:确保已经安装了Java、Maven和IDE(如IntelliJ IDEA),并设置好环境变量。 2. **创建Maven项目**:新建一个Maven工程,添加SpringMVC所需的依赖。在pom.xml文件中添加以下依赖: ```xml <dependencies> <!-- Spring MVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.20</version> </dependency> <!-- JSTL for JSP --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> ``` 3. **配置web.xml**:在Web应用的WEB-INF目录下创建web.xml文件,配置DispatcherServlet: ```xml <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> ``` 4. **配置spring-mvc-servlet.xml**:创建配置文件,声明视图解析器和其他必要组件: ```xml <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> ``` 5. **编写控制器**:创建一个Java类,用@Controller注解标记,然后在类中定义处理请求的方法,使用@RequestMapping注解: ```java @Controller public class HelloWorldController { @RequestMapping("/hello") public ModelAndView hello(@RequestParam("name") String name) { ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("message", "Hello, " + name); modelAndView.setViewName("hello"); return modelAndView; } } ``` 这里的/hello是URL映射,@RequestParam注解从请求中获取名为"name"的参数。 6. **创建视图**:在/WEB-INF/views目录下创建一个名为"hello.jsp"的JSP文件,展示模型数据: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Hello World</title> </head> <body> <h1>${message}</h1> </body> </html> ``` 7. **运行与测试**:启动服务器,访问`http://localhost:8080/your-app-context/hello?name=World`,你将看到显示“Hello, World”的页面。 这就是一个基础的基于注解的SpringMVC应用。通过这种方式,我们可以避免繁琐的XML配置,使得代码更简洁、可读性更强。随着项目的复杂度增加,可以进一步学习和使用如@PathVariable、@ModelAttribute等更多注解,以及AOP、拦截器、异常处理等高级特性,来实现更复杂的业务逻辑和功能需求。
- 1
- 粉丝: 386
- 资源: 6万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助