zoukankan      html  css  js  c++  java
  • org.hibernate.hql.internal.ast.QuerySyntaxException: *** is not mapped [from <model_name>]

    @PersistenceContext
        private EntityManager entityManager;
    
        public List<User> findAll() {
            Query query = entityManager.createQuery("from User");
            return query.getResultList();
        }
    

    在执行上面代码时抛出了标题的错误,在网上搜了半个小时,终于还是stackoverflow上找到了结果,国内的教程99%都指向一个问题,hql语句中表名写错了,应该是定义的Entity名字,而非数据库中的名字。
    当然,如果这样确实会抛出这个错误,可我没写错,就是实体类的名字,所以只能继续搜。
    最后发现是因为我的项目是聚合项目,实体类与实际使用的业务类不在同一项目内,所以springboot没有扫描到定义类,找不到类所以抛出这个问题,知道问题就知道如何解决,在业务类所在项目的启动类中,加上如下代码:
    @EntityScan(basePackages = "com.heping.Entity")
    指定Entity类所在的包名,这样即可
    stackoverflow地址
    最后附上测试代码github地址
    github

  • 相关阅读:
    Google基本利用
    sqlmap
    kali中wireshark打开后错误
    Python Flask Jinja2模板引擎
    Python Flask学习
    Python 豆瓣日记爬取
    Python 函数装饰器
    Python 生成器
    ss源码学习--从协议建立到完成一次代理请求
    ss源码学习--工作流程
  • 原文地址:https://www.cnblogs.com/daner1257/p/13259265.html
Copyright © 2011-2022 走看看