hibernate查询语句怎么写

1. hibernate 查询语句

因为hibernate是封装了JDBC的框架。

文中第一句:String queryString ="from *****";我想楼主应该知道这是HQL语句,TbArea 是你在hibertate 配置文件中定义的名称.propertyName + "= ?";是属性名

这句话可以看做正常的sql语句是

select * from TbArea as a where a.属性名 = 你在程序中传过来的参数;

第二句:

Query queryObject = getSession().createQuery(queryString);

是hibernate里面封装好的方法,取得你session对象,并创建Query对象。。该对象在Hibernate中你可以了解为jdbc的statement对象.

queryString就是你执行的sql语句.

第三句:

queryObject.setParameter(0, value);

queryObject我想楼主不是很熟练JDBC吧。这个对象基本和statement相似.这种写法是最常用的,优点我不太记得。

setParameter也就是设置你第一句HQL语句中的问号。设置参数.value为你方法中传进来的参数

return queryObject.list();返回查询到的多行数据,做为列表形式返回。

2. hibernate添加语句怎么写

不是有映射文件吗?

比如你的数据库表为student

那么的你就应该有hibernate.cfg.xml配置文件和他的映射文件hibernate.hbm.xml,最后还应该有一个student表的映射类student.java

这3个文件.

然后你建一个实现类studentInsert

实现是

SessionFactory sf = new Configuration().configure().buildSessionFactory();

Session session = sf.openSession();

Transaction tx = session.beginTransaction();

student st=new student();

st.setId("0001");

st.setUserName("Wang");

st.setpassWord("123");

session.save(st);

tx.commit();

session.close();

就是这样.

3. java连接mysql 用hibernate怎么写查询语句

