Spring Boot是由Pivotal团队提供的一套开源框架,可以简化spring应用的创建及部署。它提供了丰富的Spring模块化支持,可以帮助开发者更轻松快捷地构建出企业级应用。Spring Boot通过自动配置功能,降低了复杂性,同时支持基于JVM的多种开源框架,可以缩短开发时间,使开发更加简单和高效。
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
springboot整合mybatis简化了以往的配置文件步骤,但核心思想并没有改变,只是这里用mapper代替了之前JDBC的dao层。
注:我这里是用idea编写java代码、navicat编写作为数据库来演示过程,至于为啥用这个,当然是习惯了……
第一步当然是先在pom文件中引入依赖
<!--springboot父工程-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.6</version>
</parent>
<dependencies>
<!--springboot web开发依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--mysql数据库驱动依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
<!--mybatis起步依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
<!--日志依赖-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
第二步:创建一个数据库,并且插入两条测试数据
CREATE TABLE employ (
int id,
name CHAR(20)
);
insert into employs values(1,'tom')
insert into employs value(2,'junia')
第三步:创建一个application.properties或者.yml文件(注:名称必须为application,这是springboot指定的配置文件名称)在里面添加代码
#设置浏览器访问项目的端口号
server:
port: 8088
#数据库配置信息
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/db_myweb?serverTimezone=UTC
username: root
password: 123456
第四步:在pojo包下创建一个实体类Employ(@Data注解是引自lombok依赖,用于省略创建gettter、setter方法的步骤)
@Data
public class Employ{
private int id;
private String name;
}
第五步:在mapper包下创建一个EmployMapper接口,用于编写sql语句,直接与数据库交互
@Mapper
public interface EmployMapper {
//在方法上添加@Select注解用于编写sql语句,省略了在配置文件中编写sql语句的步骤
@Select("select name from employ where id= #{id}")
String findName(Integer id);
}
第六步:在service包下创建EmployService接口
public interface EmployService {
public String findName(Integer id);
}
EmployService的实现类EmployServiceIml
@Service
public class EmployServiceIml implements EmployService {
// 注入一个EmployMapper对象
@Autowired
private EmployMapper employMapper;
// 调用mapper对象的方法来完成数据库的查询
@Override
public String findName(Integer id) {
return employMapper.findName(id);
}
}
第七步:在controller包下创建EmployController类,用于接收请求
@Controller
public class EmployController {
// 注入一个EmployService对象
@Autowired
private EmployService employService;
// 设置访问路径
@RequestMapping("/find")
@ResponseBody
public String findName(Integer id){
return employService.findName(id);
}
}
第八步:配置springboot项目启动类
@Slf4j//设置输出日志
@SpringBootApplication
public class application {
public static void main(String[] args) throws IOException {
ConfigurableApplicationContext ioc = SpringApplication.run(application.class, args);
log.info("项目启动成功!!!!");//在日志中输出
}
}
最后测试一下:
启动项目:
在浏览器中输入~,成功!!!