@Entity
@Table(name = "ARTIKEL")
@org.hibernate.annotations.Table(appliesTo = "ARTIKEL")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Item {
。数据库是遗留系统,大小写敏感的不能更改,但是Hibernate映射后表名ARTIKEL变成了artikel,造成表找不到,请问如何更改Hibernate参数,使其大小写敏感!!!! 

解决方案 »

  1.   

    Hibernate应该不会将表名变小写的,你打开Hibernate的show_sql看看。确认是否变小写了
      

  2.   

    ---------------------------------------
    已经解决,解决方法:
    http://www.kuqin.com/java/20080821/14649.html
    Hibernate注释下的自定义架构实现
    扩展org.hibernate.cfg.ImprovedNamingStrategy 命名策略,然后在配置文件中指向自己的命名配置文件即可
    public class MPSNamingStrategy extends ImprovedNamingStrategy {/**
    *
    */
    private static final long serialVersionUID = 1L;@Override
    public String columnName(String columnName) {return addUnderscores(columnName).toUpperCase();
    }@Override
    public String tableName(String tableName) {return addUnderscores(tableName).toUpperCase();
    }@Override
    public String propertyToColumnName(String propertyName) {return addUnderscores(propertyName).toUpperCase();
    }}