第一种方式:HQL(Hibernate Query Languge,Hibernate 查询语言)查询是一种面向对象的查询语言,其中没有表和字段的概念,只有类、对象和属性的概念,HQL 是应用较为广泛的方式语法:[select/update/delete……] from Entity [where……] [group by……] [having……] [order by……](1).没使用Spring框架的写法:使用HQL需要四步得到Session、编写HQL语句、创建Query对象(Query接口是HQL 查询接口。

它提供了各种的查询功能)、执行查询,得到结果 sessionFactory = new Configuration().configure().buildSessionFactory(); session = sessionFactory.openSession(); String hql = “from Street”; Query query = session.createQuery(hql); List list = query.list();(2).使用Spring框架的写法:String queryString = "select form entity 。.";List list=getHibernateTemplate().find(queryString);第二种方式:Criteria 查询Criteria 查询采用面向对象方式封装查询条件,又称为对象查询;就是对SQL 语句进行封装,采用对象的方式来组合各种查询条件由Hibernate 自动产生SQL 查询语句(1).没使用Spring框架的写法;Criteria由Hibernate Session进行创建SessionFactory sessionFactory = new Configuration().configure() .buildSessionFactory(); Session session = sessionFactory.openSession(); Criteria criteria = session.createCriteria(User.class); List result = criteria.list(); Iterator it = result.iterator(); (2)使用Spring框架的写法:import org.hibernate.criterion.DetachedCriteria;DetachedCriteria criteria=DetachedCriteria.forClass(ObjectEntity.class);criteria.add(Restrictions.eq("propertyName", propertyValue));List result=getHibernateTemplate().findByCriteria(criteria);第三种方式:使用SQL语句查询(以下都是使用了Spring框架的写法)1).这是把执行结果放到了一个类里:(这个类通常使用VO实体,VO实体一般就只用来接收查询结果)List list = getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { StringBuffer hqlBuffer = new StringBuffer(""); hqlBuffer.append("select column_Name from 。

");//里面是SQL语句 SQLQuery sqlQuery = session.createSQLQuery(hqlBuffer.toString()); sqlQuery.addScalar("propertyName",Hibernate.STRING);//该propertyName是 ObjectVO实体的一个属性 sqlQuery.setResultTransformer(Transformers.aliasToBean(ObjectVO.class)); List list = sqlQuery.list(); return list;//此处list集合中存放的是ObjectVO对象 } });2).返回结果放到list中的: final String queryString = "";//sql语句 List resultList=getHibernateTemplate().executeFind(new HibernateCallback() { public List doInHibernate(Session session) throws HibernateException, SQLException { SQLQuery sqlQuery = session.createSQLQuery(queryString); List list=sqlQuery.executeUpdate(); return list; } });3).无返回结果: final String queryString = "";//SQL语句 getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { SQLQuery sqlQuery = session.createSQLQuery(queryString); sqlQuery.executeUpdate(); return null; } });。

4. hibernate查询语言

1 .from 1.1单表查询 from eg.cat as cat.其中,cat只是一个别名,为了用其他子语句的时候书写简单 1.2多表查询 from eg.Cat,eg.Dog from eg.Cat as cat,eg.Dog as dog 2 join相关 (inner) join left (outer) join right (outer) join full join HQL同样对SQL中的这些特性支持 下面插播一个小话题,关于上边的那些特性,我一直都没怎么用,今天既然说到这里,就想 把上边的几个特性的用法说一下,也算对自己的一个补充: 假设有两个表:部门、员工,下面列举一些数据: 员工(Employee): ID Name DepNo 001 Jplateau 01 002 Jony 01 003 Camel 02 部门(Department): ID Name 01 研发部 02 营销部 在Hibernate中我们操纵的都是对象,所以我们操纵的是部门类和员工类 1).(inner) join select employee.ID as id1,employee.Name as name1,department.ID as id2,department.Name as name2 from Employee as employee join Department as department on employee.DepNo= department.ID (注意到条件语句我用on 没有用where) 那么执行结果是什么呢? id1 name1 id2 name2 ++++++++++++++++++++++++++++++++++++++ 001 Jplateau 01 研发部 002 Jony 01 研发部 2).left (outer) join select employee.ID as id1,employee.Name as name1,department.ID as id2,department.Name as name2 from Employee as employee left join Department as department on employee.DepNo= department.ID 那么执行结果又该是什么呢? id1 name1 id2 name2 ++++++++++++++++++++++++++++++++++++++ 001 Jplateau 01 研发部 002 Jony 01 研发部 003 Camel null null {就是说此时我要已第一个表的记录多少为准,第二个表中没有相应纪录的时候填充null} 3). right (outer) join select employee.ID as id1,employee.Name as name1,department.ID as id2,department.Name as name2 from Employee as employee right join Department as department on employee.DepNo= department.ID 那么执行结果又该是什么呢? id1 name1 id2 name2 ++++++++++++++++++++++++++++++++++++++ 001 Jplateau 01 研发部 002 Jony 01 研发部 null null 02 营销部 {就是说此时我要已第二个表的记录多少为准,第一个表中没有相应纪录的时候填充null} 3 大小写敏感 4。

select语句 就是要确定你要从查询中返回哪些对象或者哪些对象的属性。写几个例子吧: select employee form Employee as employee select employee form Employee as employee where employee.Name like 'J%' select employee.Name form Employee as employee where employee.Name like 'J%' select employee.ID as id1,employee.Name as name1,department.ID as id2,department.Name as name2 from Employee as employee right join Department as department on employee.DepNo= department.ID select elements(employee.Name) from Employee as employee (不明白elements到底是做什么用的?望给于说明) 等等 5。

数学函数 JDO目前好像还不支持此类特性。 avg(。

), sum(。), min(。

), max(。) count(*) count(。

), count(distinct 。), count(all。

) 其用法和SQL基本相同 select distinct employee.name from Employee as employee select count(distinct employee.name),count(employee) from Employee as employee 6。polymorphism (暂时不知道如何解释?) from com.test.Animal as animal 不光得到所有Animal得实例,而且可以得到所有Animal的子类(如果我们定义了一个子类Cat) 一个比较极端的例子 from java.lang.Object as o 可以得到所有持久类的实例 7。

