(二十五)ORM框架Bee,DB表没有id字段时,如何处理

新项目,可以直接加个id字段. 约定优于配置,可以使问题更简单.
主键名不是id,也是可以的。有极少方法不能使用而矣。如Suid.update, Suid.insertAndReturnId, SuidRich.selectById.
其它方法,没有id字段,则不解析而矣。

主键名不是id时的例子:

源码地址:
https://gitee.com/automvc/bee-exam/blob/master/src/main/java/org/teasoft/exam/bee/osql/SpecialTest.java

表对应javabean (无id字段):

public class Noid  {

	private String uuid;
	private String name;
	private Integer num;
	private String remark;

    //。。。get ,set
}

操作数据库代码:

public static void testNoId() {
		Noid noid=new Noid();
		noid.setUuid("aaaaaa-no-id");
		noid.setName("test no id");
		suid.insert(noid);
		
		List<Noid> list=suid.select(noid);
		Printer.printList(list);
		
		noid.setUuid("aaaaaa-no-id");
		noid.setName("new name3");
//		suid.update(noid);   //默认id作为where条件里的表达式,用于确定需要更新的记录
		suidRich.updateBy(noid, "uuid"); //没有id字段;则指定作为where的字段即可.
		
		List<Noid> list2=suid.select(noid);
		Printer.printList(list2);
	}


 * 另外Bee有提供分布式id的方法,即使主键名不是id也可以使用分布式id。
 * 但强烈建议新项目,设置一个名为id的字段

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值