ssh 组合键注解方式

需求:将一个servlet+Jsp的项目改成struts2(3.15)+hiberante4+String3(注解方式+tomcat)数据库用sql server 2008项目。

今天搭框架遇到的问题如下:

1.配置注解时,有一个表Examinee 采用 name,classId 两个字段作为主键,其中classId为外键。

   解决方案:建立一个组合类Examineepk。类上注解:@Embeddable 如下

里面只有两个作为主键的字段。并且提供get,set方法 以及重写equals ,hashode,实现Serializable接口。其中因为classId为外键,所以在上面加了外键注解配置。而在类Examinee里面 只要加上 private ExamineePK examineePK; 并在其上加上注解@EmbeddedId

文档中还提供了其他的方法解决组合主键...

2.有一个表采用了上面两个组合主键作为外键,文档提供了解决方法,注意的是 名字要一致。

3.有些表的有些字段需要配置默认的值。如一个字段有个default '' ,注解配置方法:@Column(columnDefinition="varchar(255) default '' ")  需要导入包。

4.sql中字段类型text对应java.lang.String,通过注解无法得到text的类型,暂时采用varchar(5000)代替

5.因为数据库为sql server2008 所以方言要配置成相应的版本(hibernate4 文档中找),否则,有些字段类型无法匹配。

 

 

 

 

posted @ 2014-01-31 17:24  完结。  阅读(392)  评论(0编辑  收藏  举报