2 liangzi321321 liangzi321321 于 2017.09.09 16:57 提问

关于SpringMVC+hibernate设置主键自增问题

用myeclipse实现的反向生成实体类,然后想用注解序列的形式实现id自增,可是每次插入数据库的id都会以50增长,问题是我的序列是设置的按1增长,而且每次插入以后序列的下一个还是原来的数,说明序列没用到吧,我是用 @SequenceGenerator(name="SEQ_GEN", sequenceName="YIXING_USER$SEQ")
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SEQ_GEN")的方式来注解的,有没有人遇到过同样的问题

2个回答

weixin_38824535
weixin_38824535   2017.09.09 19:35

你需要增加name属性还有,序列自增的两个属性.代码:

@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="xx")
//sequenceName:将来在数据中创建序列名称  initialValue:从几开始  allocationSize:每次增长几个
@SequenceGenerator(name="xx",sequenceName="seq_courier",initialValue=1,allocationSize=1)
@Column(name = "C_ID")
private Integer id; // 主键       
----------------------------------------------------------

注意name的值需要和上面generator的值相同.
希望能帮到你

weixin_40172514
weixin_40172514   2017.09.09 20:13

@Entity
@Table(name = "TBL_BFMGM_ADMIN_USER_BIND")
public class AdminUserBind {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private Integer id;

。。。。。
}
数据库设计表
CREATE TABLE
TBL_BFMGM_ADMIN_USER_BIND
(
    id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(32),
    value VARCHAR(256),
    PRIMARY KEY (id)
)
ENGINE=InnoDB DEFAULT CHARSET=gbk;

参考上面的设置试试
Csdn user default icon
上传中...
上传图片
插入图片