-
MyBatis の構成: プロジェクト構成ファイル (通常は XML ファイル、たとえば
mybatis-config.xml
) で、データベース接続情報、マッピング ファイル パスなどの MyBatis 関連情報を構成します。 -
マッピング ファイルを作成する: マッピング ファイル (通常は XML ファイル) は、データベース テーブルと Java オブジェクトの間のマッピング関係、およびデータベースに対する追加、削除、変更、およびクエリ操作を定義します。マッピング ファイルでは、SQL ステートメントと対応するパラメーターを定義する必要があります。
-
Java オブジェクトの作成: データベース テーブルに対応する Java オブジェクトを作成します。オブジェクトのプロパティは、データベース テーブルのフィールドに 1 対 1 で対応します。
-
Java コードの作成: MyBatis API を使用して、データベースの追加、削除、変更、およびクエリ操作を実行する Java コードを作成します。
User
という名前のデータベース テーブルがありid
、name
2 つのフィールドが含まれています。
- MyBatis を構成する
mybatis-config.xml
ファイル内のデータベース接続情報とマッピング ファイル パスを構成します。例:
<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/mydatabase"/>
<property name="username" value="root"/>
<property name="password" value="password"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/example/mappers/UserMapper.xml"/>
</mappers>
</configuration>
- マッピングファイルの作成
UserMapper.xml
ファイル内で SQL ステートメントと対応するパラメーターを定義します。例:
<mapper namespace="com.example.mappers.UserMapper">
<insert id="insertUser" parameterType="com.example.User">
INSERT INTO user (id, name) VALUES (#{id}, #{name})
</insert>
<delete id="deleteUser" parameterType="int">
DELETE FROM user WHERE id = #{id}
</delete>
<update id="updateUser" parameterType="com.example.User">
UPDATE user SET name = #{name} WHERE id = #{id}
</update>
<select id="getUserById" parameterType="int" resultType="com.example.User">
SELECT * FROM user WHERE id = #{id}
</select>
</mapper>
- Javaオブジェクトを作成する
2 つのプロパティと、および対応する getter メソッドと setter メソッドをUser
含む、 という名前の Java オブジェクトを作成します。id
name
package com.example;
public class User {
private int id;
private String name;
// Getter and setter methods
// ...
}
- Javaコードを書く
MyBatis API を使用して、データベースの追加、削除、変更、クエリ操作を実行します。次に例を示します。
package com.example;
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 java.io.IOException;
import java.io.Reader;
public class Main {
public static void main(String[] args) {
try {
// 加载MyBatis配置文件
Reader reader = Resources.getResourceAsReader("mybatis-config.xml");
// 创建SqlSessionFactory
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
// 创建SqlSession
SqlSession sqlSession = sqlSessionFactory.openSession();
// 插入数据
User user = new User();
user.setId(1);
user.setName("John");
sqlSession.insert("com.example.mappers.UserMapper.insertUser", user);
// 提交事务
sqlSession.commit();
// 查询数据
User retrievedUser = sqlSession.selectOne("com.example.mappers.UserMapper.getUserById", 1);
System.out.println(retrievedUser.getName());
// 更新数据
retrievedUser.setName("Jane");
sqlSession.update("com.example.mappers.UserMapper.updateUser", retrievedUser);
// 提交事务
sqlSession.commit();
// 删除数据
sqlSession.delete("com.example.mappers.UserMapper.deleteUser", 1);
// 提交事务
sqlSession.commit();
// 关闭SqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
上記の例は、MyBatis を使用してデータベースの追加、削除、変更、およびクエリ操作を実行する方法を示しています。マッピング ファイルと Java コードは、実際のニーズに応じて変更できます。