SpringMVC 入门程序 实现Control接口

Spring MVC概述

  • Spring框架的一部分,可以方便的利用Spring所提供的其他功能,灵活性强,易于与其他框架集成
  • 提供了一个前端控制器DispatcherServlet,使开发人员无需额外开发控制器对象
  • 可自动绑定用户输入,并能正确的转换数据类型
  • 内置了常见的校验器,可以校验用户输入。如果校验不能通过,那么就会重定向到输入表单
  • 使用基于XML的配置文件,在编辑后,不需要重新编译应用程序
  • 支持多种视图技术。它支持JSP、Velocity和FreeMarker等视图技术

Maven依赖

<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>5.2.9.RELEASE</version>
		</dependency>
	</dependencies>

配置Servlet的xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	      xmlns="http://java.sun.com/xml/ns/javaee"
	      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	id="WebApp_ID" version="3.0">
	
	<servlet>
	    
	    <!-- SpringMVC 配置前端过滤器 -->
		<servlet-name>springmvc</servlet-name>
		<servlet-class>
              org.springframework.web.servlet.DispatcherServlet
         </servlet-class>
		
		<!-- 初始化时加载配置文件 -->
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<!-- 配置加载Spring MVC配置文件位置 -->
			<param-value>classpath:springmvc-config.xml</param-value>
		</init-param>
		
		<!-- 1 表示容器在启动时立即加载Servlet -->
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>springmvc</servlet-name>

		<!-- /表示拦截所有URL的请求 -->
		<url-pattern>/</url-pattern> 
	</servlet-mapping>
</web-app>

创建实现 Controller的类 firstController

public class FirstController implements Controller{
     @Override
     public ModelAndView handleRequest(HttpServletRequest request,
			                    HttpServletResponse response) {
		// 新建ModelView对象
     	ModelAndView mav = new ModelAndView();
    	mav.addObject("msg", "这是我的第一个Spring MVC程序");
		mav.setViewName("/WEB-INF/jsp/first.jsp");
		return mav;
           }
     }

在这里插入图片描述

编写SpringMVC的配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
	http://www.springframework.org/schema/beans/spring-beans.xsd">
	
	<!-- 配置处理器Handle,映射“/firstController”请求 -->
	<bean name="/firstController"  class="com.hlq.ch11.controller.FirstController" />
	
	<!-- 处理器映射器,将处理器Handle的name作为url进行查找 -->
	<bean class= "org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
	
	<!-- 处理器适配器,配置对处理器中handleRequest()方法的调用-->
	<bean class=
	"org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
	
	<!-- 视图解析器 -->
	<bean class= "org.springframework.web.servlet.view.InternalResourceViewResolver">
	</bean>
</beans> 

视图的JSP文件

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@page isELIgnored="false"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	${msg}
</body>
</html>

EL表达式简介

  • EL 全名为Expression Language
  • 注意Servlet版本,如果是Servlet 2.x,需要设置isELIgnored <%@page isELIgnored="false" %>
  • EL的作用
    • 获取数据
      • ${msg}
      • ${user.address.city}
    • 执行运算
      • ${user==null}
      • ${user!=null?user.name:""}
    • 获取web开发常用对象
      • ${隐式对象名称}
      • ${pageContext.request.contextPath}

在浏览器中输入实现接口的类

输入对应的URL
在这里插入图片描述
在这里插入图片描述

  • 设置ModelAndView的信息
    在这里插入图片描述
    页面中获取
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值