Java を使用して MyBatis に基づく永続フレームワーク アプリケーションを開発する方法
序文
MyBatis は、データベース操作コードの簡素化に役立つ優れた永続フレームワークです。初心者でも経験豊富な開発者でも、MyBatis をマスターすることは非常に重要です。この記事では、Java 開発における永続化フレームワーク アプリケーションに MyBatis を使用する方法を詳しく紹介し、MyBatis の基本的な設定、Mapper、CRUD の操作について説明します。
1. 基本構成
依存関係の追加
まず、関連する依存関係をプロジェクトに追加する必要があります。依存関係は、Maven または Gradle ビルド ツールを使用して管理できます。以下は Maven の例です。
<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency> <dependency> <groupId>org.mybatis</groupId> < <artifactId>mybatis-spring</artifactId> <version>1.4.2</version> </dependency> <!-- 其他依赖 --> </dependencies>
設定ファイル
プロジェクトのリソース フォルダーに、mybatis-config.xml という名前の設定ファイルを作成します。このファイルはMyBatisの中核となる設定ファイルであり、このファイルにデータベース接続情報やMapperなどを設定する必要があります。以下は簡単な例です:
<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/MyMapper.xml"/> </mappers> </configuration>
上の例では、データベース接続情報を構成し、Mapper ファイルを指定しました。
2. マッパーの構成
マッパー インターフェイスの作成
最初に、SQL 操作を定義するためにマッパー インターフェイスを作成する必要があります。インターフェイスのメソッド名は、マッパー ファイル内の SQL ステートメント ID に対応している必要があります。たとえば、ユーザー情報をクエリする場合は、UserMapper インターフェイスを作成できます。
public interface UserMapper { User getUserById(int userId); List<User> getAllUsers(); void insertUser(User user); void updateUser(User user); void deleteUser(int userId); }
Mapper XML ファイルの作成
リソース ディレクトリに Mapper XML ファイルを作成します。ファイル名は mybatis にあるものと同じです - config.xml の設定は一貫しています。たとえば、次のように MyMapper.xml という名前のファイルを作成します:
<mapper namespace="com.example.UserMapper"> <select id="getUserById" parameterType="int" resultType="com.example.User"> SELECT * FROM user WHERE id = #{userId} </select> <select id="getAllUsers" resultType="com.example.User"> SELECT * FROM user </select> <insert id="insertUser" parameterType="com.example.User"> INSERT INTO user (id, name, age) VALUES (#{id}, #{name}, #{age}) </insert> <update id="updateUser" parameterType="com.example.User"> UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id} </update> <delete id="deleteUser" parameterType="int"> DELETE FROM user WHERE id = #{userId} </delete> </mapper>
3. CRUD 操作の例
簡単な CRUD 操作の例をいくつか実装してみましょう。
ユーザー情報のクエリ
SqlSession sqlSession = sqlSessionFactory.openSession(); try { UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = userMapper.getUserById(1); System.out.println(user); } finally { sqlSession.close(); }
ユーザー情報の追加
SqlSession sqlSession = sqlSessionFactory.openSession(); try { UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = new User(); user.setId(2); user.setName("Tom"); user.setAge(25); userMapper.insertUser(user); sqlSession.commit(); } finally { sqlSession.close(); }
ユーザー情報の更新
SqlSession sqlSession = sqlSessionFactory.openSession(); try { UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User user = new User(); user.setId(2); user.setName("John"); user.setAge(26); userMapper.updateUser(user); sqlSession.commit(); } finally { sqlSession.close(); }
ユーザー情報の削除
SqlSession sqlSession = sqlSessionFactory.openSession(); try { UserMapper userMapper = sqlSession.getMapper(UserMapper.class); userMapper.deleteUser(2); sqlSession.commit(); } finally { sqlSession.close(); }
概要
この記事では、Java を使用して MyBatis に基づく永続化フレームワーク アプリケーションを開発する方法を紹介します。構成ファイルとマッパー インターフェイスを通じて、データベース上で CRUD 操作を簡単に実行できます。この記事が初心者や経験豊富な開発者が MyBatis を使用する際に役立つことを願っています。
以上がJava を使用して MyBatis に基づいた永続化フレームワーク アプリケーションを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。