我用的数据库是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增删查改语句的更多相关文章

  1. Hibernate修改操作 删除操作 查询操作 增加操作 增删改查 Hibernate增删查改语句

    我用的数据库是MySQL,实体类叫User public class User { private Integer uid; private String username; private Stri ...

  2. SQL增删查改语句

    一.增:有4种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> insert into sheet1 va ...

  3. mysql数据库,数据表,数据的增删查改语句

    查询mysql支持的引擎 show engines; 查询mysql支持的字符集 show character set; 设置mysql默认存储引擎 set default_storage_engin ...

  4. sql基本的增删查改语句

    1.增---用于向表中插入新的行/数据 语法:insert into 表名(值1,值2,值3...) values(值1,值2,值3,...) 或者 语法:insert [into] <表名&g ...

  5. MySQL增删查改语句(入门)

    目录 create alter: insert delete update select 数据库定义语句: create:创建数据库及表对象 drop:删除数据库及表对象 alter:修改数据库及表对 ...

  6. MongoDB在Java下的增删查改

    我们总不能一直使用cmd对数据库操作,数据库总是要在程序中使用的.今天来说一下怎么通过Java调用MongoDB. 学习一下最基本也是最常用的增删查改语句,这是使用数据库的基础. 注意事项: 1.要打 ...

  7. java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)

    1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件  准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...

  8. hibernate基础增删查改简单实例

    hibernate 基础理论知识网上很多,可以百度和google.这里不做多的介绍,以一个User表来开展例子 建一个web-project 我这里用了junit单元测试环境来进行增删查改的测试,别的 ...

  9. 常用SQL语句(增删查改、合并统计、模糊搜索)

    转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html 常用SQL语句 首行当然是最基本的增删查改啦,其中最重要的是查. ...

随机推荐

  1. js字符串格式化扩展方法

    平时使用js的时候会遇到很多需要拼接字符串的时候,如果是遇到双引号和单引号混合使用,经常会搞混.在C#中有string.Format方法,使用起来非常方便,也很容易理解,所以找到一种参考C#的form ...

  2. NPM 使用淘宝镜像

    --registry https://registry.npm.taobao.org

  3. JavaScript高级程序设计-(4) 引用类型

    1.object var person={};//与new Object()相同 一般创建对象 var person=new Object(); person.Name="admin&quo ...

  4. 关于利用bat文件调用exe批量处理文件下的文件的问题

    for %%i in (E:\radar_20120721\sjz_sa\*.bin) do start/wait radas.exe -i=%%i -o=E:\longjiang\out 找到 文件 ...

  5. Servlet读取Excel标准化数据库过程记录

    完成数据库的连接 获取连接参数 拷贝1.数据库URL 2.驱动程序类 3.用户 编写Servlet 1.创建连接对象 Connection con = null; PreparedStatement ...

  6. IDE-Sublime【3】-配置Node.js开发环境

    一.下载Nodejs插件,下载地址为https://github.com/tanepiper/SublimeText-Nodejs,解压到当前文件夹,改名为Nodejs 二.打开Sublime Tex ...

  7. java.lang.NoSuchMethodError: android.view.View.setBackground

    int sdk = android.os.Build.VERSION.SDK_INT; if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) { ...

  8. 对Hibernate的理解

    ---恢复内容开始--- 一.面向对象设计的软件内部运行过程可以理解成就是不断创建各种新对象,建立对象之间的关系,调用对象的方法来改变各个对象的状态和对象消亡的过程.不管程序运行的过程和操作怎么样,本 ...

  9. 6_PHP AJAX MYSQL

    XAMPP套装软件: 包含Apache.MySQL.PHP等多个开源软件的集合. https://www.apachefriends.org/zh_cn/index.html 监听完整相应消息: Wi ...

  10. GOOD MEETINGS CREATE SHARED UNDERSTANDING, NOT BRDS!

      Deliverables and artifacts were a focal point of BA work during the early part of my career. If I ...