栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Maven项目管理工具知识 day02

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Maven项目管理工具知识 day02

一、maven 构建 SSM 工程 1.1 需求:实现 SSM 工程构建,规范依赖管理。场景:根据 id 展示商品信息 1.2 准备数据库 1.3 创建一个 maven 工程 1.3.1 新建一个 ssm_maven 项目,使用webapp骨架 1.3.2 填写坐标 1.3.3 查看是否使用的自己的私服 1.3.4 在 main 目录下新建 java 和 resources 文件夹 1.3.5 把 java 和 resources 文件夹转成 source root 1.3.6 在 pom.xml 文件中修改编译版本 1.4 知识点准备 1.4.1 什么是依赖传递 先添加 springmvc 的核心依赖的坐标,会发现出现除了 spring-webmvc 以外的其他 jar包。因为我们的项目依赖 spring-webmv.jar,而 spring-webmv.jar 会依赖 spring-beans.jar 等等,所以 spring-beans.jar 这些 jar 包也出现在了我们的 maven 工程中,这种现象我们称为依赖传递。 1.4.2 依赖冲突的解决 1.4.2.1 解决依赖冲突有以下原则:     1、第一声明者优先原则:在 pom 文件定义依赖,先声明的依赖为准。     2、路径近者优先原则 1.4.2.2 排除依赖 1.4.2.3 锁定版本 1.5 定义 pom.xml maven 工程首先要识别依赖,web 工程实现 SSM 整合,需要依赖 spring-webmvc5.0.2、 spring5.0.2、mybatis3.4.5 等,在 pom.xml 添加依赖 1.6 Dao 层 1.6.1 需求: 在 src/main/java 中定义 dao 接口,实现根据 id 查询商品信息 1.6.2 在 src/main/java 创建模型类 1.6.3 编写dao层代码 1.6.4 编写配置文件 1.6.4.1 编写itemsmapper.xml配置文件   1.6.4.2 在 src/main/resources 创建applicationContext.xml   1.6.4.3 在 src/main/resources 配置 log4j.properties 1.6.5 单元测试 在 src/test/java 创建单元测试类   1.7 Service 层 1.7.1 代码   1.7.2 配置文件 在 applicationContext.xml 中配置 service 1.8 Web 层 1.8.1代码   1.8.2配置文件 1.8.2.1 在 springmvc.xml配置视图解析器 1.8.2.2 在Web.xml 加载 spring 容器,配置 springmvc 前端控制器 1.9 Jsp表现层 编写 /WEB-INF/jsp/viewItem.jsp  1.10 运行与调试 二、 分模块构建工程 2.1 需求: 将 SSM 工程拆分为多个模块开发:   2.2 理解继承和聚合         通常继承和聚合同时使用。         何为继承? 继承是为了消除重复,如果将 dao、service、web 分开创建独立的工程则每个工程的 pom.xml 文件中的内容存在重复,比如:设置编译版本、锁定 spring 的版本等,可以将这些重复的配置提取出来在父工程的 pom.xml 中定义。          何为聚合? 项目开发通常是分组分模块开发,每个模块开发完成要运行整个工程需要将每个模块聚合在 一起运行,比如:dao、service、web 三个工程最终会打一个独立的 war 运行。 2.3 案例实现 2.3.1 maven-parent 父模块 2.3.1.1 选择骨架创建父工程   2.3.1.2 填写坐标 2.3.1.3 确认使用的是本地仓库 2.3.1.4 注意代码所在的路径 2.3.1.5 设置项目的打包方式 2.3.1.6 在父工程的 pom.xml 中抽取一些重复的配置,比如:锁定 jar 包的版本、设置编译版本等。 2.3.1.7 将父工程发布至仓库, 父工程创建完成执行 install 将父工程发布到仓库方便子工程继承 2.3.2 ssm_dao 子模块 2.3.2.1 在父工程上右击创建 maven 模块:   2.3.2.2 选择“跳过骨架选择” 2.3.2.3 填写模块名称 2.3.2.4 下一步,确定项目的目录 2.3.2.5 打包方式是 jar 2.3.2.6 定义 pom.xml 只添加dao层的 pom,mybatis 和 spring 的整合相关依赖 2.3.2.7 编写dao 代码 2.3.2.8 将 applicationContext.xml 拆分出一个 applicationContext-dao.xml,此文件中只配置 dao 相关 2.3.2.9 单元测试 2.3.2.10 把 dao 模块 install 到本地仓库 2.3.3 ssm_service 子模块 2.3.3.1 创建 ssm_service 子模块,方法同 ssm_dao 模块创建方法 2.3.3.2 ssm_service 模块的 pom.xml 文件中需要继承父模块,依赖 ssm_dao 模块,添加 spring 相关的依赖 2.3.3.3 编写service 接口代码 2.3.3.4 创建 applicationContext-service.xml,此文件中定义的 service。 2.3.3.5 单元测试 2.3.3.6 Install 到本地仓库 2.3.4 ssm_web 子模块 2.3.4.1 选择骨架创建 web 子模块 2.3.4.2 确认使用自己的本地仓库 2.3.4.3 填写模块名称 2.3.4.4 创建 java 和 resources 文件夹,转成 source root 2.3.4.5 添加打包方式 war 2.3.4.6 ssm_web 模块的 pom.xml 文件中需要继承父模块,依赖 ssm_service 模块,和 springmvc 模块 2.3.4.7 将 ssm_web 工程中的 controller 代码拷贝到 src/main/java 2.3.4.8 拷贝 ssm_web 工程中下的配置文件 2.3.4.9 运行调试 2.4 分模块构建工程-依赖整合         每个模块都需要 spring 或者 junit 的 jar,况且最终 package 打完包最后生成的项目中的 jar 就是各个模块依赖的整合,所以我们可以把项目中所需的依赖都可以放到父工程中,模块 中只留模块和模块之间的依赖 三、maven 私服 3.1 概述:         公司在自己的局域网内搭建自己的远程仓库服务器,称为私服,私服服务器即是公司内部的 maven 远程仓库,每个员工的电脑上安装 maven 软件并且连接私服服务器,员工将自己开发的项目打成 jar 并发布到私服服务器,其它项目组从私服服务器下载所依赖的构件 (jar)。 私服还充当一个代理服务器,当私服上没有 jar 包会从互联网中央仓库自动下载 3.2 搭建私服环境 3.2.1 下载 nexus         Nexus 是 Maven 仓库管理器,通过 nexus 可以搭建 maven 仓库,同时 nexus 还提供强 大的仓库管理功能,构件搜索功能等。         下载 Nexus, 下载地址: News and Notes from the makers of Nexus | Sonatype Blog 3.2.2 安装 nexus         解压 nexus-2.12.0-01-bundle.zip,解压在 F 盘,进入 bin 目录         cmd 进入 bin 目录,执行 nexus.bat install         安装成功在服务中查看有 nexus 服务 3.2.3 卸载 nexus         cmd 进入 nexus 的 bin 目录,执行:nexus.bat uninstall 3.2.4 启动 nexus         cmd 进入 bin 目录,执行 nexus.bat start         查看 nexus 的配置文件 conf/nexus.properties         # Jetty section          application-port=8081 # nexus 的访问端口配置          application-host=0.0.0.0 # nexus 主机监听配置(不用修改)          nexus-webapp=${bundlebasedir}/nexus # nexus 工程目录          nexus-webapp-context-path=/nexus # nexus 的 web 访问路径          # Nexus section          nexus-work=${bundlebasedir}/../sonatype-work/nexus # nexus 仓库目录            runtime=${bundlebasedir}/nexus/WEB-INF # nexus 运行程序目录         访问: http://localhost:8081/nexus/                  使用 Nexus 内置账户 admin/admin123 登陆:          点击右上角的 Login,输入账号和密码登陆 3.2.5 仓库类型 nexus 的仓库有 4 种类型:     1. hosted:宿主仓库,部署自己的 jar 到这个类型的仓库,包括 releases 和 snapshot 两部分,Releases 公司内部发布版本仓库、 Snapshots 公司内部测试版本仓库。      2. proxy:代理仓库,用于代理远程的公共仓库,如 maven 中央仓库,用户连接私服,私服自动去中央仓库下载 jar 包或者插件。      3. group:仓库组,用来合并多个 hosted/proxy 仓库,通常我们配置自己的 maven 连接仓库组。      4. virtual(虚拟):兼容 Maven1 版本的 jar 或者插件
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/591899.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号