1.检查自己写的hql语句是否使用了数据库的表名而不是实体类的类名,比如数据库表为user_tb,而对应的pojo类为UserTb,hql是"from user_tb where xx=xx",如果是这样,将user_tb改为UserTb就可以了。有条件的话也是一样的,请使用类属性名而不是表名。除非你在pojo中显式通过Entity(name=xxx)声明,否则hql默认使用类名。
2.检查是否有将LampInfo.hbm.xml加入配置文件,这点是网上看来的,不知道真假。
3.这点是今天下午一个同事遇到的。他在写hibernate的SessionFactory的配置的时候,
本应配置注解扫描的包:<property name="packagesToScan" values="POJO的包名"/>,但他少写了这句,项目执行的时候也报了xxx is not mapped的异常。
因此如果前面两条原因都排查了,可以回头好好看看自己写的配置文件,是不是有什么需要扫描的包的属性没在SessionFactory的配置里面。