where语句 定义查询语句的条件,举几个例子吧: from Employee as employee where employee.Name='Jplateau' from Employee as employee where employee.Name like 'J%' from Employee as employee where employee.Name like '%u' 在where语句中“=”不光可以比较对象的属性,也可以比较对象,如: select animal from com.test.Animal as animal where animal.name=dog 8。表达式 在SQL语句中大部分的表达式在HQL中都可以使用: mathematical operators +, -, *, / binary comparison operators =, >=, <=, <>, !=, like logical operations and, or, not string concatenation || SQL scalar functions like upper() and lower() Parentheses ( ) indicate grouping in, between, is null JDBC IN parameters ? named parameters :name, :start_date, :x1 (这种应该是另一种"?"的变通解决方法) SQL literals 'foo', 69, '1970-01-01 10:00:01.0' Java public static final constants eg.Color.TABBY 其他不必解释了,在这里我只想对查询中的参数问题说明一下: 大家知道在SQL中进行传递参数进行查询的时候,我们通常用PreparedStatement,在语句中写一大堆的“?”, 在hql中也可以用这种方法,如: List mates = sess.find( "select employee.name from Employee as employee " + "where employee.Name=? ", name, Hibernate.STRING ); (说明:上面利用Session里的find方法,在hibernate的api Session中重载了很多find方法,它可以满。

转载请注明出处育才学习网 » hibernate查询语句怎么写

知识

英语月亮怎么写

阅读(195)

本文主要为您介绍英语月亮怎么写,内容包括月亮的英语怎么写,月亮的英语怎么写,星星和月亮的英语怎么写。During the summer vacation, my aunt in the country with the Qiandao

知识

贫困证明怎么写学生

阅读(194)

本文主要为您介绍贫困证明怎么写学生,内容包括学生贫困证明该怎么写,学生贫困证明怎么写,贫困户证明书怎么写。贫困证明范文兹有XXX,(介绍你家的的困难,这个你自己写,如果不会写你吧你家情况和我仔细说说,我帮你写)(要以他们口吻写,因为是他们给你

知识

繁体字福怎么写

阅读(1728)

本文主要为您介绍繁体字福怎么写,内容包括繁体字福怎么写,“福”字的繁体怎么写,福字的繁体字怎么写。福的繁体字写法是福,“福”字的正体(繁体)写法和简化(简体)写法是完全一样的。早在三千多年前的商周青铜器铭文上,即已有不同结构的“福”字

知识

化验单怎么写

阅读(198)

本文主要为您介绍化验单怎么写,内容包括化验单上写的什么字,编讲故事《化验单》,医生给写的化验单,这写的都是什么谁能详细说一下。一张化验单 赵二是远近闻名的种粮大户,眼下正是春播大忙季节,可是最近几天,突然感到腹胀背痛。壮得像头牛、从

知识

工会总结怎么写

阅读(150)

本文主要为您介绍工会总结怎么写,内容包括参加工会的活动的工作总结怎么写,求一篇工会总结,工会工作总结。xxxx2009年工会工作总结 一年来,xxxx工会工作在区总工会的领导下,在XX党委政府的关心和支持下,紧紧围绕XX党委、政府的“和谐

知识

李字古代怎么写

阅读(300)

本文主要为您介绍李字古代怎么写,内容包括《李》字在古代是怎么写的,古代的李字怎么写,“李”字在古代如何解释。“李”字的本义是“李树、李子”,下面是《康熙字典》”李“字有7个解释: 1.《说文》果名。《素问》东方木也。《尔雅翼》李,木之

知识

怎么写月亮开头

阅读(220)

本文主要为您介绍怎么写月亮开头,内容包括描写月亮的开头和结尾,仿照下面例句的修辞手法,以“月亮”开头写一段话.例句:海在我们,就是抒情,写月亮的古往今来,多少文人墨客我只想了开头,。茫茫夜空,满天繁星像洒在碧玉盘里的珍珠。星星眨着眼

知识

初中怎么写英语作文

阅读(188)

本文主要为您介绍初中怎么写英语作文,内容包括怎样写好一篇初中英语作文,有什么好方法,初中英语作文怎么写,初中英语作文怎么写。如果给了中文意思就逐句翻译,给了中文或英文关键词就自己编,有给表格或信息的就按这些写.题目中给出的一切信息

知识

英文自信怎么写

阅读(161)

本文主要为您介绍英文自信怎么写,内容包括自信,用英文怎么写,用英语写的有关自信的短文,,保持自信英文怎么写,。把下面的翻译成英文就行了. 英语学习中有很多的因素,但我想一个学生自信心的树立对于其英语学习有着不可忽视的影响.心理学研究

知识

英语放学后怎么写

阅读(186)

本文主要为您介绍英语放学后怎么写,内容包括英语中放学后怎写,英语单词:放学后.怎么写,放学后的英语单词怎么写。放学后: after schoolExamples:1. 放学后直接回家。Come straight away after school

知识

老师让的优点怎么写

阅读(344)

本文主要为您介绍老师让的优点怎么写,内容包括老师的优点开头怎么写,怎样写自己的优点让老师评价,学校老师让写特长优点怎么写(我是八升九的学生)。词语:认真细致,有吸引力,能抓住重点,积极提问,引起学生兴趣。句子:春蚕到死丝方尽个,蜡炬成灰泪始干

知识

创业的设想怎么写

阅读(231)

本文主要为您介绍创业的设想怎么写,内容包括创业设想怎么写,创业设想怎么写,创业设想方案怎么写。论文范文:更多论文详见教育界杂志社官网或者原上草论文网! 现阶段,大学生就业难已经成为一种普遍的社会现象,而鼓励大学生进行创业, “以创

知识

四线三格的f怎么写

阅读(683)

本文主要为您介绍四线三格的f怎么写,内容包括拼音f的四线三格怎么写,开头是f的单词在四线三格中怎么写,开头是f的单词在四线三格中怎么写。英语小写字母”f“占四线三格的“上中下”格。中文拼音的写法是占“上中”两格。f,英语字母表中的第

知识

沉的繁体字怎么写的

阅读(261)

本文主要为您介绍沉的繁体字怎么写的,内容包括沉的繁体字怎么写的,沉的繁体字怎么写,沉的繁体字怎么写。

知识

js怎么写判断语句

阅读(157)

本文主要为您介绍js怎么写判断语句,内容包括js里怎么写判断,JS判断语句,求一段能写在HTML中的JS语句,要求如下判断文字,如,文字为“。4、字符类<br> 4.1 判断字符全部由a-Z或者是A-Z的字字母组成<br> <input onblur="if(/[^a-zA-Z

知识

数据库中语句怎么写

阅读(163)

本文主要为您介绍数据库中语句怎么写,内容包括关于数据库的语句该怎样写·,在数据库里面插入数据的语句怎么写,关于数据库的语句该怎样写·。create table student( sno char(5) primary key, sname varchar(20),

知识

sql的更新语句怎么写

阅读(218)

本文主要为您介绍sql的更新语句怎么写,内容包括sql查询更新语句怎么写,SQL的update语句怎么写,SQL里面的UPDATE更新语句数据怎么写。首先需要打开sql server 数据库。

知识

oracle的循环语句怎么写

阅读(159)

本文主要为您介绍oracle的循环语句怎么写,内容包括请问这个oracle的for循环语句怎么写,请问这个oracle的for循环语句怎么写,请教大神,oracle数据库循环语句怎么写。create table temp_tab( id number primary key not null, name varchar2

知识

phpsql语句怎么写

阅读(245)

本文主要为您介绍phpsql语句怎么写,内容包括phpsql语句的写法,,[php]两个SQL语句怎么写,php中写sql语句。二者的语法扩展稍微有些差异,但基本格式是一样的,比如插入:insert tabname(field1, field2, field3)

知识

hibernatehql语句怎么写

阅读(172)

本文主要为您介绍hibernatehql语句怎么写,内容包括hibernate,一对多,这种hql语句怎么写,用hibernate的HQL怎么写一个插入语句,hibernatehql语句。不是有映射文件吗?比如你的数据库表为student那么的你就应该有hibernate.cfg.xml配置文件和他

知识

hibernate的hql语句怎么写

阅读(189)

本文主要为您介绍hibernate的hql语句怎么写,内容包括用hibernate的HQL怎么写一个插入语句,用hibernate的HQL怎么写一个插入语句,hibernate,一对多,这种hql语句怎么写。不是有映射文件吗?比如你的数据库表为student那么的你就应该有hibernate

知识

mysql中if语句怎么写

阅读(182)

本文主要为您介绍mysql中if语句怎么写,内容包括mysqlif语句怎么写,mysqlif控制语句怎么写,mysqlif控制语句怎么写。mysql手册中如是说:IF(expr1,expr2,expr3) 如果 expr1 为真(expr1 0 以及 expr1 NULL)

[/e:loop]