Home > Java > javaTutorial > body text

How to use Java to develop a persistence framework application based on MyBatis

王林
Release: 2023-09-21 15:40:51
Original
1172 people have browsed it

How to use Java to develop a persistence framework application based on MyBatis

How to use Java to develop a persistence framework application based on MyBatis

Preface
MyBatis is an excellent persistence framework that can help us simplify database operations code. Whether it is a beginner or an experienced developer, mastering MyBatis is very important. This article will introduce in detail how to use MyBatis for persistence framework application in Java development. We will cover the basic configuration, Mapper and CRUD operations of MyBatis.

1. Basic configuration

  1. Add dependencies
    First, we need to add relevant dependencies to the project. Our dependencies can be managed using the Maven or Gradle build tools. The following is an example of 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>
    Copy after login
  2. Configuration file
    In the resource folder of the project, create a configuration file named mybatis-config.xml. This file is the core configuration file of MyBatis. We need to configure the database connection information, Mapper, etc. in this file. The following is a simple example:

    <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>
    Copy after login

    In the above example, we configured the database connection information and specified the Mapper file.

2. Mapper configuration

  1. Create Mapper interface
    We first need to create a Mapper interface to define our SQL operations. The method name of the interface should correspond to the SQL statement ID in the Mapper file. For example, if you want to query user information, you can create a UserMapper interface:

    public interface UserMapper {
     User getUserById(int userId);
     List<User> getAllUsers();
     void insertUser(User user);
     void updateUser(User user);
     void deleteUser(int userId);
    }
    Copy after login
  2. Create a Mapper XML file
    Create a Mapper XML file in the resources directory, the file name is the same as what we have in mybatis -The configuration in config.xml is consistent. For example, we create a file named MyMapper.xml as follows:

    <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>
    Copy after login

3. CRUD operation examples
Let’s implement some simple CRUD operation examples.

  1. Query user information

    SqlSession sqlSession = sqlSessionFactory.openSession();
    try {
     UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
     User user = userMapper.getUserById(1);
     System.out.println(user);
    } finally {
     sqlSession.close();
    }
    Copy after login
  2. Add user information

    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();
    }
    Copy after login
  3. Update user information

    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();
    }
    Copy after login
  4. Delete user information

    SqlSession sqlSession = sqlSessionFactory.openSession();
    try {
     UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
     userMapper.deleteUser(2);
     sqlSession.commit();
    } finally {
     sqlSession.close();
    }
    Copy after login

Summary
This article introduces how to use Java to develop a persistence framework application based on MyBatis. Through the configuration file and Mapper interface, we can easily perform CRUD operations on the database. I hope this article can be helpful to beginners and experienced developers when using MyBatis.

The above is the detailed content of How to use Java to develop a persistence framework application based on MyBatis. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template