关于hibernate框架的 session.createQuery ()方法

老师给我们一段代码org.hibernate.Queryqry=session.createQuery("fromCustomer");在eclipse里建了一个clas... 老师给我们一段代码 org.hibernate.Query qry = session.createQuery("from Customer");
在eclipse里建了一个class提示session不识别 而在JSP里显示session里没有createQuery()方法 .这个方法是在某个包里的吗 包名是什么呢。
还是就是关于配置文件的写法
<mappingresource="cn/edu/zucc/firsthibernate/Customer.hbm.xml"/>
这句配置要插在什么内容里的 实验要求是
在hibernate.cfg.xml文件中增加对该配置文件的引用
展开
 我来答
wskongc
2013-05-11 · TA获得超过154个赞
知道答主
回答量:32
采纳率:0%
帮助的人:6.3万
展开全部
session.createQuery 中的session指的是hibernate jar包里的org.hibernate.Session,作用类似jdbc的connection,用于事务管理,jsp里的session是会话内置对象,两个session没有关系。Customer.hbm.xml用于建立实体类和数据库关系表映射关系,也就是在你的实体类(名字应该是Customer)和数据库关系表名字可能是customer建立一一对应的关系,这样hibernate对实体类对象增删改查也就是对数据库对应表的增删改查。为了让hibernate知道你的Customer实体类和数据库的关系表customer有Customer.hbm.xml这种关系,必须在hibernate配置文件hibernate.cfg.xml里通过<mapping resource="cn/edu/zucc/firsthibernate/Customer.hbm.xml"/>这句话将Customer.hbm.xml引入。这句话通常放在标签<session-factory></session-factory>里面的最后。
至于hibernate的用法你可以查看jar包自带的api文档,在doc\api\index.html里面
追问
我根据你写的引用了org.hibernate.Session   创建了session对象Session session =  null;    可是运行返回的结果提示空值错误,在网上看了下  改成了Session session = HibernateSessionFactory.getSession();  然后就是提示  HibernateSessionFactory 不能被解析。具体的代码要怎么使用呢
追答
/*
你这个问题可能出在:1、hibernate jar包是不是导入了;
2、数据库连接是否正确,配置文件里方言、驱动、url、
username、password是否正确,数据库服务是否启动;
3、hibernate.cfg.xml 格式是否正确;
*/

public void hibernatetest(){
/*操作数据库步骤如下:
@加载hibernate配置文件
* @2:需要建立sessionFactory
* @3:通过工厂创建session
* @4:通过session去操作对象
*/

//加载hibernate.cfg.xml配置文件
Configuration cfg=new Configuration().configure();
//建立sessionFactory工厂
SessionFactory factory=cfg.buildSessionFactory();
//获取Session
Session session=factory.openSession();
/*if(session!=null)
{
System.out.println("获取session成功");
}
else {
System.out.println("获取session失败");
}*/

Customer c=new Customer();
//根据customer类 具体set
c.setId(1);
c.setUsername("admin");

//创建一个事务
Transaction tx=null;

try {

//开启事务
tx=session.beginTransaction();
session.save(c);
tx.commit();
System.out.println("用客户保存成功!");
} catch (Exception e) {
// TODO: handle exception
tx.rollback();
e.printStackTrace();
}
finally
{
session.close();
}
}
正定残疾人Cec5c
2013-05-11 · TA获得超过423个赞
知道小有建树答主
回答量:234
采纳率:0%
帮助的人:267万
展开全部
hibernate框架的session是org.hibernate.Session;
jsp内置对象session是javax.servlet.http.HttpSession;
两个根本不是同一个东西啊骚年,你要学的还有很多嘞!
hibernate.cfg.xml怎么配置你可以参考这个:
http://www.cnblogs.com/jqyp/archive/2010/06/28/1766851.html
多的就不说了。
追问
我根据你写的引用了org.hibernate.Session   创建了session对象Session session =  null;   
可是运行返回的结果提示空值错误,在网上看了下 改成了Session session =
HibernateSessionFactory.getSession(); 然后就是提示 HibernateSessionFactory 不能被解析。具体的代码要怎么使用呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4465412
2013-05-11 · TA获得超过184个赞
知道小有建树答主
回答量:562
采纳率:0%
帮助的人:377万
展开全部
org.hibernate.Session不是web的session
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式