MyBatis ialah rangka kerja lapisan kegigihan yang sangat baik yang menyokong SQL tersuai, prosedur tersimpan dan pemetaan lanjutan. MyBatis menghapuskan hampir semua kod JDBC dan kerja menetapkan parameter dan mendapatkan set hasil. MyBatis boleh mengkonfigurasi dan memetakan jenis primitif, antara muka dan Java POJO (Objek Java Lama Biasa) ke dalam rekod dalam pangkalan data melalui XML atau anotasi mudah.
1. Struktur direktori keseluruhan projek MyBatis
2. Cipta SpringBoot yang mudah projek
3 Tambah pergantungan MyBatis
<!--MyBatis--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.32</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version> </dependency>
4. . Cipta jadual USER dalam pangkalan data
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL DEFAULT "" COMMENT "用户名", `password` varchar(50) NOT NULL DEFAULT "" COMMENT "密码", PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
5 Konfigurasikan maklumat sambungan pangkalan data dalam application.properties
#数据库相关配置 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useSSL=false&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useAffectedRows=true spring.datasource.username=root spring.datasource.password=QQ796413 #mybaits配置 #mapper加载路径 mybatis.mapper-locations= classpath:mapper/*.xml #实体包位置 mybatis.type-aliases-package= com.example.mybatisdemo.entity #myatbis配置文件 mybatis.config-location= classpath:mybatis-config.xml
6 jadual PENGGUNA
package com.example.mybatisdemo.entity; public class User { private int id; private String username; private String password; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } @Override public String toString() { return "User{" + "id=" + id + ", username="" + username + """ + ", password="" + password + """ + "}"; }
7 Cipta UserMapper.java
package com.example.mybatisdemo.mapper; import com.example.mybatisdemo.entity.User; import org.apache.ibatis.annotations.Mapper; @Mapper public interface UserMapper{ User findUserById(Integer id); }
8 Cipta Perkhidmatan Pengguna.java service/UserService >
package com.example.mybatisdemo.service; import com.example.mybatisdemo.entity.User; public interface UserService { User findUserById(Integer id); }
package com.example.mybatisdemo.service.impl; import com.example.mybatisdemo.entity.User; import com.example.mybatisdemo.mapper.UserMapper; import com.example.mybatisdemo.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public User findUserById(Integer id) { return userMapper.findUserById(id); } }
<?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> <settings> <!--开启日志--> <setting name="logImpl" value="STDOUT_LOGGING"/> <!--开启驼峰命名法--> <setting name="mapUnderscoreToCamelCase" value="true"/> <!--开启全局延迟加载--> <setting name="lazyLoadingEnabled" value="true"/> <!-- 集合为空时强制返回空集合实例而不是null --> <setting name="returnInstanceForEmptyRow" value="true"/> <!-- 结果集中value为空时保留key --> <setting name="callSettersOnNulls" value="true"/> </settings> </configuration>
rreee
12. java<?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"> <!--注意:1.这里的namespace要是你usermapper的位置--> <mapper namespace="com.example.mybatisdemo.mapper.UserMapper"> <!--注意这里的返回类型--> <resultMap id="BaseResultMap" type="com.example.mybatisdemo.entity.User"> <result column="id" property="id"/> <result column="username" property="username"/> <result column="password" property="password"/> </resultMap> <!--2.id和你的方法名一样,resultMap为上面的id名一致--> <select id="findUserById" resultMap="BaseResultMap"> select id, username, password from user where id= #{id,jdbcType=INTEGER} </select> </mapper>
Atas ialah kandungan terperinci Bagaimana untuk bermula dengan cepat dengan SpringBoot MyBatis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!