springboot 整合 mybatis 注解 sql 语句

本文详细介绍如何在SpringBoot项目中整合MyBatis框架,包括配置数据库连接、创建实体类、编写Mapper接口、添加注解SQL语句及测试等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

springboot 整合 mybatis,使用注解写 sql 语句,具体如下

 

1、创建 springboot 项目,添加 jar 包

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.4.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>com.springmybatis</groupId>
	<artifactId>springmybatis</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>springmybatis</name>
	<description>Demo project for Spring Boot</description>

	<properties>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
			<version>1.3.2</version>
		</dependency>

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

2、配置 yml 文件

server:
  port: 9500
  
spring:
  datasource:
    url:  jdbc:mysql://192.168.0.110:3306/orcl?useUnicode=true&characterEncoding=utf-8&useSSL=false
    driver-class-name:  com.mysql.jdbc.Driver  
    username:  root
    password:  123456 

3、数据库建表

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for student
-- ----------------------------
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
  `grade` varchar(255) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  `head` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO `student` VALUES ('jsd1811', '张三', '171');
INSERT INTO `student` VALUES ('jsd1811', '李四', '175');
INSERT INTO `student` VALUES ('jsd1811', '王五', '165');
INSERT INTO `student` VALUES ('jsd1812', '小二', '180');
INSERT INTO `student` VALUES ('jsd1812', '小李', '160');
INSERT INTO `student` VALUES ('jsd1812', '小王', '177');

4、创建实体类

package com.springmybatis.bean;

public class Student {
	
	private String grade;
	
	private String name;
	
	private Integer head;

	public String getGrade() {
		return grade;
	}

	public void setGrade(String grade) {
		this.grade = grade;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Integer getHead() {
		return head;
	}

	public void setHead(Integer head) {
		this.head = head;
	}

	@Override
	public String toString() {
		return "Student [grade=" + grade + ", name=" + name + ", head=" + head + "]";
	}
}

5、创建 mapper 接口

package com.springmybatis.mapper;

import java.util.List;
import org.apache.ibatis.annotations.Select;
import com.springmybatis.bean.Student;

public interface StudentMapper {
	
	@Select("select * from student")
	List<Student> getAllStudent();

}

6、在 springboot 启动类上添加 @MapperScan 注解,并指定要扫描的 mapper 类的包路径

package com.springmybatis;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@MapperScan("com.springmybatis.mapper") //多个包可用数组{"com.springmybatis.demo.mapper","com.springmybatis.user.mapper"}
@SpringBootApplication
public class SpringmybatisApplication {

	public static void main(String[] args) {
		SpringApplication.run(SpringmybatisApplication.class, args);
	}

}

7、创建 controller 

package com.springmybatis.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.springmybatis.mapper.StudentMapper;

@RestController
public class StudentController {
	
	@Autowired
	private StudentMapper studentMapper; 
	
	@RequestMapping("/")
	public Object index() {
		return studentMapper.getAllStudent();
	}

}

8、测试

浏览器访问:http://localhost:9500/

整合成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟世君子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值