实体类中的Setter方法

时间:2016-03-02 00:31:37

标签: java hibernate jpa

@Entity
@Table
public class Page {

    ...

    private String URL;

    public void setURL(String URL) {
         this.URL = URL; 
    }

   public String getURL() {
       return URL
   }
}

URL映射到表中的一个字段。我在setURL()方法中设置了一个断点,但程序在调试时没有中断;然后我将断点更改为getURL()方法,触发了断点。

这是否意味着根本不使用或触发setURL方法?前视图不接受用户输入的URL值,并从数据库中检索URL。如果是这种情况,我是否需要setURL()方法?

2 个答案:

答案 0 :(得分:0)

如果该字段实际已设置但您无法在调试中捕获它,则可能是因为它是通过反射设置而不是使用setter。

答案 1 :(得分:0)

JPA允许您将访问类型定义为字段或属性。默认情况下,这是根据MATCH (u),(p) WHERE size((u)-[:LINKS]->(p)) < {x} WITH u,p LIMIT 10000 WHERE rand() < 0.2 // LIMIT to 10000 then sample CREATE (u)-[:LINKS]->(p) 注释是放在字段还是放置器上设置的。

如果访问类型是字段,则JPA实现将使用反射直接使用字段,即使它们是@Id

更多阅读: Other AnswerJPA Access Type