SpringBoot + Mybatis + (JDBC + MySQL+ Druid )
1.准备
导入依赖
- mybatis_starter
- jdbc_starter
- mysql驱动
- druid_starter
<!-- mybatis_starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
<!-- jdbc_starter -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- druid_stater -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
</dependency>
配置文件application.yml
#配置连接数据库
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver # jdbc配置
url: jdbc:mysql:///andmybatis?serverTimezone=UTC
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource # 配置连接池
#配置mybatis
mybatis:
mapper-locations: classpath:mapper/*.xml # mapper.xml位置
type-aliases-package: com.td01.ssm.entity # 类型别名
configuration:
# 驼峰命名 , 用以将admin_username 映射为 adminUsername
map-underscore-to-camel-case: true
数据库建表
CREATE TABLE t_admin (
admin_username VARCHAR(20) NOT NULL,
admin_password VARCHAR(20) NOT NULL
)DEFAULT CHARSET=utf8;
INSERT INTO t_admin VALUES ('tom','123');
2. ORM
Objetc-Relationship-Mapping
实体类
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Admin {
private String adminUsername;
private String adminPassword;
}
mapper接口
@Mapper
public interface AdminMapper {
//查询
Admin selectAdmin(String adminUsername);
}
mapper.xml映射文件
<mapper namespace="com.td01.ssm.mapper.AdminMapper">
<select id="selectAdmin" resultType="Admin">
select *
from t_admin
where admin_username=#{admin_username}
</select>
</mapper>
3. 测试
//声明测试类 使其继承测试主类
@SpringBootTest
public class MapperTest extends SsmApplicationTests {
// 注入测试类
@Autowired
private AdminMapper adminMapper;
@Test
public void test1(){
Admin tom = adminMapper.selectAdmin("tom");
System.out.println(tom);
}
// 结果 : Admin(adminUsername=tom, adminPassword=123)
}