SpringMvc环境搭建
DAO层:数据访问接口
Service层:处理业务逻辑层
POJO:数据实体
Servlet:负责前端请求并处理
JSP:负责前端页面展示
接下来我们配置web.xml中的Servlet,在这之前我们需要知道它的几个重要组件
1.DispatcherServlet : 前端控制器,接收所有请求(如果配置/不包 含 jsp)
2.HandlerMapping: 解析请求格式的.判断希望要执行哪个具体 的方法.
3.HandlerAdapter: 负责调用具体的方法.
4.ViewResovler:视图解析器.解析结果,准备跳转到具体的物理视图
配置情况如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
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/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 核心控制器的配置DispatcherServlet -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<!-- 设置contextConfigLocation参数老指定SpringMVC配置文件的位置 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc-servlet.xml</param-value>
</init-param>
<!-- 配置标容器在启动的时候就在加载此DisoatcherServlet -->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 通过servlet-mapping映射到/,DispatcherServlet会截获并处理该项目的URL请求 -->
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
我们再来配置springmvc-servlet.xml,我们需要在项目下面新建一个resource目录(是Source folder,不是package)
接下来我们再来配置springmvc-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:tx="http://www.springframework.org/schema/tx"
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-3.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 请求的URL路径映射到控制器Bean的名称-->
<!-- 指定的url请求:/index.jsp 处理url请求的控制器:cn.smbms.controller.IndexController-->
<bean name="/index.html" class="cn.smbms.controller.IndexController"/>
<!-- 完成视图的对应-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"><!--前缀-->
<property name="suffix" value=".jsp"/><!--后缀-->
</bean>
</beans>
springmvc-servlet.xml的配置文件我们配置好了,我们去写控制层,在src下面新建包cn.smbms.controller,在该包下面新建class:IndexController.java,我们把它变成一个可以处理前段请求的控制器,我们需要继承 org.springframework.web.servlet.mvc.AbstractController,代码如下图:
上图 return new ModelAndView(“index”);由于我们再springmvc-servlet.xml中配置好了,我们返回index,视图逻辑解析器会自动解析为WEB下面的index.jsp,直接得到真正的JSP视图名
我们再创建index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
hello,SpringMVC!
</body>
</html>
接下来我们直接部署到Tomcat下,我们直接运行测试效果如下图所示
SpringMvc环境搭建流程就是这些,今后我们会继续介绍SSM相关的知识,那我们总结一下SpringMvc的优点缺点
优点:
1.多视图共享一个模型,提高的代码的重用性
2.三个模块相互独立,松耦合架构
3.控制器提高了程序的灵活性和可配置性
4.有利于软件工程化管理
缺点:
1.原理复杂
2.增加系统架构和实现的复杂性
3.视图对模型数据的低效率访问
总结:总之MVC的设计模式最终可以打造出一个松耦合+高重用性+高适用性的完美框架,希望能帮到你,上面用的软件是Myeclipse,如有错误,请指点!