文章目录

  • IDEA
    • Maven
      • ▶简介:
      • ▶Maven的安装配置:
      • ▶MAVEN基本使用:
      • ▶IDEA配置MAVEN:
        • IDEA配置MAVEN环境
        • Maven坐标详解
        • IDEA创建Maven项目
        • IDEA导入Maven项目
      • ▶依赖管理:
        • 导入依赖:
        • 依赖范围:
        • 六种依赖范围解释:
      • ▶IDEA中创建Maven Web项目并启动Tomcat
      • ▶war与war exploded的区别:
    • MyBatis

IDEA

Maven

▶简介:

Maven是专门用于管理和构建Java项目的工具,它的主要功能有:

  • 提供了一套标准化的项目结构

  • 提供了一套标准化的构建流程(编译。测试。打包,发布…)

  • 提供了一套依赖管理机制

    • 依赖管理其实就是管理你项目所依赖的第三方资源(jar包、插件…)

    在pom.xml中通过代码从仓库导包

    <! --导入mysql驱动jar包-->
    <dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.32</version></dependency>
    </dependencies>
    

【Maven提供了一套标准化的项目结构,所有IDE使用Maven构建的项目结构完全一样,所有IDE创建的Maven项目可以通用。eclipse、myeclipse、idea创建的项目可以随意导入。】

模型:

仓库分类:

1.本地仓库(Local Repository):自己计算机上的一个目录

2.中央仓库(Central Repository):由Maven团队维护的全球唯一的仓库(一般开源)------地址: https://repo1.maven.org/maven2/

3.远程仓库(私服) Remote Re pository:一般由公司团队搭建的私有仓库

仓库的使用:

当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否对应的jar包:

  • 如果有,则在项目直接引用
  • 如果没有,则去中央仓库中下载对应的jar包到本地仓库(下载过程,Maven内部提供)

还可以搭建远程仓库,将来jar包的查找顺序变为:

  • 本地仓库—>远程仓库—>中央仓库

▶Maven的安装配置:

1.解压apache-maven-3.8.6.rar既安装完成

网址:http://maven.apache.org/download.cgi

2.环境变量:

  • 配置环境变量MAVEN_HOME为安装路径的bin目录

3.【在Path中编辑新建%MAVEN_HOME%\bin】

4.配置完成后在cmd中输入mvn -version

5.配置本地仓库:修改conf/settings.xml 中的为一个指定目录【在maven根目录下建立一个自定义文件mvn_resp作为本地仓库】

< localRepository>D:\apache-maven-3.8.6\mvn_resp< /localRepository>   自己的本地仓库路径

4.配置阿里云私服:修改conf/settings.xml中的标签,为其添加如下子标签:

<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf>
</mirror>

▶MAVEN基本使用:

Maven常用的命令:【mvn 命令】

  • compile:编译
  • clean:清理
  • test:测试
  • package:打包
  • install:安装

Maven声明周期:

Maven构建项目生命周期描述的是一次构建过程经历经历了多少个事件Maven对项目构建的生命周期划分为3套

  1. clean:清理工作

  2. default:核心工作,例如编译,测试,打包,安装等

  3. site:产生报告。发布站点等

▶IDEA配置MAVEN:

IDEA配置MAVEN环境

  • 新建一个空项目,选择File–>Settings
  • 搜索maven
  • 设置IDEA本地安装的Maven

    maven的路径等都要换成前面我们自己,“user setting file”的默认路径是在C:\Users\本地.m2

Maven坐标详解

什么是坐标?

  • Maven 中的坐标是资源的唯一标识

  • 使用坐标来定义项目或引入项目中需要的依赖

Maven坐标主要组成:

  • groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例如: com.itheima)
  • artifactld:定义当前Maven项目名称(通常是模块名称,例如order-service、goods-service)
  • version:定义当前项目版本

示例:

定义一个项目的坐标
<groupId>com.itheima</groupId>
<groupId>mysql</groupId>
<artifactId>maven-demo</artifactId>
mysql的一个驱动版本坐标
<dependency><artifactId>mysql-connector-java</ artifactId><version>1.0-SNAPSHOT</version><version>5.1.46</version>
</dependency>

IDEA创建Maven项目

  1. 创建模块,选择Maven,点击Next
  2. 填写模块名称,坐标信息,点击finsh,创建完成
  3. 编写HelloWord,并运行

IDEA导入Maven项目

步骤:

  1. 选择右侧Maven面板,点击+(add Maven Projects)
  2. 选中文件对应的pom.xml文件,双击即可
  3. 如果没有Maven面板,选择View → Appearance Tool Window Bars

配置Maven-Helper插件:

方便使用Maven插件和断点操作

1.选择IDEA中File --> Settings2

2.选择Plugins

3.搜索Maven,选择第一个Maven Helper,点击Install安装,弹出面板中点击Accept

4.重启IDEA

▶依赖管理:

导入依赖:

1.在pom.xml中编写标签

2.在标签中使用引入坐标

3.定义坐标的groupld,artifactld,version

