hibenate 4 의 핵심 API
구성 클래스
Configuration 클래스 는 Hibernate 의 설정 정 보 를 관리 합 니 다.다음 내용 포함:
- hibenate 가 실행 하 는 기본 정보: 데이터베이스 의 URL, 사용자 이름, 비밀번호, JDBC 드라이버, 데이터베이스 Dialect, 데이터베이스 연결 풀 등 (hibenate. cfg. xml 파일 에 대응).
- 지구 화 클래스 와 데이터 시트 의 맵 관계 (*. hbm. xml 파일)
Configuration 을 만 드 는 두 가지 방식
속성 파일 (hibenate. properties):
Configuration cfg = new Configuration();
Xml 파일 (hibenate. cfg. xml)
Configuration cfg = new Configuration().configure();
Configuration 의 configure 방법 은 인자 가 있 는 접근 도 지원 합 니 다.
File file = new File(“simpleit.xml”);
Configuration cfg = new Configuration().configure(file);
SessionFactory 인터페이스
단일 데이터베이스 맵 관 계 를 컴 파일 한 메모리 미 러 는 스 레 드 가 안전 합 니 다.
Session Factory 대상 은 구조 가 완료 되면 특정한 설정 정 보 를 부여 합 니 다.
Session Factory 는 Session 을 만 드 는 공장 입 니 다.
구조 Session Factory 는 자원 을 소모 합 니 다. 일반적인 상황 에서 하나의 Session Factory 대상 만 초기 화 합 니 다.
Hibernate 4 에 ServiceRegistry 인터페이스 가 추가 되 었 습 니 다. Hibernate 기반 의 모든 설정 이나 서 비 스 는 이 ServiceRegistry 에 통일 되 어야 합 니 다. 등록 후 효력 이 발생 합 니 다.
Hibernate 4 에서 Session Factory 를 만 드 는 절차
//1. Configuration : hibernate
Configuration cfg = new Configuration().configure();
//2. ServiceRegistry : hibernate 4.x .hibernate .
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry();
//3. SessionFactory
SessionFactory sessionFactory = cfg.buildSessionFactory(serviceRegistry);
세 션 인터페이스
Session 은 응용 프로그램 과 데이터 베이스 간 의 상호작용 을 하 는 단일 스 레 드 대상 으로 Hibernate 가 운영 하 는 중심 이 며 모든 지구 화 대상 은 session 관리 하에 있어 야 지구 화 작업 을 할 수 있 습 니 다.이 대상 의 생명 주 기 는 매우 짧다.Session 대상 은 1 급 캐 시 를 가지 고 있 습 니 다. flush 를 명시 적 으로 실행 하기 전에 모든 영구적 인 작업 데 이 터 는 session 대상 에 캐 시 됩 니 다.JDBC 의 커 넥 션 에 해당 한다.
지구 화 류 는 세 션 과 연관 되면 서 지구 화 능력 을 갖 게 된다.
Session 클래스 의 방법:
지구 화 대상 을 얻 는 방법: get (), load ()
지구 화 대상 은 저장, 업데이트, 삭제 해 야 합 니 다: save (), update (), saveOrUpdate (), delete ()
트 랜 잭 션 시작: beginTransaction ().
세 션 관리 방법: isOpen (), flush (), clear (), evict (), close () 등
트 랜 잭 션 (사무)
원자 조작 을 대표 하 는데, 그것 은 데이터베이스 업무 의 개념 을 가지 고 있다.모든 지구 층 은 읽 기만 하 더 라 도 사무 관리 하에 진행 되 어야 한다.
Transaction tx = session.beginTransaction();
상용 방법:
commt (): 연 결 된 session 인 스 턴 스 를 제출 합 니 다.
rollback (): 트 랜 잭 션 취소
wasCommitted (): 업무 제출 여 부 를 확인 합 니 다.
Hibernate 프로필 의 두 가지 설정 항목
hbm2dl. auto: 이 속성 은 프로그래머 가 정방 향 공정 을 실현 하 는 데 도움 을 줄 수 있 습 니 다. 즉, 자바 코드 로 데이터베이스 스 크 립 트 를 생 성하 여 구체 적 인 표 구 조 를 생 성 할 수 있 습 니 다.값 추출 create | update | create - drop | validate
create: hbm. xml 에 따라 파일 로 데이터 시트 를 만 들 지만 실행 할 때마다 지난번 시 계 를 삭제 하고 다시 시 계 를 만 듭 니 다. 두 번 이라도 변 함 이 없습니다.
create - drop:. hbm. xml 파일 에 따라 표 가 생 성 되 지만 Session Factory 가 닫 히 면 표 가 자동 으로 삭 제 됩 니 다.
update: 가장 많이 사용 되 는 속성 값 은. hbm. xml 파일 에 따라 표를 생 성 하지만. hbm. xml 이면 파일 과 데이터베이스 에 대응 하 는 데이터 시트 의 표 구조 가 다 릅 니 다. Hiberante 데이터 시트 구 조 를 업데이트 하지만 기 존 줄 과 열 은 삭제 되 지 않 습 니 다.
vaidate: 데이터베이스 에 있 는 표 와 비교 합 니 다. hbm. xml 파일 에 열 이 데이터 시트 에 존재 하지 않 으 면 이상 을 던 집 니 다.
format_sql: SQL 을 형식 이 좋 은 SQL 로 바 꿀 지 여부 입 니 다. 값 true | false
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.