Maven学习

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

1.提供一套标准化的项目结构

2.提供一套标准化的构建流程(编译测试打包发布

3.提供一套依赖管理机制

jar包仓库:

本地仓库,中央仓库,远程仓库(私服)

导入jar包时,先从本地仓库找,如果没有,前往中央仓库寻找(如果有私服先找私服),找到后下载到本地仓库(有私服下载到私服)

下载安装配置

1.官网下载后解压

2.配置环境变量

验证一下

3.配置本地仓库

修改conf/settings.xml中的<lacalRepository>为一个指定目录

4.配置阿里云私服

修改conf/settings.xml中的<mirrors>标签为其添加以下子标签

IEDA中使用maven

一、配置maven

settings中,搜索到maven后,取消掉idea自带的maven路径,采用自己的路径将maven路径设置好,再将配置文件设为自己手动更改过的settings.xml文件,修改过的settings文件的本地库地址为自己手动设定的地址,并且有druid数据库连接池的配置信息

Maven坐标

Maven中的坐标是资源的唯一标识,使用坐标来定义项目或者引入项目中需要的依赖

Maven坐标的主要组成:

groupld:定义当前Maven项目隶属组织名称n(通常是域名反写例如com.itheima)

artifactid:定义当前Maven项目名称(通常是模块名称,例如order-service\goods-service)

version:定义当前项目版本号

依赖管理

通过编写maven项目的pom.xml文件,来添加jar包

<dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.28</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>1.2.8</version>
    </dependency>

  </dependencies>

将junit包、druid包、mysql-connector包加入

加入的包的坐标不知道?

Maven Repository: Search/Browse/Explore (mvnrepository.com)

搜索想要的jar包,复制粘贴

当修改完配置文件后,一定要进行加载

或者右键

依赖范围

例如

  <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.28</version>
      <scope>test</scope>
    </dependency>

就是把mysql连接jar包的使用范围规定在test

MyBatis快速入门

1.什么是MyBatis

一款持久层框架,用于简化JDBC开发

持久层:负责将数据保存到数据库那一层的代码

JavaEE三层架构:表现层、业务层、持久层

2.在Maven项目中使用

如果使用 Maven 来构建项目,则需将下面的依赖代码置于 pom.xml 文件中:

<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>x.x.x</version>
</dependency>

xxx为版本号,引入mysql连接包,mybatis包,日志包,junit包

<dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.28</version>
    </dependency>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.5.13</version>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-core</artifactId>
      <version>1.2.3</version>
    </dependency>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

①加载mybatis核心配置文件,获取SqlSessionFactory(官网复制)https://mybatis.net.cn/getting-started.html

String resource = "org/mybatis/example/mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

②获取SqlSession对象,用它来执行sql

SqlSession sqlSession = sqlSessionFactory.openSession();

③执行sql语句

④释放资源

Mapper代理开发

目的:解决原生方法中的硬编码,简化后期执行SQL

1.定义与SQL映射文件同名的Mapper接口,并且将Mapper接口和SQL映射文件放置在同一目录下

2.设置SQL映射文件的namespace属性为Mapper接口全限定名

3.在Mapper接口中定义方法,方法名就是SQL映射文件中SQL语句的id,并保持参数类型和返回值类型一致

4.编码:1.通过SqlSession的getMapper方法获取Mapper接口的代理对象

              2.调用对应方法完成sql的执行

三步走:编写接口方法->编写sql->执行方法

//MybatisX小插件,方便快速查找映射文件及对应的SQL语句,两只小鸟

mapper.xml文件中resultMap属性

id;唯一标识

type;映射类型,支持别名

column;表的列名

property;实体类的属性名

1.定义<resultMap>标签

2.在<select>标签中,使用resultMap属性替换resultType属性

<resultMap id= "xxx"   type="x">
 <result column="column_name"  property"columnName"/>
</resultMap>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值