hibernate框架学习之增删改查helloworld
插入数据
删除数据
修改数据
查询单条数据
查询多条数据
HelloWorldApp.java
package cn.itcast.h3.helloworld; import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration; import cn.itcast.h3.helloworld.vo.UserModel; public class HelloWordApp {
public static void main(String[] args) { //1.加载配置文件hibernate.cfg.xml,得到一个配置对象
Configuration conf = new Configuration().configure();
//2.由配置创建一个SessionFactory
SessionFactory sf = conf.buildSessionFactory();
//3.由SessionFactory得到Session
Session s = sf.openSession();
//4.由Session对象获取事务对象Transaction
Transaction t = s.beginTransaction();
//5.完成任务
//5.1创建一个要存储的对象
UserModel um = new UserModel();
um.setUuid("1");
um.setUserName("李若亮");
um.setAge(34);
um.setAddress("传智播客");
//5.2保存
s.save(um); //6.提交事务
t.commit();
//7.关闭Session
s.close();
//8.关闭SessionFactory(略)
sf.close(); }
}
BaseOperApp.java
package cn.itcast.h3.helloworld; import java.util.List; import org.hibernate.Query;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration; import cn.itcast.h3.helloworld.vo.UserModel; public class BaseOperApp {
//测试插入数据
void testAdd(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session s = sf.openSession();
Transaction t = s.beginTransaction(); //1.准备一个要添加的数据
UserModel um = new UserModel();
um.setUuid("3");
um.setUserName("李若亮");
um.setAge(34);
um.setAddress("传智播客");
//2.调用save方法 String res = (String) s.save(um);
System.out.println(res); t.commit();
s.close();
}
//测试修改数据
void testUpdate(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session s = sf.openSession();
Transaction t = s.beginTransaction(); //1.准备一个要添加的数据
UserModel um = new UserModel();
um.setUuid("3");
um.setUserName("Jock");
um.setAge(34);
um.setAddress("itcast");
//2.调用update方法
s.update(um); t.commit();
s.close();
}
//测试删除数据
void testDelete(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session s = sf.openSession();
Transaction t = s.beginTransaction(); //1.准备一个要添加的数据
UserModel um = new UserModel();
um.setUuid("1");
//2.调用delete方法
s.delete(um); //um对象只要有uuid就可以了 t.commit();
s.close();
}
//测试单个数据
void testQueryOne(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session s = sf.openSession();
//1.查询单个数据需要依赖主键进行查询
//2.get(模型类.Class,uuid)方法得到一个对象,这个对象被包装成了Class格式
//3.load(模型类.Class,uuid)方法得到一个对象,这个对象被包装成了Class格式
UserModel um = (UserModel) s.load(UserModel.class, "3");
System.out.println(um);
s.close();
}
//测试全部数据
void testQueryAll(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session s = sf.openSession();
//1.获取Query对象
//创建Query对象时,需要使用Hibernate专用的查询语句HQL
String hql = "from UserModel";
Query q = s.createQuery(hql);
//2.将结果查询出来,使用list方法,得到一个查询的结果集合
List<UserModel> queryList = q.list();
for(UserModel um:queryList){
System.out.println(um);
}
s.close();
}
//测试全部数据2
void testQueryAll2(){
Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session s = sf.openSession(); //1.使用本地SQL语句查询
String sql = "select * from tbl_user";
//2.使用SQL查询,需要使用SQLQuery对象,该对象使用Session获得
SQLQuery sq = s.createSQLQuery(sql);
//3.查询结果也可以使用list将结果封装成一个集合
List<Object[]> queryList = sq.list();
for(Object[] objs: queryList){
for(Object obj:objs){
System.out.println(obj);
}
System.out.println("------------------");
} s.close();
} public static void main(String[] args) {
new BaseOperApp().testQueryAll2();
}
}
hibernate框架学习之增删改查helloworld的更多相关文章
- hibernate关联对象的增删改查------查
本篇博客是之前博客hibernate关联对象的增删改查------查 的后继,本篇代码的设定都在前文已经写好,因此读这篇之前,请先移步上一篇博客 //代码片5 SessionFactory sessi ...
- Spring JdbcTemplate框架搭建及其增删改查使用指南
Spring JdbcTemplate框架搭建及其增删改查使用指南 前言: 本文指在介绍spring框架中的JdbcTemplate类的使用方法,涉及基本的Spring反转控制的使用方法和JDBC的基 ...
- Struts2+Spring+Hibernate实现员工管理增删改查功能(一)之ssh框架整合
前言 转载请标明出处:http://www.cnblogs.com/smfx1314/p/7795837.html 本项目是我写的一个练习,目的是回顾ssh框架的整合以及使用.项目介绍: ...
- Hibernate进行对象的增删改查
首先我们看看hibernate手动配置步骤 (这个了解一点就可以了,以后是不会自己全部手动配置的) 1. 创建WEB项目 2 下载hibernate-release-4.3.11.F ...
- SSHE框架整合(增删改查)
1.前期准备:jar包(c3p0.jdbc ,各个框架) web.xml文件:spring的 转码的,和Struts2的过滤器 <?xml version="1.0" e ...
- hibernate关联对象的增删改查------增
本文可作为,北京尚学堂马士兵hibernate课程的学习笔记. 这一节,我们看看hibernate关联关系的增删改查 就关联关系而已,咱们在上一节已经提了很多了,一对多,多对一,单向,双向... 其实 ...
- JDBC学习笔记——增删改查
1.数据库准备 要用JDBC操作数据库,第一步当然是建立数据表: ? 1 2 3 4 5 6 CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_I ...
- Hibernate入门案例及增删改查
一.Hibernate入门案例剖析: ①创建实体类Student 并重写toString方法 public class Student { private Integer sid; private I ...
- 快速入门GreenDao框架并实现增删改查案例
大家的项目中不可避免的使用到SQLite,为此我们要花费心思编写一个增删改查框架.而一个好的ORM框架则能够给我们带来极大的方便,今天给大家讲解一个非常火热的ORM-GreenDao. 基本概念 Gr ...
随机推荐
- Kafka技术内幕 读书笔记之(五) 协调者——延迟的加入组操作
协调者处理不同消费者的“加入组请求”,由于不能立即返回“加入组响应”给每个消费者,它会创建一个“延迟操作”,表示协调者会延迟发送“加入组响应”给消费者 . 但协调者不会为每个消费者的 “加入组请求 ...
- Redis AOF、RDB持久化
持久化一:RDB方式 默认配置: save 900 1save 300 10save 60 10000 持久化二:AOF方式 默认配置:appendonly no,appendfilename &qu ...
- .net中 登录 才能下载文件的方法 Response.WriteFile实现下载
protected void Button2_Click(object sender, EventArgs e) { //可以在这里加是否登录的判断 string fileName = "c ...
- Linux 内核里的数据结构:位图(bitmap)
注: 本文由 LCTT 原创翻译,Linux中国 荣誉推出 Linux 内核中的位数组和位操作 除了不同的基于链式和树的数据结构以外,Linux 内核也为位数组(或称为位图(bitmap))提供了 A ...
- freemarker迭代list、map等常规操作,将数据放到模板中
转自:https://blog.csdn.net/wickedvalley/article/details/65937189 一.controller开始准备模型.数据1.po类 package co ...
- Spark源码剖析 - SparkContext的初始化(十)_Spark环境更新
12. Spark环境更新 在SparkContext的初始化过程中,可能对其环境造成影响,所以需要更新环境,代码如下: SparkContext初始化过程中,如果设置了spark.jars属性,sp ...
- 几本不错的数据仓库和Hadoop书籍
<<Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案>>, Matt Casters等著,初建军翻译<<Hadoop应用架构>> ...
- jqweui Picker使用一个小问题
地址:http://jqweui.com/extends#picker加了Display Value后,会产生改变值后,Picker显示Value而不显示Text情况.需要在OnClose里做如下处理 ...
- Eclipse 项目导航字体设置 左侧树字体
在解压的文件下 E:\eclipse\plugins\org.eclipse.ui.themes_1.2.0.v20170517-0622\css\dark 找到 e4-dark_basestyle ...
- Ubuntu中创建、删除、更改、移动文件的命令
1.创建一个目录 $ sudo mkdir <目录名> 2.删除一个非空目录下的一切 $ sudo rm -rf <目录名> 3.将文件file1,更改文件名为file ...