ソフトウェアのダウンロード
- apach-maven-3.8.4
リンク: https://pan.baidu.com/s/1j_AuFWlpv6P4OxabR4_evQ
抽出コード: Lvan - Mybatis の依存関係
mybatis には主に 4 つの依存関係があり、ここでは必要な依存関係を最初にダウンロードするか、ネットワークのある環境で直接ダウンロードして使用することができます。
リンク: https://pan.baidu.com/s/1xL58z3jmKsY25CkvlVeg5w
抽出コード: Lvan - Eclipse のダウンロード
ここでは、多くのプラグインがインストールされたグリーン バージョンの Eclipse をアップロードしました。また、他のバージョンを自分でダウンロードすることもできます。下図のようにプラグインは本当にたくさんあります。
リンク: https://pan.baidu.com/s/1GZJiZr9rRFEr1L71IIUHtQ
抽出コード: Lvan
Maven の構成
ダウンロードした apach-maven 圧縮パッケージを保存するディレクトリに解凍し、conf ディレクトリで settings.xml ファイルを見つけます。
設定項目を修正(55行目あたり)。
<localRepository>G:\server\apache-maven-3.8.4\maven_jar</localRepository>
ローカル ウェアハウスのアドレスを、mybatis の依存関係を持つ解凍ディレクトリに変更します。たとえば、G:\server\apache-maven-3.8.4\maven_jar が
インターネットに接続されている場合、次の構成項目を変更して、倉庫のアドレスを aliyun または Taobao に変更できます。この記事ではオフライン版について説明しているため、以下の構成項目は管理する必要はありません。
<mirrors>
<mirror>
<id>maven-default-http-blocker</id>
<mirrorOf>external:http:*</mirrorOf>
<name>Pseudo repository to mirror external repositories initially using HTTP.</name>
<url>http://0.0.0.0/</url>
<blocked>true</blocked>
</mirror>
</mirrors>
Eclipse で Maven 構成項目を変更し、ツールバーのウィンドウ オプションの下にある [設定] オプションを見つけます。
maven の構成項目の下にあるユーザー設定を見つけます。グローバル設定列の [ブラウザー] ボタンをクリックして、maven 構成ファイルを選択します。
ファイル選択ボックスで、以前に変更した settings.xml ファイルを見つけます。開くだけです。
開いた後、プロンプト ボックスが表示されます。おおよその内容は、現在のプロジェクトの依存関係を更新するかどうかを尋ねる Maven 構成が更新されたことです。
ユーザー設定オプションをグローバル設定と同じに変更することをお勧めします。
最終的な変更が成功すると、ローカル リポジトリのプロンプト メッセージが表示されます。
最後に、[適用] オプションをクリックして適用します。
Maven プロジェクトを作成する
ツールバーの左上隅にある [ファイル] オプションをクリックします。Maven プロジェクトを作成します。
Maven プロジェクト オプションが見つからない場合。タブの下部にある他のオプションを見つけてください。
ポップアップ ボックスで Maven ディレクトリを見つけて展開し、Maven プロジェクト オプションを見つけます。
次に、[次へ] をクリックし、[シンプルなプロジェクトを作成する] をオンにして、シンプルな Maven プロジェクトを作成します。
次に、プロジェクトのパッケージ名とプロジェクト名を構成します。
完全な Maven プロジェクト構造を下の図に示します。pom ファイルでエラーが報告された場合、設定ファイルに対応するローカル ウェアハウスが正しくないため、対応する Maven プラグインが見つからず、正しいローカル ウェアハウス アドレスを再構成する必要があります。
Maven を使用して依存関係を管理する
プロジェクトの下にある pom.xml ファイルを開きます。
pom.xml の構成を変更する
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.lvan</groupId>
<artifactId>demo206</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 在pom.xml文件内 配置项目所需的依赖 在联网的情况下,会自动从远程仓库下载-->
<!-- dependencies 内部的为依赖项 -->
<dependencies>
<!-- dependency就是一个依赖 不能内嵌 -->
<dependency>
<!-- org\mybatis 包名 \mybatis\ 项目名3.5.1 -->
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.1</version>
</dependency>
<!-- junit单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<!-- 日志文件 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.26</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.14</version>
</dependency>
</dependencies>
</project>
依存関係を追加するときは、ローカル ウェアハウスに直接移動して、対応する依存関係の関連構成情報を見つけることができます。ディレクトリ構造と依存関係構成の対応関係を下図に示します。
org\mybatis\mybatis\3.5.1
<!-- org\mybatis 包名 \mybatis\ 项目名3.5.1 -->
version好找,即版本号3.5.1
版本号上一级就是项目名artfactID
项目名前面的就是groupID即包名org\mybatis 需要将右斜杠转为点
此目录是基于本地仓库目录的,仓库目录部分不用管。
構成が正しくなると、プロジェクト構造に maven 依存関係の追加のディレクトリが作成されます。
構成項目が書き込まれている場合は、保存します。コードはエラーを報告しませんが、pom.xml ファイルに赤い×が付いています。これは、構成項目が間違って記述されており、maven が対応する依存関係を見つけることができないことを意味します。
プロジェクトを右クリックして、入力するプロパティ オプションを見つけることもできます。対応する依存関係のエラー メッセージを確認して、間違ったものを見つけてください。
上図のように、junit単体テストのjarパッケージが見つからないので?この jar パッケージはどこに配置されますか? ローカル ウェアハウスの下の junit の下のディレクトリに配置します。
このディレクトリを見つけると、このディレクトリに junit jar パッケージがないことがわかります。
他のバージョンの junit に切り替えて見てみましょう。
この時、バージョン4.11以下のjunit関連のjarファイルがあることを発見しました。したがって、バージョン番号を 4.11 に変更すると、問題が解決し、対応する依存関係が再び見つかります。
もちろん、これは通常、バージョン番号が間違っているためです. groupID および artifactID オプションが正しく入力されていない場合は、同じ方法で再度確認し、対応するディレクトリをラベルの値としてコピーします.
mybatis プロジェクトを作成する
リソース ファイル mybatis-config.xml ファイルを src/main/resources ディレクトリに作成します。これは mybatis 構成ファイルです。
エンティティクラスのパッケージ名、データベースの基本情報、その中のマッピングファイルの情報を設定します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
<!-- 配置实体类所在的包 告诉mybatis我的实体类都放在哪 -->
<package name="com.lvan.pojo"/>
</typeAliases>
<environments default="devlopment">
<environment id="devlopment">
<!-- 配置数据库连接方式 -->
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<!-- 配置数据库的连接信息,mybatis读取这些信息才能连接到数据库 -->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/db_emp"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- 配置mapper映射信息 告诉mybatis映射文件在哪-->
<package name="com.lvan.mapper"></package>
</mappers>
</configuration>
次に、上記の構成ファイルに表示される 2 つのパッケージを src/main/java ディレクトリの下に作成します。
データベースとデータテーブルを作成するプロセスは省略し、データテーブルの構造を下図に示します。
サンプルデータは以下の通り
pojoパッケージ配下にエンティティクラスを作成
package com.lvan.pojo;
public class Employee {
private int id;
private String name;
private String gender;
private String birthday;
private String phone;
//生成getter和setter方法
//生成tostring方法
public int getId() {
return id;
}
@Override
public String toString() {
return "Employee [id=" + id + ", name=" + name + ", gender=" + gender + ", birthday=" + birthday + ", phone="
+ phone + "]";
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}
mapper パッケージの下にエンティティ クラスに対応するインターフェイス ファイルを作成します。
package com.lvan.mapper;
import java.util.List;
import com.lvan.pojo.Employee;
public interface EmployeeMapper {
//查下所有员工的方法
List<Employee> list(); //定义接口 只需要关注返回值和方法名,形参即可,无需进行实现
}
同じ name.xml を持つマッパー パッケージの下に、マッパー インターフェース ファイルに対応するマッピング ファイルを作成します。書き込むときはマッピング関係に注意してください。id はメソッド名に対応し、resultType は戻り値のデータ型に対応します。詳細については、コードのコメントを参照してください。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 命名空间 指定该xml映射的目标文件,目标文件为一个接口文件 -->
<!-- namespace="com.lvan.mapper.EmployeeMapper" 代表的是帮com.lvan.mapper包下的EmployeeMapper接口" -->
<mapper namespace="com.lvan.mapper.EmployeeMapper">
<!-- 以查询标签的方式来实现对应接口的方法 id值为接口文件中的方法名 resultType对应了方法要返回的实体类对象 com.lvan.pojo包下Employee类-->
<select id="list" resultType="com.lvan.pojo.Employee">
<!-- SQL语句 -->
select * from tb_employee
</select>
</mapper>
テスト用のスタートアップ クラスを作成する
package com.lvan.test;
import java.io.IOException;
import java.io.Reader;
import java.util.List;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import com.lvan.mapper.EmployeeMapper;
import com.lvan.pojo.Employee;
public class EmpTest {
private static SqlSessionFactory sqlSessionFactory;
public static void main(String[] args) throws IOException {
Reader reader=Resources.getResourceAsReader("mybatis-config.xml");//从本地读取mybatis配置文件
sqlSessionFactory=new SqlSessionFactoryBuilder().build(reader);
reader.close();
SqlSession sqlSession=sqlSessionFactory.openSession();//打开sql连接
EmployeeMapper empMapper=sqlSession.getMapper(EmployeeMapper.class);//将mapper接口文件传递过去构出对象
List<Employee> emps=empMapper.list();
System.out.println("-----------------------");
System.out.println(emps);
}
}
ここでのテストには Junit Test を使用することもできます。
メイン メソッドの場合は、直接実行されます。
操作の結果は次のとおりです。
この時点で、maven メソッドを使用した mybatis プロジェクトの作成が完了しました。
一生懸命働く人は、通常、より幸運です。