728x90 Computer Science/JAVA13 [JAVA] JPA와 Hibernate JPA가 무엇일까? 현재 자바의 ORM 기술 표준으로 사용되는 인터페이스 모음이다. 실제적으로 구현된 것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 것이다. JPA를 사용하는 이유는 무엇일까? SQL문이 아닌 메소드를 통해 DB를 조작할 수 있다. 물론 내부적으로 DB를 조작함. 근데 개발자가 이를 신경쓰지 않아도 된다. 객체지향적 코드 가능. 반복적인 CRUD를 처리해준다. 그래도 JPA를 사용해서 얻는 가장 큰 이득은 SQL이 아닌 객체 중심으로 개발할 수 있다는 것임. JPA 동작 방식 JPA는 어플리케이션과 JDBC 사이에서 동작함. 개발자가 JPA를 사용하면, JPA 내부에서 JDBC API를 사용해서 DB와 통신한다. 즉, 개발자가 직접 JDBC를 사용하는 것이 아니다. Hibern.. 2022. 3. 5. [JAVA] 추상 클래스 클래스 : 완성된 설계도 추상 클래스 : 미완성 설계도 (미완성 메소드를 포함하고 있다는 뜻) 추상 클래스로는 인스턴스 생성이 불가능하다. 상속을 통해서 자손 클래스에 의해서만 완성될 수 있다. 추상 클래스 자체로는 클래스의 역할을 못한다. 하지만 새로운 클래스를 작성하는데 있어서 바탕이 되는 조상 클래스로서 중요한 의미를 갖는다. 어느 정도 틀을 갖추게 해주기 때문이다. 키워드 abstract만 붙이면 된다. 추상 클래스는 추상 메소드를 포함하고 있다는 것 말고는 클래스와 다른게 없다. 추상 메소드는 선언부만 작성하고 구현부는 작성하지 않은 채로 남겨 둔 것이다. 메서드를 미완성 상태로 남겨 놓는 이유는 메소드의 내용이 상속받는 클래스에 따라 달라질 수 있기 때문에 조상 클래스에서는 선언부만 작성하고,.. 2022. 2. 21. [JAVA] 인터페이스 인터페이스를 이해하기 전에 예를 들어보자. 이번 베이징 올림픽에서 스키점프를 하는데 A선수는 부스터가 달린 스키. B선수는 그냥 스키. C선수는 상당히 무거운 스키.... 이런 식으로 시합을 하면 평가 자체가 불가능하지 않나싶다. 모든 선수의 스키가 개성이 넘친다. 왜 이런 문제가 발생하는지? 바로 규격, 표준이 없어서 나타나는 상황이다. 따라서 올림픽 위원회는 다시 말을 한다. "부스터가 달리지 않은, 길이 n 무게 m인 스키만 가지고 오세요" 감이 온다. 팀 프로젝트를 할 때에 클래스를 모두 처음부터 구현하게 된다면 코드의 가독성도 떨어지고 시간도 오래걸린다. 다들 다른 메소드 이름, 필드 데이터 이름을 사용하기에 일관성도 떨어지고 읽기도 쉽지 않다. 아까 스키와 같은 상황이 발생한다. 누구 코드가 .. 2022. 2. 19. [JAVA] 클래스 메서드, 인스턴스 메서드 변수와 마찬가지로 인스턴스 메서드에 static을 붙이면 클래스 메서드이다. 인스턴스 메서드는 인스턴스 변수와 관련된 작업을 하는, 즉 메서드의 작업을 수행하는 데 인스턴스 변수를 필요로 하는 메서드이다. 인스턴스 메서드는 인스턴스를 생성해야만 호출할 수 있다. 인스턴스 변수나 인스턴스 메서드를 사용하지 않는 메서드를 클래스 메서드라고 한다. 자바의 정석에 따르면 4가지 정리가 있다. 클래스를 설계할 때, 멤버변수 중 모든 인스턴스에 공통으로 사용하는 것에 static을 붙인다. 인스턴스 변수는 독립 저장 공간이 있기에 서로 다른 값을 유지한다. 하지만 모든 인스턴스에서 같은 값이 유지되어야 하는 변수는 static을 붙여서 클래스 변수로 선언한다. 클래스 변수는 인스턴스를 생성하지 않아도 사용 가능하다.. 2022. 2. 4. 이전 1 2 3 4 다음 728x90