ホームページ >Java >&#&チュートリアル >MyBatisの簡単な使い方
MyBatisは、カスタマイズされたSQL、ストアドプロシージャ、高度なマッピングをサポートする優れた永続層フレームワークです。 MyBatis は、ほとんどすべての JDBC コード、パラメータの手動設定、結果セットの取得を回避します。 MyBatis は、単純な XML または注釈を使用して、ネイティブ情報を構成およびマッピングし、インターフェースと Java POJO (Plain Old Java Object、通常の Java オブジェクト) をデータベース内のレコードにマッピングできます。
ステップ 1: まずプロジェクトを作成します。通常の Java プロジェクトです。最初にプロジェクト構造を確認します
ステップ 2: 関連する jar パッケージをインポートします (公式ウェブサイト、オープンソース ):
mybatis-3.4.4.jar MyBatis jar パッケージ
mysql-connector-java-5.1.13-bin.jar Mysql jar パッケージ
ステップ 3:構成文書。これは XML ファイル mybatis-config.xml で、場所は src の下にあります
<?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> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mobile"/> <property name="username" value="zhou"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/entity/UserMapper.xml"/> </mappers></configuration>
MyBatis の XML ファイルの属性の説明について:
<!-- 配置文件的根元素 --> <configuration> <!-- 属性:定义配置外在化 --> <properties></properties> <!-- 设置:定义mybatis的一些全局性设置 --> <settings> <!-- 具体的参数名和参数值 --> <setting name="" value=""/> </settings> <!-- 类型名称:为一些类定义别名 --> <typeAliases></typeAliases> <!-- 类型处理器:定义Java类型与数据库中的数据类型之间的转换关系 --> <typeHandlers></typeHandlers> <!-- 对象工厂 --> <objectFactory type=""></objectFactory> <!-- 插件:mybatis的插件,插件可以修改mybatis的内部运行规则 --> <plugins> <plugin interceptor=""></plugin> </plugins> <!-- 环境:配置mybatis的环境 --> <environments default=""> <!-- 环境变量:可以配置多个环境变量,比如使用多数据源时,就需要配置多个环境变量 --> <environment id=""> <!-- 事务管理器 --> <transactionManager type=""></transactionManager> <!-- 数据源 --> <dataSource type=""></dataSource> </environment> </environments> <!-- 数据库厂商标识 --> <databaseIdProvider type=""></databaseIdProvider> <!-- 映射器:指定映射文件或者映射类 --> <mappers></mappers> </configuration>
ステップ 4: エンティティ クラスを作成する必要はありません。これは通常の作成で問題ありません
ステップ 5: エンティティ クラスのマッパー マッピング XML ファイルを作成します。これは、エンティティ クラスに対するいくつかの操作であると思います。 SQL ステートメントを構成し、メソッドに移動します。
<?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"><!-- namespace可以不加xml后缀 --><mapper namespace="com.entity.UserMapper"><!-- 单个对象查询 --> <select id="selectUser" parameterType="int" resultType="com.entity.User"> select * from user where id = #{id} </select> <!--查询列表 --> <resultMap id="userList" type="com.entity.User"> <result property="id" column="id" /> <result property="username" column="username"/> <result property="password" column="password"/></resultMap> <select id="selectAll" resultMap="userList"> select * from user </select> <!--插入数据 --> <insert id="insert" > insert into User (username,password) values(#{username},#{password}) </insert> <!--更新数据 --><update id="update"> update User set username = #{username},password = #{password} where id = #{id}</update><!--删除数据 --><delete id="delete"> delete from User where id = #{id}</delete></mapper>
entity クラス マッピングの属性の説明を調整します。まず最初のいくつかの遭遇を見て、それについて話し合います。Baidu は
ステップを実行できます。 6: 構築したものが役立つかどうかをテストするテスト クラスを作成します
package com.test;import java.io.IOException;import java.io.InputStream;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 com.entity.User;/** * * @author 坚持到你GL * */public class Test { private static SqlSession session=null; public static SqlSession mySession() { //你的MyBatis的配置文件地址 String resource = "mybatis-config.xml"; InputStream inputStream=null; try { //IO解析xml文件 inputStream = Resources.getResourceAsStream(resource); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } //创建一个SqlSessionFactoryBuilder对象,获得SqlSessionFactory 的实例 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //开启SqlSession session=sqlSessionFactory.openSession(); return session; } private static void select(){ //selectUser是实体类映射文件的中设置的id User user=mySession().selectOne("selectUser",2); System.out.println(user); } private static void selectAll() { List<User> list=mySession().selectList("selectAll"); for (User user : list) { System.out.println(user); } } private static void insert() { User insertuser=new User("zhou","123456"); mySession().insert("insert",insertuser); session.commit(); } private static void update() { User updateuser =new User(9,"admin","admin"); mySession().update("update", updateuser); session.commit(); } private static void delect() { mySession().delete("delete", 10); session.commit(); } public static void main(String[] args) { selectAll(); } }
小規模プロジェクトのマイクロサービスの単純な開発には、MyBatis を使用するのが非常に良い選択です
以上がMyBatisの簡単な使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。