我的第一个MVC程序(SpringMVC的环境搭建与实例运用)
做一个完整点的mvc框架的搭建流程吧
Spring包含jar包下载
SpingMVC是基于Spring的一种关于web的解决方案,所以,使用springMVC,首先要准备有关Spring的一些jar包。
使用官方直接下载路径下载spring:https://repo.spring.io/libs-release-local/org/springframework/spring/
下载你想要的版本,比如我下载的版本是5.2.0。选择第一个(以dist.zip结尾的)
下载后解压到指定目录。
Spring依赖jar包下载
Spring框架依赖于Apache Commons Logging组件,该组件的jar包下载可以通过:http://commons.apache.org/proper/commons-logging/download_logging.cgi 进行下载。
下载二进制文件,且以zip为文件后缀的。下载后解压到指定目录。
创建web项目和加载MVC所需要的jar包
(1)创建一个web项目 MVC_demo,需要勾选生成web.xml文件
(2)将解压后的Spring下的libs中的jar包添加到web项目下的lib目录中
解压后如下:
需要添加的jar包有:
//在Spring MVC应用注解所需要的jar包
spring-aop-5.2.0.RELEASE.jar
//四个Spring框架所需要的核心jar包 spring-beans-5.2.0.RELEASE.jar spring-context-5.2.0.RELEASE.jar spring-core-5.2.0.RELEASE.jar spring-expression-5.2.0.RELEASE.jar
//两个web相关的jar包 spring-web-5.2.0.RELEASE.jar spring-webmvc-5.2.0.RELEASE.jar
(3)将解压后的Commons-logging文件打开,找到commons-logging的jar包。
同样将其添加到lib目录下。
添加完成后如下所示:
在web.xml文件中部署DispatcherServlet
如下图所示:
代码片段为:
<!-- 部署DispatcherServlet --> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 表示在容器启动时立即加载servlet --> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <!-- 表示处理所有的URL --> <url-pattern>/</url-pattern> </servlet-mapping>
创建一个jsp页面,用来进行测试
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> 您还没有账号,请<a href="${pageContext.request.contextPath }/register">注册</a> 您已注册账号,请<a href="${pageContext.request.contextPath }/login">登录</a> </body> </html>
创建两个控制器,实现控制器接口,用于处理超连接请求
package controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; /** * 创建一个传统控制器 * * @author Lenovo * */ public class RegisterController implements Controller { @Override public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { // 返回跳转到指定页面 return new ModelAndView("/WEB-INF/jsp/register"); } }
package controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; public class LoginController implements Controller { @Override public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { return new ModelAndView("/WEB-INF/jsp/login.jsp"); } }
创建MVC配置文件和对控制器进行映射
在控制器定义之后,需要在spring mvc中年定义他们。在web.xml同级目录下创建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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 设置映射到login -->
<bean name="/login" class="controller.LoginController"/>
<bean name="/register" class="controller.RegisterController"/>
</beans>
最后在WEB-INF下新建jsp文件夹,创建两个jsp文件,一个是 login.jsp , 另外一个是register.jsp
完整的项目结构如下:
调试运行,右击项目,选择Run As,在Tomcat上运行,结果如下:
点击注册显示