(day 2) hibernate 지식 훈련 (one - to - many)
1. one set <set name="acts" cascade="all" inverse="true"><!-- one (user) :many (Account) --> <key column="fid"></key> <one-to-many class="Account"/><!-- Account --> </set> :inverse="true" , 。 2. many <many-to-one name="user" column="fid" cascade="save"><!-- --> </many-to-one> . 1. -->PO (OOAD -->PO ) Transient : po Session , Persistent : po Session , Detached / :po Session , : Session , Session : , , , Session , Session.save() 。 : (new) , , Session.delete(), 。 : , , Session , Session , , . --> ? --> -- --> ( ) ( ) -- -->Session ? --> 2. : _|_-->close(): Session/clear() /evict() save() / saveOrUpdate() close()/clear()/evict() Transient--------------------->Persistent----------------------->Detached ( )<---------------------( )<----------------------- ( ) delete() update()/saveOrUpdate()/lock() . cascade cascade . 1. none: , , none。 2. save-update: ( ) , ( ),one2many ; 3. delete: ( )。 4. all: ( )。 5. all-delete-orphan: , null , delete id null, , delete-orphan , 。( ) cascade="save-update,delete-orphan" . (Batch update) 1. session.flush() session.clear() 2. batch-size: set , , , , , , (lazy="true" lazy="false")。 : lazy="true" , , , , 。 LazyInitializationException , , , Session , Session, 。 . Hibernate (ACID,atomicity consistency isolation durability) , 。 Transaction tran=session.beginTranaction();//.... tran.commit(); tran.rollback(); , 。 、hibernate hibernate JDBC 。 hibernate.cfg.xml <property name="hibernate.connection.isolation">4</property> 1, (Read uncommitted isolation) 2, (Read committed isolation) 4, (Repeatable read isolation) 8, (Serializable isolation) 、hibernate ( , ) 1. : , , , 。 LockMode.UPGRADE, , get() 。 LockMode.NONE LockMode.READ (JDBC for update) LockMode.WRITE , :tran = s.beginTransaction(); user = (User)s.get(User.class , userid , LockMode.UPGRADE); user.setName("new name"); tran.commit(); Session.lock() Query.setLockMode() Criteria.setLockMode() 2. : 。 : versionNo if(read_versionNo=versionNo) write versionNo++ else do it again < version name = "version" / > 는 < id > 이후 persist 를 따라 가 야 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[JPA] 즉시로딩(EAGER)과 지연로딩(LAZY) (왜 LAZY 로딩을 써야할까?) (1)Proxy는 이 글의 주제인 즉시로딩과 지연로딩을 구현하는데 중요한 개념인데, 일단 원리는 미뤄두고 즉시로딩과 지연로딩이 무엇인지에 대해 먼저 알아보자. 눈 여겨 볼 곳은 'fetch = FetchType.EAGER...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.