国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Hibernate核心API的詳解

2019-11-08 02:23:12
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

Configuration

Configuration cfg = new Configuration();cfg.configure();1. 到src下面找到名稱hibernate.cfg.xml配置文件,創(chuàng)建對(duì)象,把配置文件放到對(duì)象里面(加載配置文件)

sessionFactory(重點(diǎn))

使用configuration對(duì)象創(chuàng)建sessionFactory對(duì)象 – 自動(dòng)創(chuàng)建表時(shí)需配置的項(xiàng)目 update

創(chuàng)建sessionFactory過(guò)程中,特別消耗資源

在hibernate操作的過(guò)程中,建議一個(gè)項(xiàng)目一般創(chuàng)建一個(gè)sessionFactory對(duì)象

具體實(shí)現(xiàn)(創(chuàng)建一個(gè)sessionFactory對(duì)象)

寫工具類,寫靜態(tài)代碼塊實(shí)現(xiàn) 靜態(tài)代碼塊在類中加載時(shí),只執(zhí)行一次 package com.jeff.util;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class HibernateUtil { PRivate final static Configuration cfg; private final static SessionFactory sessionFactory; //靜態(tài)代碼塊實(shí)現(xiàn)sessionFactory對(duì)象創(chuàng)建 static{ cfg = new Configuration(); cfg.configure(); sessionFactory = cfg.buildSessionFactory(); } public static SessionFactory getSessionFactory(){ return sessionFactory; }}

Session

類似于jdbc中connection

調(diào)用session里面不同的方法實(shí)現(xiàn)crud操作

添加save()更新update()刪除delete()根據(jù)id查詢get方法

session對(duì)象為單線程對(duì)象

session對(duì)象不能共用

Transaction

事務(wù)對(duì)象

提交和回滾 commit(); rollback();

概念 原子性、一致性、隔離性、持久性

實(shí)現(xiàn)查詢的對(duì)象

Query 對(duì)象

使用此對(duì)象,不需要寫sql語(yǔ)句,但需寫HQL語(yǔ)句

SQL與HQL的區(qū)別

SQL HQL
SQL操作的是表和字段 HQL操作實(shí)體類和屬性

HQL查詢語(yǔ)句

查詢所有記錄

from 實(shí)體類名稱

Query對(duì)象的使用

創(chuàng)建Query對(duì)象方法里寫HQL語(yǔ)句調(diào)用Query方法得到獲取結(jié)果集 //1. 創(chuàng)建Query對(duì)象// 方法里面寫HQL語(yǔ)句Query query = session.createQuery("from User");//2. 調(diào)用query方法得到結(jié)果List<User> userList = query.list();for (User user : userList) { System.out.println(user.toString());}/* -- 運(yùn)行結(jié)果 Hibernate: select user0_.uid as uid1_0_, user0_.username as username2_0_, user0_.passWord as password3_0_, user0_.address as address4_0_ from t_user user0_ User [uid=1, username=Jeff, password=123456, address=廣東茂名] User [uid=2, username=李白, password=123456, address=廣東廣州] User [uid=3, username=小馬, password=123456, address=China]*/

Criteria(標(biāo)準(zhǔn))對(duì)象

不需要使用語(yǔ)句

實(shí)現(xiàn)過(guò)程

創(chuàng)建Criteria對(duì)象

調(diào)用對(duì)象相應(yīng)的查詢方法//1. 創(chuàng)建Criteria對(duì)象Criteria criteria = session.createCriteria(User.class);//2. 調(diào)用對(duì)象方法得到結(jié)果List<User> userList = criteria.list();

SQLQuery 對(duì)象

實(shí)現(xiàn)原始SQL查詢//1. 創(chuàng)建SQLQuery對(duì)象SQLQuery sqlQuery = session.createSQLQuery("select * from t_user");//2. 調(diào)用對(duì)象方法得到結(jié)果List<Object[]> list = sqlQuery.list();for (Object[] obj : list) { //將數(shù)組轉(zhuǎn)為字符串形式 String arrayToStr = Arrays.toString(obj); System.out.println(arrayToStr);}/* -- 運(yùn)行結(jié)果 -- Hibernate: select * from t_user [1, Jeff, 123456, 廣東茂名] [2, 李白, 123456, 廣東廣州] [3, 小馬, 123456, China]*/- SQLQuery對(duì)象的查詢方法未作處理時(shí)返回的是對(duì)象數(shù)組集實(shí)現(xiàn)返回結(jié)果集是對(duì)象的方法//1. 創(chuàng)建SQLQuery對(duì)象SQLQuery sqlQuery = session.createSQLQuery("select * from t_user");//得到返回對(duì)象的方法sqlQuery.addEntity(User.class);//2. 調(diào)用對(duì)象方法得到結(jié)果List<User> list = sqlQuery.list();
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阜城县| 泾源县| 北京市| 云和县| 昂仁县| 石城县| 页游| 鄂州市| 徐水县| 伊通| 和政县| 虹口区| 青河县| 白沙| 黄山市| 赣榆县| 绥宁县| 衡南县| 镇江市| 乐安县| 宝应县| 连州市| 寻乌县| 天水市| 安宁市| 祁阳县| 繁昌县| 黄陵县| 绥德县| 林西县| 文成县| 黑龙江省| 龙州县| 平原县| 和林格尔县| 来安县| 略阳县| 通辽市| 丹江口市| 宾川县| 天峨县|