스프링 JPA 핵심개념 두번째
🎈 목차
1. 영속성(Persistence) 이란
2. ORM(Object Relational Mapping) 이란?
3. 하이버네이트
두번째 시간은 ORM이 낯설어서 용어정리나 기본 개념 정리가 필요할꺼 같았다.
1. 영속성(Persistence) 이란?
1. 정의
영속성 이란 ORM(Object Relational Mapping)에서 사용하는 말로 클래스 객체파일로 맵핑된 메타데이터로 데이터베이스 테이블에 연결 후 복잡하고, 비즈니스 코드에 쓸데없는 코드없이 자동적으로 입력,조회,삭제 등을 하는 것을 말한다.
import java.sql.*;
public class WDB {
public static void main(String[] args) throws Exception{
//드라이버 로드
Connection con = null;
ResultSet rs = null;
PreparedStatement psmt = null;
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String id = "c##web";
String pw = "oracle";
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection(url,id,pw);
System.out.println("DB정상연결");
} catch (Exception e) {
e.printStackTrace();
System.out.println("DB연결실패");
}
try {
String sql = "insert into " +
"department(deptno, deptname,floor) values (?,?,?)";
int deptno = 1;
String deptname = "deptname";
int floor = 1;
psmt = con.prepareStatement(sql);
psmt.setInt(1, deptno);
psmt.setString(2, deptname);
psmt.setInt(3, floor);
psmt.executeUpdate();
System.out.println("쿼리성공");
}catch(Exception e) {
e.printStackTrace();
System.out.println("쿼리실패");
}
}
}
// 출저 : https://m.blog.naver.com/bgpoilkj/221672288866
데이터베이스 테이블에 연결 후 복잡하고, 비즈니스 코드에 쓸데없는 코드없이 코드 예시
😁 어려운 언어로 ORM접근하기 어려움을 느끼게 할 것 같아 나름 쉽게 해석하였다.
2. ORM(Object Relational Mapping)이란?
1. 정의
- ORM이란 용어에도 나와있듯이 객체(Object)와 관계(Relation)을 연결(Mapping)해 주는 개념이다.
- ORM을 객체 지향 프로그래밍 관점에서 생각해보면, 관계형 데이터베이스에 제약을 최대한 받지 않으면서, 객체를 클래스로 표현하는 것과 같이 관계형 데이터베이스를 객체처럼 쉽게 표현 또는 사용하자는 것이다.
😁 데이터베이스 관해서만 듣다가, ORM이라는 단어를 접했을 때 낯선부분으로 배우지 않아야겠다는 생각이 들었다. 그런데 요즘 ORM을 공부하면서 기존 RDBMS의 기회비용을 절약할 수 있다는 것으로 필요성을 느끼고 있다.
3. 하이버네이트
1. 정의
하이버네이트 ORM(Hibernate ORM)은 자바 언어를 위한 객체 관계 매핑 프레임워크이다.
😁 우리가 전자정부에서 자주 사용하는 MyBatis라고 생각하면 될 꺼 같다.
참고
https://www.inflearn.com 스프링 데이터 JPA -백기선
https://banner.godori.dev 배너생성기
Author And Source
이 문제에 관하여(스프링 JPA 핵심개념 두번째), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@noah_ark/스프링-JPA-핵심개념-두번째저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)