Sesac 웹 풀스택[새싹X코딩온]/Spring6 6. JPA(Java Persistence API) 및 실습 자바의 ORM 기술 표준 JAP가 개발자 대신 적합한 SQL을 생성하고 DB에 전달하고, 객체를 자동으로 Mapping 해주기에 SQL을 직접 작성할 필요가 없다. ex) Hibernate ( JPA를 구현한 대표적 오픈소스) 장점 단점 생산성이 뛰어나고 유지보수가 용이하다 JPA의 장점을 살려 잘 사용하기 위해서는 학습 비용이 높고, 복잡한 쿼리를 사용할 때 불리하다. DBMS에 대한 종속성이 줄어든다. 잘못 사용할 경우 SQL을 직접 사용하는 것보다 성능이 떨어질 수 있다. JPA 사용하기 1. build.gradle JPA를 사용하기 위해 dependency 추가 2. application.properties 수정 #기본 설정 spring.datasource.driver-class-name=com... 2023. 3. 16. 5. JDBC, MyBatis 연결 JDBC(Java Database Connectivity) 자바 언어와 DB를 연결해주는 통로, 자바에서 데이터베이스에 접근할 수 있도록 해주는 자바 API SQL Mapper Object와 SQL의 필드를 매핑해 데이터를 객체화하는 기술 객체와 테이블 간의 관계를 매핑하는 것과 다르다 SQL 문을 직접 작성해야 한다. ex) JDBCTemplate, MyBatis MyBatis - SQL Mapper 로써, JDBC로 처리하는 상당 부분의 코드와 파라미터 설정 및 결과 매핑을 대신해준다. - 객체 지향 언어인 자바와 관계형 데이터베이스 프로그래밍을 좀 더 쉽게 할 수 있도록 도와주는 프레임워크 MyBatis 특징 쉬운 접근성과 코드의 간결함 JDBC의 모든 기능을 MyBatis에서 사용 가능 복잡한 J.. 2023. 3. 16. 4. GET, POST 방식 및 DTO, VO 전송 GET 방식 Get method의 URL을 받을 때는 Controller에서 @GetMapping(url)을 이용해야 한다. (get) ?key = value ?key=value 형태로 url이 넘어올 때 Controller에서 받는 방법 => @RequestParam 이용 이 때, key라는 변수에 ?key=value로 넘어온 value 값이 들어간다. @RequestParam에 required 값을 설정하면 없어도 실행된다. (기본값은 required="true", 만약 값이 안넘어올 수도 있다면 반드시 require="false" 설정을 해야 오류가 나지 않는다.) @GetMapping("/get/response2") public String getAPI2(@RequestParam(required .. 2023. 3. 16. 3. Rest API 정의(DTO,VO, Annotation) API(Application Programming Interface) 요청과 응답을 구성하는 방법에 대한 정보 REST(Representational State Transfer) 서버와 클라이언트 통신 방법 중 하나로, http URI를 통해 자원을 명시하고 http method를 이용해 자원을 교환하는 통신 방법 - REST 아키텍처의 조건을 준수하는 API - REST의 규칙을 모두 지켜 구현된 웹 서비스 => RESTful 하다!! REST의 특징 Server-Client 구조 Stateless(무상태) Cacheable (캐시 처리 가능) Layered System (계층화) Uniform Interface (인터페이스 일관성) REST의 장단점 장점 단점 http 프로토콜의 인프라를 그대로 사용.. 2023. 3. 11. 2. Spring Boot 사용하기(feat: Intellij, Spring initializer, thymeleaf) Spring을 더 쉽게 이용하기 위한 도구 Spring을 이용할 시, 필요한 여러 가지 세팅 작업들 ( ex) 톰캣 서버 설 정, XML 설정 등 ) 없이 쉽고 빠르게 프레임워크를 사용할 수 있도록 만들어진 것 Intellij 유용한 플러그인 더보기 Atom Material Icons : 프로젝트 구조(패키지, 폴더, 파일)을 Atom ide 디자인을 입혀서 아이콘 모양을 바꿔주는 플러그인 Material Theme UI CodeGlance Pro : 대략적인 전체적인 코드의 양을 체크하거나 위에 적어놓은 메서드를 찾을 때 유용 Grep Console : Console 출력을 상황에 맞게 색상 별로 나눠서 출력 Spring initializer Spring을 더 쉽게 이용하기 위한 도구 Groovy ⇒ .. 2023. 3. 9. 1. Spring framework 특징 Java 기반의 웹 어플리케이션을 만들 수 있는 백엔드 프레임워크 Java로 다양한 어플리케이션을 만들기 위한 프로그래밍 툴 Spring 프레임워크 특징 1. IoC (Inversion of Control, 제어 반전) 객체의 생성부터 소멸까지 개발자가 직접 하는 것이 아닌 Spring Container가 대신해주는 것 제어권이 개발자가 아닌 IoC에 있으며, IoC가 개발자의 코드를 호출해 필요한 객체를 생성, 소멸해 생명주기를 관리한다. IoC 객체 : 제어권이 외부에 있는 객체 // 1. 일반 객체 생성 class Sample { private Apple apple = new Apple(); } // 2. IoC 객체 class Sample { private Apple apple; public Sa.. 2023. 3. 9. 이전 1 다음