今天用Hibernate遇到个问题,果断度娘,谷歌弟用起,哦哦,没有找到一个完全正解,最终经过与博洋教育老师的探讨,摸索出解决方法。
抛出异常hql查询语法错误:Book is not mapped [from Book]
public
static void getlist() {
//配置config
Configuration config=new Configuration()。configure();
//获得sessionFactory,对应一个数据库
SessionFactory sFactory=config.buildSessionFactory();
//这里的session不是web用的session,这里对应表的CRUD操作
//Session
session=sFactory.openSession();没有getcuurentsession强大,但是getcuurentsession需要在hibernate.cfg中配置
Session
session=sFactory.getCurrentSession();
session.beginTransaction();
Query
query=session.createQuery("from com.zhangle.Entity.Book");
//HQL
语句,这里的com.zhangle.Entity.Book是hbm配置文件class的name属性
List
list=query.list();
for(Book
book:list){
System.out.print("isbn:"+book.getIsbn());
System.out.print("name:"+book.getBookname());
System.out.println("date:"+book.getPressdate());
}
session.getTransaction()。commit();
}
配置文件
……
注意上面配置文件class标签的name属性,用HQL语句调用的不是数据库表名,也不是实体类名,而是类的长名,即name属性
博洋教育(http://www.softfz.com/)教师简介:吴慧和,ERP系统设计专家,10年教学经验。
精通VS.net 企业
级开发模式,精通ADO.net,VB.net, Asp.net,C#, VB等.net框架及安装部署。
精通WEB界面设计和规划,精通javascript, css, html,熟悉photoshop熟悉使用各中网页开发工具。
精通ASP编程设计和网站的策划。
熟悉Delphi环境下的C/S模式的开发。
掌握SQL
Server数据库管理。熟悉Oracle数据库,熟悉掌握数据库设计和实现;熟练掌握T-SQL 编程。