<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql-connector-java.version}</version>
</dependency>

4.点击刷新按钮,使坐标生效(将坐标删除再次点击刷新,jar就删除)

▶提供一个网站可以复制所需sql的坐标

https://mvnrepository.com/artifact/mysql/mysql-connector-java

【https://mvnrepository.com/ 是maven的官网,不知道jar包版本号可以去这里找对应的jar包版本】

▶每导入一个点击刷新过于繁琐,让它直接生效

files——Sittings——Build, Execution, Deployment——Any changes——确定

▶需要某些jar包,直接导入

Alt+Insert出现面板

如果有Dependency就直接点击然后搜索;若没有点击Add dependency搜索,选择版本,直接导入也可以

依赖范围:

  • 通过设置坐标依赖范围规定jar的作用范围 (编译环境、测试环境、运行环境)的关系,使用scope标签
<dependency><groupld>junit</groupId><artifact1d>junitc</artifactId><eversion>4. 13</version><escope>test</scope>  依赖范围
</dependency>

  • 默认值:compile

六种依赖范围解释:

依赖范围就是用来控制依赖与这三种classpath(编译classpath、测试classpath、运行classpath)的关系,Maven有以下几种依赖范围。

1.compile: 编译依赖范围。如果没有指定,就会默认使用该依赖范围。使用此依赖范围的maven依赖,对于编译 测试 运行三种的classpath都有效。

2.test:测试依赖范围。使用此依赖范围的Maven依赖,只对于测试的classpath有效,在编译主代码或者运行主代码的时候都无法依赖此类依赖。典型的例子是jUnit,它只有在编译测试代码及运行测试代码的时候才有效。

3.provided:以提供依赖范围。使用此依赖范围的maven依赖,对于编译和测试classpath有效,但在运行时无效。典型的例子是servlet-api,编译和测试项目的时候需要该依赖,但在运行的时候,由于容器已经提供,就不需要maven重复地引入一遍。打包的时候可以不用包进去,别的设施会提供。事实上该依赖理论上可以参与编译,测试,运行等周期。相当于compile,但是打包阶段做了exclude操作

4.runtime:运行时依赖范围。使用此依赖范围的maven依赖,对于测试和运行classpath有效,但在编译主代码时无效。典型的例子是JDBC驱动实现,项目主代码的编译只需要jdk提供的jdbc的接口,只有在执行测试或者运行测试的时候才需要实现上述接口的jdbc的驱动

5.system:系统依赖范围。从参与度来说,和provided相同,不过被依赖项不会从maven仓库下载,而是从本地文件系统拿。需要添加systemPath的属性来定义路径,该依赖与三种范围的classpath

和provided依赖范围完全一致。可能造成不可移植,谨慎使用。

6.import:导入依赖范围。该依赖范围不会对三种classpath产生实际的影响。只有在dependencyManagement下才有效果

▶IDEA中创建Maven Web项目并启动Tomcat

【此处使用的是2022IDEA,与其他IDEA版本会有些不同】

①new——project选择:

非必须步骤:【在Properties中添加一个参数archetypeCatalog=internal 可以帮助我们快速构建项目 】就在上图加号的空白框中输入,是键值的方式。

②创建完成后,File——settings找到:

③看自己的文件目录,目录文件没有要创建【pom.xml相当于lib】

​ 创建java和resources目录:


④配置Tomcat,运行:

  • 点这个后,进去点加号,选择自己的Tomcat路径等等

  • 注意一个地方:

    第一次创建挺慢的,看控制台加载完,直到出现src目录。
    注意,如果使用maven,本地仓库每次都需要去配置以下(settings那步),要不然jar包和一些文件还会在C:\Users\本地.m2------我是见一次删一次。
    不过我的项目创建需要好久(可能Jules的网太差了吧)

▶war与war exploded的区别:


war:启动Tomcat的时候会将项目打成war包,java项目的压缩包叫war包。将项目放到Tomcat的启动目录下就能运行,发布模式。

war exploded:将项目编译成class文件,不会war包,相当于将class文件复制到Tomcat的启动目录下,开发模式。

-------------------------------------一条完美的分割线-----------------------------------

MyBatis

什么是MyBatis?

  • MyBatis是一款优秀的持久层框架,用于简化JDBC开发

  • MyBatis本是Apache 的一个开源项目iBatis, 2010年这个项目由apache softwarefoundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github

  • 官网: https://mybatis.org/mybatis-3/zh/index.html

  • 持久层:

    负责将数据到保存到数据库的那一层代码【JavaEE三层架构:表现层、业务层、持久层

简化:

创建模块,导入坐标

编写MyBatis核心配置文件–>替换连接信息解决硬编码问题

编写SQL映射文件–>统一管理sql语句,解决硬编码问题

JDBC开发

  • MyBatis本是Apache 的一个开源项目iBatis, 2010年这个项目由apache softwarefoundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github

  • 官网: https://mybatis.org/mybatis-3/zh/index.html

  • 持久层:

    负责将数据到保存到数据库的那一层代码【JavaEE三层架构:表现层、业务层、持久层

