我用的数据库是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. GIT+Gitolite+Gerrit 环境搭建 ***

    系统环境:Ubuntu12.04 服务器上安装git+gitolite+gitweb root@server: 为搭建git服务器终端,假设ID为 192.168.199.117 或域名为: http ...

  2. 2-12 tensorflow运算原理

    #opencv tensorflow #类比 语法 api 原理 #基础数据类型 运算符 流程 字典 数组 import tensorflow as tf #data1 = tf.constant(2 ...

  3. Sql Server 查询重复记录

    参考网址:http://database.51cto.com/art/201103/250046.htm SQL Server数据库多种方式查找重复记录 select * from dbo.T0058 ...

  4. Javaweb的9大内置对象

    request(请求) response(响应) session(一个用户存放数据,安全) application(一个项目一般有一个,多用户共享存简单数据) out(输出,在页面输出内容) conf ...

  5. linux修改用户主目录的方法 (转载)

    转自:http://xiaomaimai.blog.51cto.com/1182965/274002 第一:修改/etc/passwd文件第二:usermod命令 详细说明如下:第一种方法:vi /e ...

  6. MHA高可用 MHA+Keepalive

    MHA高可用 MHA简介 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebo ...

  7. poj 2699 The Maximum Number of Strong Kings【最大流+枚举】

    因为n很小所以从大到小枚举答案.(从小到大先排个序,因为显然胜利场次越多越容易成为strong king.然后对于每个枚举出来的ans建图.点分别表示人和比赛.s向所有人连接流量为胜利场次的边,所有比 ...

  8. Ubuntu 18 安装 wps

    本来有三种方法 1. 软件中心 安装最简单 2. 命令行snap 安装 如果没有安装snap 先安装 sudo apt install snapd 然后安装wps sudo snap install ...

  9. Ubuntu 必装软件及安装教程

    安装搜狗拼音输入法 因为sogou是基于fcitx的,所以先添加fcitx键盘输入法系统[系统默认是iBus].在终端中,输入命令将下载源添加至系统源(添加依赖). sudo add-apt-repo ...

  10. clock()函数的返回值精度问题

    clock()函数返回值为1毫秒,就是0.001秒.clock函数功 能: 返回处理器调用某个进程或函数所花费的时间.用 法: clock_t clock(void);说明:clock_t其实就是lo ...