千家信息网

selectKey标签的作用是什么

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,这篇文章主要介绍"selectKey标签的作用是什么",在日常操作中,相信很多人在selectKey标签的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"sel
千家信息网最后更新 2024年11月23日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安全错误 数据库的锁怎样保障安全 计算机网络技术专业的课程 数据库 表头 英文catle 数据库查询至少 山西戴尔服务器虚拟化技术 制定网络安全应急预案不全面 重庆北碚水果软件开发 租服务器投资 数据库可行性分析模板 做软件开发被公安带走 网络安全大排查微信群 多规格型号 数据库设置 电信代理服务器 静安区网络软件开发厂家价格 智能驾驶软件开发行业竞争情况 多运营商云服务器管理 web服务器之间的什么通信协议 中信建投证券软件开发级别 班会课青少年网络安全 广东无纸化会议管理服务器 软件开发什么学历去学比较好 中专学软件开发有用吗 网络安全证有用吗 草船借箭服务器在哪里 后缀网络技术有限公司 地税部门开展网络安全专题 网络安全公司风险分析 旧笔记本电脑改网络存储服务器 爱易网络技术 数据库中只有一个模式知乎 网络安全工程师绩效加分
0