千家信息网

selectKey标签的作用是什么

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,这篇文章主要介绍"selectKey标签的作用是什么",在日常操作中,相信很多人在selectKey标签的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"sel
千家信息网最后更新 2025年01月24日selectKey标签的作用是什么

这篇文章主要介绍"selectKey标签的作用是什么",在日常操作中,相信很多人在selectKey标签的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"selectKey标签的作用是什么"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1.为什么要使用selectKey

数据库主键包括自增和非自增,有时候新增一条数据不仅仅知道成功就行了,后边的逻辑可能还需要这个新增的主键,这时候再查询数据库就有点耗时耗力,我们可以采用selectKey来帮助我们获取新增的主键
2.具体实现demo

查询数据库最简单的几步
2.1 controller

@Controller
public class SelectKeyController {


@Autowired
SelectKeyServiceImpl selectKeyService;

public Integer String(){

Goods goods = new Goods();
goods.setAmount("100");
goods.setGname("红烧肉");
goods.setMid("666666");
goods.setPrice("25");

int insert = selectKeyService.insert(goods);
System.out.println("执行成功条数: " + insert);
System.out.println(goods.getId());
return goods.getId();

}

}

2.2 service

@Service
public class SelectKeyServiceImpl implements SelectKeyService {


@Autowired
SelectKeyMapper selectKeyMapper;

@Override
public int insert(Goods goods) {

int insert = selectKeyMapper.insert(goods);

return insert;
}
}

2.3 mapper

public interface SelectKeyMapper {

int insert(Goods goods);

}

2.4 实体类(根据自己数据库表来写)

@Data
public class Goods {

//自增主键
private Integer id;

private String mid;

private String gname;

private String price;

private String amount;

private String imageName;

}

3.mapper.xml 文件






SELECT LAST_INSERT_ID()

INSERT INTO Goods (MID,GNAME,PRICE,AMOUNT,imageName)
VALUES (#{mid},#{gname},#{price},#{amount},#{imageName});


selectKey 会将 SELECT LASTINSERTID()的结果放入到传入的model的主键里面,keyProperty 对应的model中的主键的属性名,这里是 Goods 中的id,因为它跟数据库的主键对应order AFTER 表示 SELECT LASTINSERTID() 在insert执行之后执行,多用与自增主键,BEFORE表示SELECT LASTINSERTID() 在insert执行之前执行,这样的话就拿不到主键了,这种适合那种主键不是自增的类型resultType 主键类型

到此,关于"selectKey标签的作用是什么"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

数据 数据库 作用 标签 学习 帮助 成功 更多 类型 查询 实用 接下来 这样的话 不仅仅 实体 属性 文件 文章 方法 有时候 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 长宁区无线网络技术费用 数据库表一栏内有多个内容 翟银亮南京锦溪网络技术有限公司 网络安全观的五个特点 泉州财务软件开发哪个好 创造与魔法新服务器的狮鹫 网络安全级别最高 软件开发和移动互联哪个好 杭州讯诚网络技术 sql数据库日志分离 服务器报错50怎么解决 java服务器测试 杭州幻游网络技术有限公司百科 中国网cnkl是什么数据库 查询数据库两条数据的差值 中数科互联网科技集团有限公司 中国三峡集团网络安全 政务中心软件开发公司 税务网络安全规划与设计 杭州谛听网络技术 华为全球软件开发总部落户昆明 网络安全防御那个强 基础软件开发要交印花税吗 南京软件开发培训推荐 网鼎杯网络安全大赛比赛 网络安全噩梦 大型系统平台软件开发费标准 南京巨匠互联网络科技 福清市网络安全局在那里 杭州软件开发实习
0