Spring MVC 起步
MVC本质
MVC的核心思想是业务数据抽取同业务数据呈现相分离
什么是MVC?
Model-View-Controller
View 视图层 为用户提供UI,重点关注数据的呈现
Model 模型层 业务数据的信息表示,关注支撑业务的信息构成,通常是多个业务实体的组合
Controller 控制层 调用业务逻辑产生合适的数据(Model)传递数据给视图层用于呈现
so
MVC 是一种架构模式
程序分层,分工合作,既相互独立,由协同工作。
SpringMVC基本概念
1、DispatcherServlet: 前端控制器
2、Controller: 调用业务逻辑生成model的地方
3、HandlerAdapter:DispatcherServlet通过HandlerAdapter调用controller
4、HandlerInterceptor:拦截器 该接口提供after postHandle preHandle 三个方法,调用controller前后使用
5、HandlerMapping:前端控制器与controller映射关系的类
6、HandlerExecutionChain: preHandle->Controller method->postHandle->afterCompletion的执行链
7、ModelAndView:model的具体表现
8、viewResolver:视图解析器,决定需要用哪个视图来进行视图的呈现。
9、view:界面
Maven简单介绍
1.POM:xml文件,可通过配置来完成依赖管理
2.依赖管理
依赖:A直接依赖B、C,间接依赖D、E(传递依赖)。
/WEB-INF/lib:存放项目依赖的jar包。
maven:在POM配置依赖项,提供依赖管理、传递管理,可自动载入需要的依赖包。
3.maven坐标:groupId、artifactId、version、packaging(可缺省,默认jar)
Maven安装:
1.下载zip包
2.解压 复制目录
3.新建环境变量M2_HOME:粘贴
4.在Path中增加 %M2_HOME%\bin;
5.在cmd中输入mvn –version输出版本等配置成功
Maven的配置:
将conf文件下的settings.xml文件复制到%HOME%\.m2目录下,为了避免以后更新了Maven,又要重新配置;
注意:%HOME%\.m2 要等运行过 maven 才会自动生成的。
**localRepository**
The path to the local repository maven will use to store artifacts.
Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
**镜像配置**:
每次访问Maven时候都先访问配置的这个库,下载所需要的软件包,这样可以降低中心仓库的负载,
中心仓库为了避免大量访问造成的服务问题有时会拒绝我们的访问
访问英国的镜像仓库:
<mirror>
<id>uk</id>
<name>uk Central</name>
<url>http://uk.maven.org/maven2</url>
<mirrorOf>central</mirrorOf>
<mirror>
墙内的阿里云镜像库:
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
用Maven创建项目:
1.在继承Maven的eclipse中,windows--->prefrences---->Maven--->Installation--->将新下载的maven文件add进去,
确保在user Setings中配置文件的路径是之前配置了mirror的配置文件setting.xml
2.运行命令创建项目
注意:需要指定创建项目的路径
例如:cd C:\Users\Workspaces\springMVC
命令:
mvn archetype:generate -DgroupId=imooc-arthur -DartifactId=spring-mvc-study -DarchetypeArtifactId=maven-archetype-webapp
参数解释:
archetype:generate 调用插件
groupId:坐标
artifactId:坐标的一个元素,目录结构的根目录名称
archetypeArtifactId:目录类型的一个类型,此为webapp的类型