hibernate HQL添加语句
1.Hibernate HQL添加语句 save();方法
使用HQL语句来完成插入操作是不能实现的,不管你使用insert into....values...还是insert into.....select.....都不行
原因:因为Hibernate的HQL语言是用于面向对象实现查询功能的,
然而在插入操作中是不会牵涉任何查询动作的,所以HQL不能用于insert语句的插入操作,而select、update、delete语句都可以有可能的查询实现,比如:
select语句时标准的查询,这个就不用再说了
update语句:update 对象名 set.....where......
delete:delete from 对象名 where .....
所以,update与delete牵涉到where的查询筛选过程,这个过程是需要采用HQL来实现的,然而insert永远牵涉不到查询筛选过程,所以Hibernate没有对插入做insert实现 2.插入
2.1 springMVC下的hibernate原生sql插入:
@Override
public void register(String userName, String passWord, String email, String address) {
String sql = "insert into user(userName,passWord,email,address)values('"+userName+"','"+passWord+"','"+email+"','"+address+"')";
getSession().createSQLQuery(sql).executeUpdate();
}
3.查询
3.1 springMVC下的hibernate原生sql查询:
@Override
public User checkUsername(String userName){
String sql="select * from user where userName= '"+userName+"'";//注意拼接字符串不能多加空格
User user = (User) getSession().createSQLQuery(sql).addEntity(User.class).uniqueResult();
return user;
}
3.2 springMVC下的hibernatehql查询:
@Override
public User checkUsername(String userName){
//执行hql语言
String hql= "from User u where u.userName=?";
User user = (User) getSession().createQuery(hql).setParameter(0, userName).uniqueResult();
return user;
}
hibernate HQL添加语句的更多相关文章
- Hibernate HQL查询语句总结
Hibernate HQL查询语句总结 1. 实体查询:有关实体查询技术,其实我们在先前已经有多次涉及,比如下面的例子:String hql="from User user ";L ...
- hibernate hql where语句拼接工具类
package com.zhaoshijie.tree.other; /** * hibernate HQL WHERE语句工具类 * * @author 赵士杰 * */public class H ...
- hibernate的hql查询语句总结
这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利. 在这里通过定义了三个类,Special.Classroom.Student来做测试,Special与Classroom是一对多,Class ...
- SSH整合报错:org.hibernate.hql.internal.ast.QuerySyntaxException: User is not mapped[......]
非常诡异的报错,信息如下:org.hibernate.hql.internal.ast.QuerySyntaxException: User is not mapped [select count(* ...
- 第六讲(二) Hibernate HQL查询
HQL查询:Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Lanaguage)查询提供了更加丰富的和灵活的查询特性,因此Hibe ...
- Hibernate HQL查询:
Hibernate HQL查询:Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Lanaguage)查询提供了更加丰富的和灵活的查 ...
- Hibernate执行sql语句
Hibernate执行sql语句:BasicServiceImpl basicServiceImpl = new BasicServiceImpl();String hql = "selec ...
- org.hibernate.hql.QueryExecutionRequestException:org.hibernate.hql.QueryExecutionRequestException: Not supported for DML operations【异常】
springData学习资料 [http://blog.csdn.net/lw_power/article/details/51296353] [JPA报错]org.springframework.w ...
- weblogic10异常:org.hibernate.hql.ast.HqlToken
转自:http://www.programgo.com/article/68682994452/ 在做查询的时候,报出 org.hibernate.QueryException: ClassNotF ...
随机推荐
- init();
<script language="javascript" type="text/javascript">window.onload = funct ...
- git rebase和git merge的用法
http://softlab.sdut.edu.cn/blog/subaochen/2016/01/git-rebase%E5%92%8Cgit-merge%E7%9A%84%E7%94%A8%E6% ...
- Centos-7.4_安装_Redis_4.0.8
一.安装redis 第一步:下载redis安装包 [root@Redis ~]# mkdir /usr/local/redis/ --创建目录 [root@Redis redis]# cd /usr/ ...
- Flask 接入第三方云通讯平台时出现 {‘172001’:’网络错误’}
错误:{‘172001’:’网络错误’},经过上网查找原因,原来是 Python 升级到 2.7.9 之后引入了一个新特性,当打开一个 https 链接时,会验证一次 SSL 证书.而当目标网站使用的 ...
- Python002-操作MSSQL(Microsoft sql server)基础示例(二)
前文http://www.cnblogs.com/fengpingfan/p/7675291.html,讲述了python操作mssql的步骤.环境创建.常用方法等,本文将实例演示python操作ms ...
- Spring Batch(三) Job Launcher、ItemReader、ItemProcessor、ItemWriter各个实现类和用途
内容来自<Spring Batch 批处理框架>,作者:刘相. 1.JobLauncher JobLauncher(作业调度器)是SpringBatch框架提供的运行Job的能力.用过给定 ...
- supervise守护进程
通过二进制supervise文件可以直接对进程进行守护 ./supervise -f 要守护的程序 -p 守护信息存储位置 例如: ./supervise -f http_server -p s ...
- cdh安装spark遇到的几个BUG
spark安装后启动: [zdwy@master spark]$ sbin/start-all.sh starting org.apache.spark.deploy.master.Master, l ...
- Linux之文件权限
在Linux系统中,root用户基本对于每个文件都有可操作性,但是普通用户可能只能查看特定的文件,这是因为文件存在的权限机制,初步掌握文件的基本权限就操作可以对一些系统文件或者自定义文件有一个操作空间 ...
- (转)MERGE语法详解
merge语法是根据源表对目标表进行匹配查询,匹配成功时更新,不成功时插入. 其基本语法规则是 merge into 目标表 a using 源表 b on(a.条件字段1=b.条件字段1 and a ...