SpringMVC学习之简单示例(非注解)
来源:互联网 发布:淘宝便利店 编辑:程序博客网 时间:2024/05/21 23:43
这里写的实例为springMVC非注解型的简单实例,更加方便理解springMVC的大致工作流程。
1.首先把配置文件配好,并引入相关的jar包,我这里使用的Maven,相关的依赖配置如下:
Maven工程管理项目,需要的jar包依赖如下:<!-- 集中定义版本 --><properties><spring.version>5.0.0.RELEASE</spring.version></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId><version>${spring.version}</version></dependency></dependencies>
在web.xml文件中配置springmvc的DispatcherServlet:
<?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"><servlet><servlet-name>springMVC</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- 初始化参数 --><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:*-servlet.xml</param-value></init-param></servlet><servlet-mapping><servlet-name>springMVC</servlet-name><url-pattern>/</url-pattern></servlet-mapping></web-app>
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:p="http://www.springframework.org/schema/p" 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/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.xsd"> <!-- 简单url的映射处理器 --> <bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <!-- <prop key="/index">indexController</prop> --> <prop key="/hello">helloController</prop> </props> </property> <!-- 设置优先级,值越小,优先级越高 --> <property name="order" value="0" /> </bean> <!-- 对于不需要处理只需要做一个转发可以用下面方式实现 --> <bean id="indexController" class="org.springframework.web.servlet.mvc.ParameterizableViewController"> <!-- 简单的返回视图名,通过viewName的value值login直接调用视图解析器,转发到login.jsp --> <property name="viewName" value="index"></property> </bean> <bean id="helloController" class="com.springmvc.controllers.HelloWorldController"></bean> <!-- 视图解析器 --> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 前缀 --> <property name="prefix" value="/WEB-INF/jsp/" /> <!-- 后缀 --> <property name="suffix" value=".jsp" /> </bean></beans>
欢迎页面写了一个简单的转发:
在HandlerMapping映射处理器中寻找相应的controller,转发到如下页面:
表单提交后,对应的请求为hello,在映射处理器中找到对应hello的controller,相应代码如下:
import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.AbstractController;public class HelloWorldController extends AbstractController {@Overrideprotected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)throws Exception {// TODO Auto-generated method stubString user = request.getParameter("user");int age = Integer.parseInt(request.getParameter("age"));System.out.println("HelloWorldController @ handleRequestInternal"+user+":"+age);ModelAndView mav = new ModelAndView();mav.setViewName("hello");mav.addObject("user",user);mav.addObject("age",age);return mav;}}
控制器中返回的ModelAndView中的ViewName为hello,即为SpringMVC-servlet.xml配置文件中视图解析器配置的目录/WEB-INF/jsp/下的hello.jsp文件:
点击表单提交后,运行结果如下:
阅读全文
0 0
- SpringMVC学习之简单示例(非注解)
- SpringMVC非注解方式学习
- SpringMVC简单入门(注解)<学习随笔>
- SpringMVC之非注解开发(一)(纯手工打造)
- Springmvc学习之注解与非注解适配器与映射器
- SpringMVC学习(七)之ModelAttribute注解
- 非注解和注解的处理器映射器和适配器---SpringMVC学习笔记(三)
- 非注解和注解的处理器映射器和适配器---SpringMVC学习笔记(三)
- springmvc学习笔记(11)-springmvc注解开发之简单参数绑定
- springmvc学习笔记(11)-springmvc注解开发之简单参数绑定
- SpringMVC学习之非注解的处理器映射器和适配器
- springMVC初学实例(非注解)
- SpringMVC的初步配置(非注解)
- SpringMVC 实例 --非注解
- SpringMVC 实例 --非注解
- springmvc(非注解)
- 天易47----Springmvc注解方式实现aop配置简单示例
- Spring学习之Bean的自动装配(非注解)
- mtk otg代码阅读笔记
- 通过先序遍历和中序遍历建立二叉树
- 73. Set Matrix Zeroes
- c++基础之类的封装
- python numpy中数组.min()
- SpringMVC学习之简单示例(非注解)
- Python之正则表达式入门
- sleep和wait的区别
- 标称型和数值型数据
- oracle查看被锁的表和解锁
- LWC 56:718. Maximum Length of Repeated Subarray
- 修改IP地址失败的解决方法
- Java初学的一些笔记
- 数据结构学习记录-树的基本术语