00:00
好,那我们刚才呢,然后咱们讲了my bet plus中的一个常用注解叫做table name,它的作用呢,就是来设置我们当前实体类所对应的表明了,好,那下面呢,那我们再说一种情况,就比如说呀,我们在实现咱们的增删改查的过程中,特别是咱们的添加功能,对吧,大家会发现my bet plus会默认将ID来作为主件,那如果说就像是我们以后咱们在进行开发的过程中,很有可能咱们的这张表里面的这个主件它不叫做ID,那比如说呀,我当前我的user这个实体类中的属性,咱们把它改成是UID,然后呢,咱们来找到我们的表,咱们点击右键,然后来改变表,然后咱们把其中表示主键的这个字段呢,也改成是UIDOK,那这个时候大家说我们的添加功能还能实现吗?对吧,然后因为我们改了咱们这里面的属性,所以说咱们的测试方法可能会出现一些问题啊,比如说。
01:00
在这个地方它就要变成是UID了,对吧,还有呢,就是我们下面咱们在实现我们的这个。来我们在实现咱们的这个修改功能的时候,咱们在这也要把它给改成是can set u ID OK啊,行,那这个时候咱们保证咱们的代码不报错啊,然后下面我们来测试一下咱们的添加功能,对吧?这个大家应该都能看出来,My bet plus会把ID作为主键吧,因为咱们说了,然后ID呢,它会通过雪花算法来生成一个唯一性的主件,所以说在这儿ID呢,大家来看我们在进行一个添加功能的时候,咱们来打开表,大家来看进行添加功能的时候,咱们的ID是不是都是通过雪花算法来进行的赋值,所以说买be plus它会默认把咱们的ID,然后来作为主键,那如果我们现在把它改成了UID的话,它还会好使吗?我们现在来一个执行,大家来看啊。
02:00
来,大家觉得它应该好使,不好使应该不好使吧,对不对,为什么,因为。如果我们的UID可以来作为主键的话,那我们当前不管写什么ID,它都可以作为主键呢,对不对?那为什么它不会把A级作为主键呢?大家想想是不是为什么不会把name作为主键呢?所以说在my be plus中,它一定是有一个默认的规则的,所以说呢,来咱们往下找,来找到我们当前咱们的一个错误信息,大家来看啊,它说我们当前的field的UID,然后doesn't have a default value,那这说明了什么?这说明了我们当前咱们把这个主键给改成UID之后,它有没有为UID来进行赋值呀,没有,而我们当前的UID是主键,所以说它必须得赋值,它不能为空,所以说在这给我们报了一个错,说它没有一个默认的值,OK吧,所以说我们从这个错里面就能够看出来,My be plus只能默认将ID作为主键,如果咱们换成了UID的话,还能实现效果吗?
03:08
不能好,那所以说我们该如何来解决这个问题呢?好,这个时候就用到了我们要讲的第二个注解。叫做table ID,咱们来找到我们的实体类,在我们当前的UID这一个属性上,然后来添加一个注解,叫做table ID注解,OK,这样就可以了。好,这个时候我们就可以将咱们的这个属性所对应的字段来指定为主键,这个大家注意。啊,这个大家一定要看好,这个注解是什么意思啊,我刚才跟大家说的是将这个属性所对应的字段来作为我们当前的主见,对吧?因为我们的框架结构中说了它执行它是my bet plus,实现功能的过程是要先来分析我们当前,咱们扫描咱们的实体类,然后再抽取属性,把属性来作为字段进行操作的,所以说大家注意它的作用,咱们在这来写一下,将什么是将咱们的属性所对应的什么字段,然后来指定为主键,指定为主键OK,好,下面我们再来测试一个它的功能,大家来看啊。
04:21
好,这个时候我们的添加功能就没有任何问题了,所以说呢,大家一定要看好,如果我们以后所遇到的表里面,如果表示主键的字段,它不叫做ID,那这个时候我们就需要用到咱们的table ID这个注解了啊好,大家看一下有没有问题呢?没有任何问题对吧?然后咱们所操作的这个所执行的这个SQ语句,大家来看我们当前所表示的主表示主键的字段是不是就已经变成了UID了,OK吧,好啊。
我来说两句