Springboot+MyBatis——通用Mapper

本文介绍如何使用SpringBoot框架结合MyBatis持久层技术、Druid连接池及MySQL数据库,通过添加通用Mapper依赖,自定义Mapper接口,编写实体类与接口类,最终在控制器中调用Service组件完成数据查询。

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

1,新建一个Maven项目,并配置成Springboot框架+MyBatis持久层+druid连接池+MySQL数据库
2,添加通用Mapper的依赖

    <dependency>
        <groupId>tk.mybatis</groupId>
        <artifactId>mapper-spring-boot-starter</artifactId>//SpringBoot项目中添加该依赖
        <version>1.2.3</version>
    </dependency>
<dependency>
	<groupId>tk.mybatis</groupId>
	<artifactId>mapper</artifactId>//常规项目
	<version>4.0.0</version>
</dependency>

3,新增一个接口继承Mapper,MysqlMapper接口

public interface MyMapper<T> extends Mapper<T>,MySqlMapper<T>{
}

4,编写实体类,并在类名添加 @table注解,成员变量添加 @Column注解

@Table(name="studentinfo")//name为表名
public class Student {
	@Column(name="stuno")//name为字段名
	private Integer stuno;
	@Column(name="stuname")
	private String stuname;
	@Column(name="stubirth")
	private Date stubirth;
	@Column(name="stusex")
	private Integer stusex;
	@Column(name="stuaddr")
	private String stuaddr;
	@Column(name="stutel")
	private String stutel;
	public Integer getStuno() {
		return stuno;
	}
	public void setStuno(Integer stuno) {
		this.stuno = stuno;
	}
	public String getStuname() {
		return stuname;
	}
	public void setStuname(String stuname) {
		this.stuname = stuname;
	}
	public Date getStubirth() {
		return stubirth;
	}
	public void setStubirth(Date stubirth) {
		this.stubirth = stubirth;
	}
	public Integer getStusex() {
		return stusex;
	}
	public void setStusex(Integer stusex) {
		this.stusex = stusex;
	}
	public String getStuaddr() {
		return stuaddr;
	}
	public void setStuaddr(String stuaddr) {
		this.stuaddr = stuaddr;
	}
	public String getStutel() {
		return stutel;
	}
	public void setStutel(String stutel) {
		this.stutel = stutel;
	}
	@Override
	public String toString() {
		return "Student [stuno=" + stuno + ", stuname=" + stuname + ", stubirth=" + stubirth + ", stusex=" + stusex
				+ ", stuaddr=" + stuaddr + ", stutel=" + stutel + "]";
	}
}

5,编写对应的接口类实现自定义的Mapper类,并加上Mapper注解

@Mapper
public interface TestMapper extends MyMapper<Student>{
}

6,使用Service去调用

@Service
public class TestService {
	@Autowired
	TestMapper testMapper;
	public Object queryAllStudents() {
		return testMapper.selectAll();
	}
}

7,使用控制器组件去调用Service组件

@Controller
public class TestController {
	Logger logger=LoggerFactory.getLogger(getClass());

	@Autowired
	TestService testService;

	@RequestMapping("a")
	@ResponseBody
	public String test1() {
		String str=JSON.toJSONString(testService.queryAllStudents());
		logger.info(str);
		return str;
	}
}

8,在浏览器中进行调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值