나를 기록하다
article thumbnail
[TIL-57/240613] Spring 계층 구조(레이어 아키텍처), Web Server & WAS & Web Service
TIL 2024. 6. 13. 22:27

Spring Project의 계층 구조(Layer Architecture) - Web / Service / RepositoryAPI를 만들기 위해서는 3개의 클래스가 필요하다.Request 데이터를 받을 DTO / API 요청을 받을 Controller / 트랜잭션, 도메인 기능 간의 순서를 보장하는 ServiceService의 역할과 Domain의 역할Service에서 비즈니스 로직을 처리 X → 비즈니스 로직은 Domain에서 처리Service는 트랜잭션, 도메인 간 순서 보장의 역할 수행 Spring의 웹 계층 구조 Web 계층컨트롤러(@Controller), View Template(ex. JSP, Thymeleaf, Freemarker ...)의 영역필터(@Filter), 인터셉터, 컨트롤 어드..

article thumbnail
[TIL-56/240416] REST API
TIL 2024. 4. 17. 09:00

REST API REST 2000년도 로이 필딩의 박사학위 논문에 최초로 소개 웹의 장점을 최대한 활용할 수 있는 아키텍처(설계구조)로 REST 발표 REST는 'Representational State Transfer'의 약어 HTTP 프로토콜을 사용하여 데이터를 주고 받는 방법 HTTP URI를 통해 제어할 자원(Resource)를 명시하고, HTTP Method(GET, POST, PUT, DELETE)을 통해 해당 자원(Resource)를 제어하는 명령을 내리는 방식의 아키텍처 REST 구성 자원(Resource; (ex) /boards, /users ...) → URI(Uniform Resource Identifier) HTTP 메서드 → 작업에 대한 정의(CRUD) 표현(Representati..

article thumbnail
[TIL-55/240412] MyBatis-Spring, Dynamic SQL
TIL 2024. 4. 13. 19:49

MyBatis-Spring 마이바티스-스프링 연동 모듈은 둘을 간편하게 연동하도록 도와줌 해당 모듈은 마이바티스로 하여금 스프링 트랜잭션에 쉽게 연동되도록 처리 mapper와 SqlSession을 다루고, 빈에 주입시켜줌 MyBatis 예외를 스프링의 DataAccessException으로 반환 mybatis-spring 감사 인사 이 프로젝트가 실제로 만들어지게 도와준 모든 특별한 분들에게 정말 감사한다. 알파벳 순서로 보면, 코딩및 테스트 그리고 문서화를 담당했던 Eduardo Macarron, Hunter Presnall, Putthiphong Boon mybatis.org 구성 요소 Dynamic SQL 동적 SQL Runtime 시점에서 생성되는 SQL 사용자의 입력 혹은 특정 조건에 따라 동적..

article thumbnail
[TIL-54/240408] MyBatis
TIL 2024. 4. 9. 08:43

MyBatis 특징 SQL 매핑 프레임워크 SQL문과 저장 프로시저(Stored Procedure)등의 매핑을 지원하는 퍼시스턴스 프레임워크(persistence framework) JDBC로 처리하는 상당 부분의 코드와 파라미터 설정 및 결과 처리를 대신해줌 Map 인터페이스 그리고 자바 POJO를 설정 데이터베이스와 매핑해서 사용 가능 XML과 Annotation 설정을 통해 사용할 수 있음 MyBatis 동작 구조 MyBatis는 SQL을 처리하고 Java 객체와 DB간의 매핑을 처리한다. MyBatis 구성 요소 MyBatis는 SqlSession 인터페이스를 통해 DB와 상호작용 한다. SqlSessionFactory SqlSession 객체를 생성하는 팩토리 클래스 런타임 도중 CRUD 처리 ..

article thumbnail
[TIL-50/240322] JDBC
TIL 2024. 3. 23. 00:40

JDBC JDBC란? Java Database Connectivity, 자바 프로그래밍 언어를 사용해 데이터베이스에 접근할 수 있도록 하는 자바 API JDBC를 이용하여 DB에 접속, SQL 실행, 데이터를 가져오거나 삭제하는 등 데이터를 다룰 수 있음 JDBC가 등장하게 된 배경 DB 접근의 표준화를 위해서 등장 JDBC 등장 이전 DB마다 존재하는 고유한 API를 직접 사용 이에 따라 개발자는 기존의 DB를 다른 DB로 교체해야하는 경우 DB에 맞게 기존의 코드도 모두 수정해야 했으며 심지어 각각의 DB를 사용하는 방법도 새로 학습해야 했음 → JDBC의 표준 인터페이스 덕분에 개발자는 DB를 쉽게 변경할 수 있게 되었고 변경에 유연하게 대처할 수 있게 됨 JDBC를 알아야 하는 이유 JDBC는 매..

article thumbnail
[TIL-46/240318] File Upload & Download
TIL 2024. 3. 19. 08:55

File Upload 파일 업로드 클라이언트가 서버로 파일을 전송하는 과정 여러 개의 파일을 업로드 할 수 있음 기존 방식의 Form 기존에 사용하던 은 문자 위주의 데이터를 사용 enctype="application/x-www-form-urlencoded" 기본 값(생략 가능) HTTP Body에 문자로 key=value 형태로 전송하고, 여러 개의 데이터라면 & 기호를 통해 구분하였음 파일 업로드 방식의 Form 파일은 문자가 아닌 바이너리 데이터를 전송 파일만 전송하는 것이 아니라 다른 데이터를 같이 전송하기도 함 enctype="multipart/form-data", method="POST" 필수 여러 개의 파일을 업로드하고 싶다면 multiple="multiple" 속성 추가 필요 참고할 블로그..

profile on loading

Loading...