Hibernate修改操作 删除操作 查询操作 增加操作 增删改查 Hibernate增删查改语句
我用的数据库是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增删查改语句的更多相关文章
- MySQL数据库表的数据插入、修改、删除、查询操作及实例应用
一.MySQL数据库表的数据插入.修改.删除和查询 CREATE DATABASE db0504; USE db0504; CREATE TABLE student ( sno ) NOT NULL ...
- 关于C#和ASP.NET中对App.config和Web.config文件里的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作
最近我做的一些项目,经常需要用到对应用程序的配置文件操作,如app.config和web.config的配置文件,特别是对配置文件中的[appSettings]和[connectionStrings] ...
- vs2017 + miniUI + dapper 添加、修改、删除、查询操作
A.数据库表引用先前建立的company 公司信息表. B.建立文件: views > Home > Company.cshtml(新建文件) ,代码如下(直接复制即可) @{ Layou ...
- Es图形化软件使用之ElasticSearch-head、Kibana,Elasticsearch之-倒排索引操作、映射管理、文档增删改查
今日内容概要 ElasticSearch之-ElasticSearch-head ElasticSearch之-安装Kibana Elasticsearch之-倒排索引 Elasticsearch之- ...
- Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
http://www.jb51.net/article/42016.htm 初识Jquery EasyUI看了一些博主用其开发出来的项目,页面很炫,感觉功能挺强大,效果也挺不错,最近一直想系统学习一套 ...
- Python--day42--mysql操作数据库及数据表和基本增删改查
sql语法规则: 一.操作文件夹 1.创建数据库db2:create database db2; 2.创建数据库db2并标明数据库的编码格式为utf8:create database db2 defa ...
- python全栈开发day61-django简单的出版社网站展示,添加,删除,编辑(单表的增删改查)
day61 django内容回顾: 1. 下载: pip install django==1.11.14 pip install -i 源 django==1.11.14 pycharm 2. 创建项 ...
- Elasticsearch学习笔记(十)批量查询mget、批量增删改bulk
一.批量查询 mget GET /_mget { "docs":[ { "_index":" ...
- Elasticsearch由浅入深(六)批量操作:mget批量查询、bulk批量增删改、路由原理、增删改内部原理、document查询内部原理、bulk api的奇特json格式
mget批量查询 批量查询的好处就是一条一条的查询,比如说要查询100条数据,那么就要发送100次网络请求,这个开销还是很大的如果进行批量查询的话,查询100条数据,就只要发送1次网络请求,网络请求的 ...
- asp.net LINQ连接数据库SQL执行数据的增加、修改、删除、查询操作
查询数据库中的数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...
随机推荐
- mac下安装eclipse+CDT
测试文件test.cpp #include <iostream>using namespace std; int main() { cout << "!!!He ...
- 并不对劲的AC自动机
这像是能解决所有问题的样子(并不).AC自动机之所以叫AC自动机是因为它能解决所有AC自动机的题. 其实只能解决的是很多模式串匹配一个母串的问题. 把kmp中的next数组得到下一次跳转的位置看成特殊 ...
- node express中使用static的错误
使用express中的static可以设置文件存储路径,比如js存在于public/js//demo.js这个时候可以将js文件夹设置为专门存储js的路径,代码如下: app.use('/javasc ...
- bzoj 1444: [Jsoi2009]有趣的游戏【AC自动机+dp+高斯消元】
https://blog.sengxian.com/solutions/bzoj-1444 orz 一直是我想错了,建出AC自动机之后,实际上这个定义是设f[i]为经过i节点的 * 期望次数 * ,因 ...
- P3308 [SDOI2014]LIS(最小割+退流)
传送门 设\(f[i]\)为以\(i\)结尾的最长上升子序列.可以考虑建这样一张图,对于所有的\(i<j,f[j]=f[i+1]\)连边\((i,j)\),\(f[i]=1\)的话连边\((S, ...
- 只需3步,即可将你的Chromium Edge 浏览器设置成中文
最近,Chromium Edge 浏览器推出了添加语言包的功能,于是我们可以轻松将其界面设置成中文的. 第1步: 升级浏览器到最新版 在Chromium Edge 浏览器的地址栏中输入: edge:/ ...
- Xposed 集成 Android 6.0.1环境中,总结
由于工作需要,需要将xposed集成到android源码中,生成新的ROM就自带xposed的功能. 下面大体上说一下步骤和遇到的问题. 1.下载,并编译android源码,成功. 2.下载 http ...
- linux下的日志压缩脚本
linux下的日志压缩脚本: #!/bin/bash #第一步:先定义项目列表如下: projects="project-a project-b project-c project-d&qu ...
- ACM_素数环(dfs)
Problem Description: 如图所示,环由n个圆组成. 将自然数1,2,...,n分别放入每个圆中,并且两个相邻圆中的数字总和应为素数. 注意:第一个圆圈的数量应该始终为1. Input ...
- 对数组随机赋值,并输出(Arrays.toString(arr))
import java.util.Arrays; public class Demo { public static void main(String[] args) { int[] arr = ne ...