我用的数据库是MySQL,实体类叫User

public class User {
private Integer uid;
private String username;
private String password;
private Integer age;
private String gender;
private String phoneNumber;
}

1.Hibernate添加数据操作

       // 操作流程:
// 1.通过session启动事务
Transaction transaction = session.beginTransaction();
// 2.执行添加操作
User user = new User("艾格尼丝","女","18977783654");
Serializable save = session.save(user);
System.out.println("save: " + save);
// 3.提交或回滚事务
transaction.commit();

2.Hibernate删除数据操作

        Transaction transaction = session.beginTransaction();
// 1.先从数据库查出来需要删除的对象
User user = session.get(User.class,3);
// 2.再进行删除
session.delete(user);
transaction.commit();

3.Hibernate修改数据操作

        Transaction transaction = session.beginTransaction();
// 1.从数据库中获取需要修改的对象
User user =session.get(User.class, 3);
// 2.对该对象中的数据进行修改
user.setUsername("李小龙");
// 3.将修改后的对象更新到数据库中
session.update(user);
transaction.commit();

4.Hibernate查询数据操作

        Transaction transaction = session.beginTransaction();
//根据用户编号进行查询
User user = session.get(User.class, 3);
System.out.println(user.getUsername());
transaction.commit();

5.Hibernate增删改查全部的代码文件

package com.bj186.test;

import com.bj186.entity.User;
import com.bj186.util.HibernateUtil;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.Before;
import org.junit.Test;
import java.io.Serializable; public class TestUser { private Session session = null;
  
@Before
public void init() {
//1. 声明配置对象,加载配置文件
Configuration configuration = new Configuration();
configuration.configure("hibernate.cfg.xml");
//2. 将配置文件告诉session工厂
SessionFactory sessionFactory = configuration.buildSessionFactory();
//3. 通过session Factory来获取session
session = sessionFactory.openSession();
} /**
* 向数据库中添加一条记录
*/
@Test
public void testAdd() {
// 操作流程:
// 1.通过session启动事务
Transaction transaction = session.beginTransaction();
// 2.执行持久化操作
User user = new User("艾格尼丝","女","18977783654");
Serializable save = session.save(user);
System.out.println("save: " + save);
// 3.提交或回滚事务
transaction.commit();
} /**
* 从数据库中删除一条记录
*/
@Test
public void testDelete() {
Transaction transaction = session.beginTransaction();
// String sql = "delete from User where uid = :uid"; //第二种删除方式
// Query query = session.createQuery(sql);
// query.setParameter("uid",1);
// query.executeUpdate();
//先从数据库查出来对象
User user = session.get(User.class,3);
//再进行删除
session.delete(user);
transaction.commit();
} /**
* 测试修改数据
*/
@Test
public void testUpdate() {
Transaction transaction = session.beginTransaction();
// 1.从数据库中获取需要修改的对象
User user =session.get(User.class, 3);
// 2.对该对象中的数据进行修改
user.setUsername("李小龙");
// 3.将修改后的对象更新到数据库中
session.update(user);
transaction.commit();
} /**
* 测试查询数据
*/
@Test
public void testQuery() {
Transaction transaction = session.beginTransaction();
//根据用户编号进行查询
User user = session.get(User.class, 3);
System.out.println(user.getUsername());
transaction.commit();
} }

