数据库:mysql
EJB3.X
在netbeans下,直接根据数据库表生成持久化的实体bean,id在数据库中是自增主键,
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
设置时,在调用create的时候,插入不成功,报错,错误信息:
警告: EJB5184:A system exception occurred during an invocation on EJB ClinicAntibioticFacade, method: public void com.mycompany.facade.ClinicAntibioticFacade.create(com.mycompany.entity.ClinicAntibiotic)
警告: javax.ejb.EJBException
而
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
这样设置时,可以插入到数据库中,但是第一次启动服务的时候,数据库表需要是初始状态,插入的第一条是id是1,然后插入数据都正常,但是,重启服务器后,再次插入数据,id直接变成了51,接下来的顺序又正常,每次重启服务器后的第一次插入数据,id都会比上一次重启后插入的第一条数据的id多50,原因没找到
--转自