2015-07-28 200 views
2
@Entity 
@Table(name="Test") 
public class Test { 

@Column(name="EXRA_INFO",length=200) 
    private String extraInfo; 
******* 
} 

這裏我們僅指定java文件中的列屬性值。無論如何都要從屬性文件中讀取這些屬性值並使其可配置,以便將來如果需要更改長度值,則只會在配置文件中更改它。請幫忙!!從屬性文件中讀取hibernate註釋屬性值

+0

不是一個好的設計,你應該有多少個實體保持。 –

+0

不是太多。但我只想知道我們是否可以做到這一點。請讓我知道是否有辦法 – Sharique

回答

2

AFAIK,您不能將它保留在屬性文件中,因爲註釋屬性必須是編譯時間常量。

但是,您可以將它作爲常量放在Java類中。這樣,當需要更改配置時,只更改該類。事情是這樣的:

Config.java

public class Config { 
    public static final String TEST_TABLE_NAME = "Test"; 
    public static final String TEST_EXTRA_INFO = "EXTRA_INFO"; 
    public static final int STRING_COLUMN_LENGTH = 200; 
} 

Test.java

@Entity 
@Table(name = Config.TEST_TABLE_NAME) 
public class Test { 

@Column(name = Config.TEST_EXTRA_INFO, length = Config.STRING_COLUMN_LENGTH) 
    private String extraInfo; 
}