org.hibernate.hql.internal.ast.QuerySyntaxException 异常处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lazycheerup/article/details/88032540

一.概述

        1.1 场景:

         在写Repository类的时候,写自定义的@Query语句的时候,报错如下:

org.hibernate.hql.internal.ast.QuerySyntaxException

        1.2 备注:

  • select from后跟的不是表名,是Entity对象名

  • 如果为Entitiy对象设置了name为“NetPool”,则Entitty对象名就是name后的名字;

  • 如果没有设置name,默认使用public class后的“NetPoolE”类名。

  • where后的对象别名 . 属性名,这里的属性名不是@Cloumn(name="")的name的名字。而是当前Entity对象的property,也就是private Integer vlanNO中的vlanNO。

二.参考实体

@Entity(name = "NetPool")  
public class NetPoolE {  
    /** 
     * 主键 网络池Id 
     * (底层cloudVM中网络池Id) 
     */  
    @Id  
    @Column(name="netPoolId")  
    private String netPoolId;  
   /* @Id 
    @GeneratedValue(generator = "uuid") 
    @GenericGenerator(name = "uuid", strategy = "uuid") 
    @Column(name = "netPoolId") 
    private String netPoolId;*/  
      
  
    /** 
     * 网络名称 
     */  
    @Column(name = "netName", length = 255)  
    private String netName;  
    /** 
     * vlan号 
     */  
    @Column(name = "vlanNo")  
    private Integer vlanNO;  
  
    /** 
     * 网关 
     */  
    @Column(name = "gateway", length = 255)  
    private String gateway;  
  
    /** 
     * 子网 
     */  
    @Column(name = "subNet", length = 255)  
    private String subNet;  
  
    /** 
     * dns 
     */  
    @Column(name = "dns", length = 255)  
    private String dns;  
  
    /** 
     * 同步时间 
     */  
    private Date synDate;  
  
    /** 
     * 是否可用 
     */  
    private Boolean isAvl;  
  
    /** 
     * 组织Id 
     */  
    private String orgId;  
      
      
    /** 
     * 连接信息 
     */  
    @Column(length = 500)  
    private String configId;  
  
   /***此处省略很多setget器*****/  
  
}  

猜你喜欢

转载自blog.csdn.net/lazycheerup/article/details/88032540
今日推荐