美文网首页
JPA视图映射以及防止对视图进行UPDATE

JPA视图映射以及防止对视图进行UPDATE

作者: DimonHo | 来源:发表于2019-01-20 16:34 被阅读13次

    网络上一般有两种方法对视图进行映射。
    第一种:使用@Subselect注解实现,没使用过,暂不发表评论
    第二种:手动在数据库创建view,在代码中和映射表一样映射视图。
    如下:

    
    import lombok.Data;
    import lombok.experimental.Accessors;
    import org.hibernate.annotations.Immutable;
    
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.Id;
    import javax.persistence.Table;
    import java.util.Date;
    /**
     * v_literature视图
     */
    @Data
    @Accessors(chain = true)
    @Immutable
    @Entity
    @Table(name = "v_literature")
    public class VLiterature {
        @Id
        private Long id;
    
        private String author;
    
        private String year;
    
        private String summary;
    
        private Date gmtModified;
    
        private Date gmtCreate;
    }
    

    注意@Immutable注解,当我们查询完视图后如果对视图类进行set操作,可能会自动生成一个update语句对视图进行更新操作而报错。


    加上这个注解,表示该entity只读,就不会再自动生成update了。

    相关文章

      网友评论

          本文标题:JPA视图映射以及防止对视图进行UPDATE

          本文链接:https://www.haomeiwen.com/subject/xxgxjqtx.html