Hello,今天给各位童鞋们分享SpringMVC,赶紧拿出小本子记下来吧!
1.SpringMVC概述
1.1三层架构
三层架构:
表现层:负责数据展示业务层:负责业务处理数据层:负责数据操作
1.2MVC
MVC(ModelViewController),一种用于设计创建web应用程序表现层的模式
Model(模型):数据模型,用户封装数据
View(视图):页面视图,用户展示数据
jsphtmlController(控制器):处理用户交互的调度器,用于根据用户需求处理程序逻辑ServletSpringMVC
2.入门案例
2.1入门案例制作(重点)
XML版XML+注解版(主体)纯注解版(变形)基于Spring环境开发
步骤:
导入坐标dependencies
!--servlet3.1规范坐标--
dependency
groupIdjavax.servlet/groupId
artifactIdjavax.servlet-api/artifactId
version3.1.0/version
scopeprovided/scope
/dependency
!--jsp坐标--
dependency
groupIdjavax.servlet.jsp/groupId
artifactIdjsp-api/artifactId
version2.1/version
scopeprovided/scope
/dependency
!--spring坐标--
dependency
groupIdorg.springframework/groupId
artifactIdspring-context/artifactId
version5.1.9.RELEASE/version
scopeprovided/scope
/dependency
!--springmvc坐标--
dependency
groupIdorg.springframework/groupId
artifactIdspring-webmvc/artifactId
version5.1.9.RELEASE/version
scopeprovided/scope
/dependency
!--springweb坐标--
dependency
groupIdorg.springframework/groupId
artifactIdspring-web/artifactId
version5.1.9.RELEASE/version
scopeprovided/scope
/dependency
/dependencies
!--构建--
build
!--设置插件--
plugins
!--具体的插件配置--
plugin
groupIdorg.apache.tomcat.maven/groupId
artifactIdtomcat7-maven-plugin/artifactId
version2.1/version
configuration
port80/port
path//path
/configuration
/plugin
/plugins
/build
2.定义业务层处理器Controller,并配置成spring的bean(等同于Servlet)
该bean的处理需要使用独立的配置文件扫描(XML版):spring-mvc.xml
3.web.xml中配置SpringMVC核心控制器,用于将请求转发到对应的具体业务处理器Controller中(等同于Servlet配置)
4.设定具体Controller的访问路劲(等同于Servlet在web.xml中的配置),并设置返回页面
此处记录一个问题:
问题现象:org.apache.catalina.core.ContainerBase.addChildInternalContainerBase.addChild:start:org.apache.catalina…
问题解决:
查看web.xml是否无误,路径等是否有误,一个servlet不能同时使用xml和注解配置,否则也很会出现该错误;查看项目lib目录是否存在,idea默认不创建,进入ProjectStructures(ctrl+shift+alt+S)–点击左侧ProjectSettings下的Artifacts。
点击中间栏项目,这里会两个文件,一个是:项目名:war(war压缩包),一个是项目名:warexploded(war未压缩包)。
点击warexploded项目,在右侧中第一栏OutputLayout(项目发布生成的文件)下,展开WEB-INF文件夹,此时该目录下只有classes目录,无lib目录,自己手动创建一个lib目录,并点击上面+选择LibraryFile添加maven导入的jar包
重启tomcat就解决了(我是这样解决的,不保证所有类似问题都能解决)
2.2入门案例工作流程分析(重点)
服务器启动:
加载web.xml中的DispatcherServlet
读取spring-mvc.xml中的配置,加载所有