简化:

创建模块,导入坐标

编写MyBatis核心配置文件–>替换连接信息解决硬编码问题

编写SQL映射文件–>统一管理sql语句,解决硬编码问题

Maven的学习与2022IDEA创建Maven的web项目的教程(这个比上一期更“啰嗦哦~,前面不想删了,整体再来一遍”)相关推荐

  1. IDEA创建mybatis框架web项目

    IDEA创建mybatis框架web项目 一.idea新建项目 新建的时候选择java Enterprise ,选择jdk,maven仓库等.点击next 二.选择Web Profile,点击next ...

  2. Java web 开发填坑记 2 -如何正确的创建一个Java Web 项目

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72566261 本文出自[赵彦军的博客] Java web 开发填坑记 1-如何正确 ...

  3. Eclipse Java Oxygen不能创建动态的web项目(解决方法)

    Eclipse Java Oxygen不能创建动态的web项目(解决方法) 一.eclipse安装J2EE插件 一.eclipse安装J2EE插件 Oxygen版本Eclipse没有toamct开发工 ...

  4. Maven3路程(三)用Maven创建第一个web项目(1)

    一.创建项目 1.Eclipse中用Maven创建项目 上图中Next 2.继续Next 3.选maven-archetype-webapp后,next 4.填写相应的信息,Packaged是默认创建 ...

  5. MAVEN创建并打包web项目

    maven项目是由一个maven project和多个maven module组成的,以下简介一下maven webapp的创建和打包,前提是你已经安装配置好maven了. 打开eclipse.依照例 ...

  6. idea maven创建java项目_新版本IntelliJ IDEA 构建maven,并用Maven创建一个web项目(图文教程)...

    之前都没试过用maven来管理过项目,但是手动找包导包确实不方便,于是今天用2016版的IDEA进行了maven的初尝试. 打开IDEA,创建新项目: 然后选择Maven,以及选择自己电脑的jdk: ...

  7. 用Maven创建第一个web项目Struts2项目

    一.创建一个web项目 参考前面文章,项目名:maven-struts-demo. 二.配置pom.xml文件添加struts2依赖 <project xmlns="http://ma ...

  8. idea maven 删除dependencies_使用IDEA创建Maven工程 创建javase工程

    5. 使用IDEA创建Maven工程 - 创建javase工程 1.目标 能够使用IDEA创建javase的Maven工程 2.路径 创建java工程 java工程目录结构 编写Hello World ...

  9. 初识JavaWeb(web开发概述、web开发环境的搭建、创建并发布web项目)

    文章目录 JavaWeb web开发概述 web开发环境的搭建 web服务器的选择 环境搭建 Tomcat的配置文件 创建发布Web项目 JavaWeb web开发概述 学习web开发, 我们需要一台 ...

  10. Intellij idea 14 创建简单的Web项目

    为什么80%的码农都做不了架构师?>>>    我这里用到的是IDEA14 创建项目: 配置服务器这里我用的是jetty,启动时间少于tomcat,配制方法都大同小异. 点击Fini ...

最新文章

  1. ATS 4.2.3自定义日志文件格式的方法
  2. c#小软件(SaveClassic)开发手记--(3)基础类(MP3播放类MP3Player)
  3. Linux 下 svn 的使用
  4. python如何读写文件-Python读写文件
  5. python爬虫兼职-python爬虫爬取拉勾招聘网
  6. C++自学者的困境!
  7. dotNetCore操作Redis(含CentOS7哨兵模式部署)
  8. Linux进程 excel族函数的用法
  9. apache gobblin mysql_incubator-gobblin-master
  10. 南华大学计算机学院吴取劲,一种基于图深度优先搜索的基本路径集自动生成优化算法-南华大学学报.PDF...
  11. 策略模式和职责链模式在CMS中的应用
  12. python学生管理系统用类写_python面向对象——学校学生教职工管理系统类的实例...
  13. springcloud工作笔记100---@PostConstruct注解的作用
  14. matlab卷积反投影,卷积反投影法图象重建.pdf
  15. 想提取嵌入视频文件的字幕流么?一条命令帮你解决|脚本工具系列
  16. 解决微信公众号accessToken白名单问题
  17. 和计算机相关的祝福语,祝福语精选
  18. 《天龙八部》地形研究-1
  19. Kafka Rest : Confluent
  20. CentOS如何拓展swap分区

热门文章

  1. linux下安装asm数据库,Linux下ASM实例的安装
  2. android 双向进度条,Android自定义双向进度条
  3. 杰里之2M 包加入来电铃声和来电报号的问题【篇】
  4. 页码在html中怎么设置,如何设置网页打印的网址、日期、页码等?
  5. 自然语言处理 | (4)英文文本处理与NLTK
  6. 大学物理实验(二)气体比热容比的测定
  7. 当 SegmentFault 遇上呼伦贝尔
  8. cm4 NVIC完全解析
  9. #9733;双十一背后的消费心理
  10. R语言实现决策树和朴素贝叶斯分类预测,并比较准确度(含数据集)