Maven+SpringMvc+Mybatis+shiro+easyUi框架介绍
更新时间:2023-10-02 00:22:01 阅读量: 综合文库 文档下载
系统架构介绍
1 简介
本项目采用Maven来构建和管理。通过Spring MVC分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行制定。持久层框架用的Mybatis ,支持普通 SQL 查询,存储过程和高级映射。Shrio提供了认证、授权、加密和会话管理等功能。easyUi是一组基于jQuery的UI插件集合,帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。
2 框架及工具介绍
2.1 Maven
Maven是一个项目管理和整合的工具。Maven为开发者提供了一套完整的构建生命周期框架。开发团队基本不用花多少时间就能自动完成工程的基础构建配置,因为Maven使用了一个标准的目录结构和一个默认的构建生命周期。在创建报告、检查、构建和测试自动配置时,Maven可以让开发者的工作变得更简单。
2.1.1 核心概念介绍
2.1.1.1 pom
pom是指project object Model。pom是一个xml,在Maven里为pom.xml。是Maven工作的基础,在执行task或者goal时,Maven会去项目根目录下读取pom.xml获得需要的配置信息。pom文件中包含了项目的信息和Maven build项目所需的配置信息,通常有项目信息(如版本、成员)、项目的依赖、插件和goal、build选项等等。pom是可以继承的,通常对于一个大型的项目或是多个module的情况,子模块的pom需要指定父模块的pom。
pom文件中节点含义如下:
1 project:pom文件的顶级元素;
2 modelVersion:所使用的object model版本,为了确保稳定的使用,这个元素是强制性的。除非Maven开发者升级模板,否则不需要修改;
3 groupId:项目创建团体或组织的唯一标志符,通常是域名倒写,如groupId org.apache.Maven.plugins就是为所有Maven插件预留的;
4 artifactId:项目artifact唯一的基地址名;
5 packaging:打包的方式,如jar、war、ear等等。默认为jar。这个不仅表示项目最终产生何种后缀的文件,也表示build过程使用什么样的lifecycle;
6 version:版本,通常能看见为类似0.0.1-SNAPSHOT,其中SNAPSHOT表示项目开发中,为开发版本;
7 name:项目的展现名,在Maven生成的文档中使用; 8 url:地址,在Maven生成的文档中使用;
9 description:项目的描述,在Maven生成的文档中使用; 10 dependencies:依赖,在子节点dependencies中添加具体依赖的groupId artifactId
和version;
11 build:build配置; 12 parent:父pom;
其中groupId:artifactId:version唯一确定了一个artifact
2.1.1.2 Artifact
一个项目将要产生的文件,可以是jar文件,源文件,二进制文件,war文件,甚至是pom文件。每个artifact都由groupId:artifactId:version组成的标识符唯一识别。需要被使用(依赖)的artifact都要放在仓库(见Repository)中。
2.1.1.3 Repositories
Repositories是用来存储Artifact的。如果说我们的项目产生的Artifact是一个个小工具,那么Repositories就是一个仓库,里面有我们自己创建的工具,也可以储存别人造的工具,我们在项目中需要使用某种工具时,在pom中声明dependency,编译代码时就会根据dependency去下载工具(Artifact),供自己使用。对于自己的项目完成后可以通过mvn install命令将项目放到仓库(Repositories)中。
任何一个工具都有唯一的坐标,Maven根据这个坐标定义了构件在仓库中的唯一存储路径,Maven在仓库中的存储路径解读:
1.基于groupId准备路径,将句点分隔符转成路径分隔符,就是将 \ 转换成 \; example:org.testng --->org/testng
2.基于artifactId准备路径,将artifactId连接到后面:org/testng/testng 3.使用version准备路径,将version连接到后面:org/testng/testng/5.8 4.将artifactId于version以分隔符连字号连接到后面:org/testng/testng/5.8/tesng-5.8.jar Maven的仓库只有两大类:1.本地仓库 2.远程仓库:
1 本地仓库,顾名思义,就是Maven在本地存储构件的地方。(注:Maven的本地仓库,在安装Maven后并不会创建,它是在第一次执行Maven命令的时候才被创建。)Maven本地仓库的默认位置:无论是Windows还是Linux,在用户的目录下都有一个.m2/repository/的仓库目录,这就是Maven仓库的默认位置。如果要更改Maven默认的本地仓库的位置:这里要引入一个新的元素:localRepository,它是存在于Maven的settings.xml文件中。
更改配置用户范围的本地仓库:先在/.m2/目录下创建settings.xml文件,然后在~/.m2/settings.xml,设置localRepository元素的值为想要的仓库地址
这时候,Maven的本地仓库地址就变成了D:\\tools\\apache-maven-3.2.5\\respo。(注:此时配置的Maven的本地仓库是属于用户范围的。)
2 远程仓库
远程仓库最核心的是中央仓库,中央仓库是默认的远程仓库,Maven在安装的时候,自带的就是中央仓库的配置。在Maven的聚合与继承中我们说过,所有的Maven项目都会继承超级pom,具体的说,包含了下面配置的pom我们就称之为超级pom
中央仓库包含了绝大多数流行的开源Java构件,以及源码、作者信息、SCM、信息、许可证信息等。一般来说,简单的Java项目依赖的构件都可以在这里下载到。
私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用。当Maven需要下载构件的时候,它从私服请求,如果私服上不存在该构件,则从外部的远程仓库下载,缓存在私服上之后,再为Maven的下载请求提供服务。我们还可以把一些无法从外部仓库下载到的构件上传到私服上。
2.1.2 Maven实际应用
2.1.2.1构建maven项目
在eclipse下构建maven项目,该项目由多个子模块组成。 1创建一个父项目
NEW -->project-->maven-->maven Project,点击下一步,进入new maven Project的Select project name and location界面,
什么也不做,直接下一步到Select an Archetype界面。
在这个界面中选择maven-Archetype-site-simple,然后选择下一步,进入选择Enter a group id for the artifact的界面,
在group id 和artifact id中输入你的group和artifact名称。我用的分别是com.ai和MvnTest,选择完成。这时会在eclipse中生成一个项目,项目名是MvnTest。
此时MvnTest的pom文件如下所示:
2 创建子项目
2.1 将项目MvnTest中的src文件删除。(可有可无,主要看个人需要) 2.2 选中项目MvnTest,点击右键,选择NEW -->project-->maven-->maven Module,点击下一步,在出现的界面中输入子模块的名称sMod1,点击下一步,出现Select an Archetype界面。这时选择maven-Archetype-site-quickStart或者maven-Archetype- webapp(构建web层时使用),然后选择完成,即生成子项目sMod1。
这时MvnTest的pom文件就变成了这样(和上面的比只是多了个modules标签):
正在阅读:
Maven+SpringMvc+Mybatis+shiro+easyUi框架介绍10-02
《中小学生社团实践探索研究》课题结题报告08-16
你爱吃青菜吗作文500字07-11
图象匹配06-05
车站设备屏蔽门系统04-01
经济计量学--习题与解答10-29
73.转换到Rinex格式07-23
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- SpringMvc
- 框架
- Mybatis
- easyUi
- 介绍
- Maven
- shiro
- 六安市养鹅专业合作社名录2018版190家 - 图文
- 小城大事
- 医院建筑的给排水设计
- 新课标小学英语PEP五年级下册教材分析与教法建议
- 新人教部编版二年级下学期数学第六单元达标测试卷
- 苏教版综合实践活动教案四年级下册
- 开题报告
- 概率论试卷及答案
- 水质工程学课程设计
- 七大手法练习应用
- 化工原理 - 设计任务书
- 村级气象灾害应急预案防台风和山洪灾害工作预案
- 人教部编版语文六年级上册同步阅读训练:21 文言文二则(含答案)
- 泗洪县2013农村改厕工程施工组织设计
- 九年级物理上册11.5机械效率同步测试(提高篇)(新版)苏科版
- 如何看待当前经济形势
- 空壳树小学创建语言文字规范化示范校活动工作方案
- 公司理财论文
- zencart前后台
- 分部分项工程质量控制点