摘要:
只需要在实体类中设置默认值就好了。如 private int grade = 0;//比如说成绩grade,在没有设定分数时,学生分数默认是0那么grade在没有设置值的情况下就永远是0了! 阅读全文
摘要:
mappedBy的意思就是“被映射”,即mappedBy这方不用管关联关系,关联关系交给另一方处理1.规律:凡是双向关联,mapped必设,因为根本都没必要在2个表中都存在一个外键关联,在数据库中只要定义一边就可以了a) 只有OneToOne,OneToMany,ManyToMany上才有mappedBy属性,ManyToOne不存在该属性;b) mappedBy标签一定是定义在the owned side(被拥有方的),他指向the owning side(拥有方);c) mappedBy的含义,应该理解为,拥有方能够自动维护 跟被拥有方的关系; 当然,如果从被拥有方,通过手工强行来维护拥有 阅读全文
摘要:
环境:SQL Server 2008 R2问题:查询表结构命令 对MySQL和Oracle数据库熟悉的朋友知道用desc就可以查询一张表的结构,但是在SQL Server里执行desc命令会报错。 [sql]desc Student; --关键字 'desc' 附近有语法错误。 www.2cto.com 现提供两条命令查询表结构: 1.sp_help table_name; 如:[sql]sp_help Student; 阅读全文
摘要:
在做Student与Course多对多的关联,出现上述异常1.请检查Student的courses这个属性是否使用了泛型,如:Set<Course>.如果未使用泛型,请在@ManyToMany注释中使用targetEntity指定元素的类型即@ManyToMany(targetEntity=Course.class)2.注意当你使用了泛型即Set<Course>时,也要确保你对应的geters, seters方法也是使用泛型,要不然也会报上述错误 阅读全文
摘要:
对于不同的数据库和应用程序,主键的生成方式往往不同Hibernate的主键生成策略分为3大类:Hibernate对主键id附值,应用程序对主键id附值,由数据库对id附值 1.Hibernate对主键id附值: increment: 插入数据的时候hibernate会给主键添加一个自增的主键,但是一个hibernate实例就维护一个计数器,所以在多个实例运行的时候不能使用这个方法。 这种方式可能产生的问题是:如果当前有多个实例访问同一个数据库,由于各个实例各自维护主键状态,不同实例可能产生同样的主键,从而造成主键重复的异常。因此,如果同 一个数据库有多个实例访问,这种方式应该避... 阅读全文
摘要:
一、JPA通用策略生成器通过annotation来映射hibernate实体的,基于annotation的hibernate主键标识为@Id,其生成规则由@GeneratedValue设定的.这里的@id和@GeneratedValue都是JPA的标准用法,JPA提供四种标准用法,由@GeneratedValue的源代码可以明显看出.Java代码@Target({METHOD,FIELD})@Retention(RUNTIME)public@interfaceGeneratedValue{GenerationTypestrategy()defaultAUTO;Stringgenerator() 阅读全文