Hibernate修改操作 删除操作 查询操作 增加操作 增删改查 Hibernate增删查改语句的更多相关文章

  1. MySQL数据库表的数据插入、修改、删除、查询操作及实例应用

    一.MySQL数据库表的数据插入.修改.删除和查询 CREATE DATABASE db0504; USE db0504; CREATE TABLE student ( sno ) NOT NULL ...

  2. 关于C#和ASP.NET中对App.config和Web.config文件里的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作

    最近我做的一些项目,经常需要用到对应用程序的配置文件操作,如app.config和web.config的配置文件,特别是对配置文件中的[appSettings]和[connectionStrings] ...

  3. vs2017 + miniUI + dapper 添加、修改、删除、查询操作

    A.数据库表引用先前建立的company 公司信息表. B.建立文件: views > Home > Company.cshtml(新建文件) ,代码如下(直接复制即可) @{ Layou ...

  4. Es图形化软件使用之ElasticSearch-head、Kibana,Elasticsearch之-倒排索引操作、映射管理、文档增删改查

    今日内容概要 ElasticSearch之-ElasticSearch-head ElasticSearch之-安装Kibana Elasticsearch之-倒排索引 Elasticsearch之- ...

  5. Jquery EasyUI的添加,修改,删除,查询等基本操作介绍

    http://www.jb51.net/article/42016.htm 初识Jquery EasyUI看了一些博主用其开发出来的项目,页面很炫,感觉功能挺强大,效果也挺不错,最近一直想系统学习一套 ...

  6. Python--day42--mysql操作数据库及数据表和基本增删改查

    sql语法规则: 一.操作文件夹 1.创建数据库db2:create database db2; 2.创建数据库db2并标明数据库的编码格式为utf8:create database db2 defa ...

  7. python全栈开发day61-django简单的出版社网站展示,添加,删除,编辑(单表的增删改查)

    day61 django内容回顾: 1. 下载: pip install django==1.11.14 pip install -i 源 django==1.11.14 pycharm 2. 创建项 ...

  8. Elasticsearch学习笔记(十)批量查询mget、批量增删改bulk

    一.批量查询  mget             GET /_mget {   "docs":[       {         "_index":" ...

  9. Elasticsearch由浅入深(六)批量操作:mget批量查询、bulk批量增删改、路由原理、增删改内部原理、document查询内部原理、bulk api的奇特json格式

    mget批量查询 批量查询的好处就是一条一条的查询,比如说要查询100条数据,那么就要发送100次网络请求,这个开销还是很大的如果进行批量查询的话,查询100条数据,就只要发送1次网络请求,网络请求的 ...

  10. asp.net LINQ连接数据库SQL执行数据的增加、修改、删除、查询操作

    查询数据库中的数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...

随机推荐

  1. Ruby: Call the system and get system information.

    1. Kill the task cmd2="taskkill /F /IM typeperf.exe"stdout2=%x{#{cmd2}} 2. Start counters: ...

  2. Linux网络协议栈(三)——网络设备(1)

    网络设备(network device)是内核对网络适配器(硬件)的抽象与封装,并为各个协议实例提供统一的接口,它是硬件与内核的接口,它有两个特征:(1)    作为基于硬件的网络适配器与基于软件的协 ...

  3. bzoj 1127 KUP —— 最大子矩形+答案构造

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1127 首先,把权值 > 2*k 的点作为“坏点”,然后在图中用悬线法找权值最大的子矩形 ...

  4. Apollo自动驾驶框架试玩

    2017年7月5日,百度举行了AI开发者大会,在会上发布了Apollo项目,并进行了演示,该项目在Github上已经能够被访问.出于一个程序员的好奇,昨天试玩了一把,确实不错. http://apol ...

  5. Cortex-M3 / M4 Hard Fault Handler (转载)

    转自大伟的,感谢大伟的帮助调试:http://www.cnblogs.com/shangdawei/archive/2013/04/30/3052491.html http://blog.frankv ...

  6. org.springframework.web.struts.ContextLoaderPlugIn 和 org.springframework.web.context.ContextLoaderListener

    org.springframework.web.struts.ContextLoaderPlugIn 和 org.springframework.web.context.ContextLoaderLi ...

  7. 【415】C语言文件读写

    A program can open and close, and read from, and write to, a file that is defined by the user This i ...

  8. UVa 11806 Cheerleaders (数论容斥原理)

    题意:给定一个n*m的棋盘,要放k个石子,要求第一行,最后一行,第一列,最后一列都有石子,问有多少种放法. 析:容斥原理,集合A是第一行没有石子,集合B是最后一行没有石子,集合C是第一列没有石子,集合 ...

  9. VS 2017 产品密钥

    Visual Studio 2017(VS2017) 企业版 Enterprise 注册码:NJVYC-BMHX2-G77MM-4XJMR-6Q8QFVisual Studio 2017(VS2017 ...

  10. SQL 初级教程学习(二)

    1.SQL 语句从 "Websites" 表中选取头两条记录: SELECT * FROM Websites LIMIT 2; SELECT TOP 50 PERCENT * FR ...