Hibernate增删查改语句
我用的数据库是MySQL,实体类叫Product
create table Product (
proId integer not null auto_increment,
proName varchar(50) not null,
proPrice float not null,
proCount integer not null,
proDesc varchar(250) not null,
primary key (proId)
)
1.Hibernate添加数据操作
Product product=new Product();
product.setProName("空调");
product.setProPrice("1888");
product.setProCount("50");
product.setProDesc("变频空调");
Transaction trans = session.beginTransaction();
session.save(product);
trans.commit(); //任何有关数据库更新的操作都是commit后进数据库的
2.Hibernate删除数据操作
对象删除
Transaction trans = session.beginTransaction();
Product pro=new Product();
pro.setProId(8); //用下面那句注释的语句效果也是一样的
// Product pro = (Product)session.get(Product.class, 8);
session.delete(pro);
trans.commit();
注意,只能通过id来删除数据,不能通过title或content来删除,会报缺少标示符错误。
hql语句删除
String hql="from Product where ProId=:id";
Query<Product> query=session.createQuery(hql,Product.class);
query.setParameter("id", 8); //赋值给id主键
List<Product> list=query.getResultList(); //先把数据查出来
pro=list.get(0);
Transaction trans = session.beginTransaction();
session.delete(pro); //执行删除语句
trans.commit();
3.Hibernate查询数据操作
hql查询
String hql="from Product"; Query<Product> query=session.createQuery(hql,Product.class); List<Product> list=query.getResultList();
HQL是Hibernate主推的查询方式,和普通SQL语句也比较接近,但很重要一点不同就是HQL中from后面的是JAVA类名,不是库表名,切忌!!!如果查询全字段 "select *" 可以省略不写。
4.Hibernate修改数据操作
//第二个参数是要修改的主键
Product product=session.get(Product.class,8); product.setProName("空调");
product.setProPrice("1888");
product.setProCount("100");
product.setProDesc("变频空调");
Transaction trans = session.beginTransaction();
session.update(product);
trans.commit();
其实这些事务的开启关闭以及session的关闭都可以交给Spring的声明式事务管理来处理
我就不写的那么详细了
Hibernate增删查改语句的更多相关文章
- Hibernate修改操作 删除操作 查询操作 增加操作 增删改查 Hibernate增删查改语句
我用的数据库是MySQL,实体类叫User public class User { private Integer uid; private String username; private Stri ...
- SQL增删查改语句
一.增:有4种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> insert into sheet1 va ...
- mysql数据库,数据表,数据的增删查改语句
查询mysql支持的引擎 show engines; 查询mysql支持的字符集 show character set; 设置mysql默认存储引擎 set default_storage_engin ...
- sql基本的增删查改语句
1.增---用于向表中插入新的行/数据 语法:insert into 表名(值1,值2,值3...) values(值1,值2,值3,...) 或者 语法:insert [into] <表名&g ...
- MySQL增删查改语句(入门)
目录 create alter: insert delete update select 数据库定义语句: create:创建数据库及表对象 drop:删除数据库及表对象 alter:修改数据库及表对 ...
- MongoDB在Java下的增删查改
我们总不能一直使用cmd对数据库操作,数据库总是要在程序中使用的.今天来说一下怎么通过Java调用MongoDB. 学习一下最基本也是最常用的增删查改语句,这是使用数据库的基础. 注意事项: 1.要打 ...
- java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)
1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件 准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...
- hibernate基础增删查改简单实例
hibernate 基础理论知识网上很多,可以百度和google.这里不做多的介绍,以一个User表来开展例子 建一个web-project 我这里用了junit单元测试环境来进行增删查改的测试,别的 ...
- 常用SQL语句(增删查改、合并统计、模糊搜索)
转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html 常用SQL语句 首行当然是最基本的增删查改啦,其中最重要的是查. ...
随机推荐
- Xcode8控制台乱码的解决方式
Xcode8里边 Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加 OS_ACTIVITY_MODE = Disable ...
- openfl使用64位的ndk时,编译报错的问题!
当使用64位的ndk时,如果使用openfl test android运行android测试,应该会出现 arm-linux-androideabi-g++:找不到这个命令的错误. 原因是,haxel ...
- WPF中获取鼠标相对于桌面位置
var transform = PresentationSource.FromVisual(this).CompositionTarget.TransformFromDevice; var mouse ...
- bzoj 3202: [Sdoi2013]项链
Description 项链是人体的装饰品之一,是最早出现的首饰.项链除了具有装饰功能之外,有些项 链还具有特殊显示作用,如天主教徒的十字架链和佛教徒的念珠. 从古至今人们为了美化人体本身,也美 化环 ...
- js禁用右键菜单、选中、复制、剪切、粘贴
//屏蔽右键菜单 document.oncontextmenu = function (event) { if (window.event) { event = window.event; } try ...
- Linux查看系统状态命令
Linux查看系统状态命令 iostat iostat 命令详细地显示了存储子系统方面的情况.你通常用iostat来监控存储子系统总体上运行状况如何,并且在用户注意到服务器运行缓慢之前提早 ...
- nodejs的实现原理和搭建服务器(动态)
心得体会 今天是我学习的Node.js的第二天,所谓的node.js其实它是javascript编写的服务器的语言,同时它又是属于后台的框架,是一个开放性的平台. 一.相关理论知识: 我们可以用 ...
- @autowired和@resource的区别
@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按 byName自 动注入罢了.@Resource有两个属性是比较重要的, ...
- tab22
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- TCP和UDP的区别
(1)TCP是面向连接的传输控制协议,而UDP提供了无连接的数据报服务:(2)TCP具有高可靠性,确保传输数据的正确性,不出现丢失或乱序:UDP在传输数据前不建立连接,不对数据报进行检查与修改,无须等 ...