详解SpringMVC的两种实现方式
一、方法一:实现Controller接口
这个在我的第一个SpringMVC程序中已经学习过了,在此不作赘述,现在主要来学习第二种方法,使用注解开发;
二、方法二:使用注解开发
1.导包
2.在web.xml中配置DispatcherServlet
3.建立一个Spring配置文件springmvc-servlet.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/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!--扫描包,使其下的注解生效-->
<context:component-scan base-package="com.jms.controller"/>
<!--让springMVC不处理静态资源-->
<mvc:default-servlet-handler/>
<!--
支持MVC注解驱动
能够帮助我们完成BeanNameUrlHandlerMapping和SimpleControllerHandlerAdapter注入
-->
<mvc:annotation-driven/>
<!--视图解析器-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="InternalResourceViewResolver">
<!--前缀-->
<property name="prefix" value="/WEB-INF/jsp/"/>
<!--后缀-->
<property name="suffix" value=".jsp"/>
</bean>
</beans>4.建立一个HelloController类
package com.jms.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController {
@RequestMapping("/hello")
public String hello(Model model) {
model.addAttribute("message", "欢迎来到SpringMVC");
return "hello";
}
}可以看到,在这个类中,我们使用到了两种注解。
第一个是@Controller,使用这个注解就说明这个类是一个Handler;第二个是@RequestMapping,看名字就知道这是请求的映射,也就是我们需要请求的路径,这里是请求.../hello。
可以看见一个返回String的方法,返回的这个hello就说明跳转的路径是视图解析器中的“前缀”+hello+“后缀”,在这里也就是/WEB-INF/jsp/hello.jsp。
这里我们用一个model来存储数据。
5.启动tomcat测试

到此这篇关于SpringMVC的两种实现方式的文章就介绍到这了,更多相关SpringMVC实现方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java日期时间处理问题(从Date、Calendar到SimpleDateFormat)
这篇文章主要介绍了Java日期时间处理深度解析(从Date、Calendar到SimpleDateFormat),我们详细讨论了Java中的日期和时间处理,包括Date、Calendar和SimpleDateFormat类的使用,以及Java 8引入的新的日期时间API的优势,需要的朋友可以参考下2024-08-08
Java中StringBuilder与StringBuffer的区别
在Java编程中,字符串的拼接是一项常见的操作。为了有效地处理字符串的拼接需求,Java提供了两个主要的类:StringBuilder和StringBuffer,本文主要介绍了Java中StringBuilder与StringBuffer的区别,感兴趣的可以了解一下2023-08-08
Spring学习之动态代理(JDK动态代理和CGLIB动态代理)
本篇文章主要介绍了Spring学习之动态代理(JDK动态代理和CGLIB动态代理),具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-07-07
SpringBoot 实现CAS Server统一登录认证的详细步骤
CAS(Central Authentication Service)中心授权服务,是一个开源项目,目的在于为Web应用系统提供一种可靠的单点登录,这篇文章主要介绍了SpringBoot 实现CAS Server统一登录认证,需要的朋友可以参考下2024-02-02


最新评论