gradle vs maven

프로젝트 빌드는 소프트웨어 개발 과정에서 핵심 단계 중 하나입니다. 이 단계를 효과적으로 관리하고 자동화하기 위해 다양한 빌드 도구가 등장했습니다. 그 중에서도 Java 개발자들 사이에서 널리 사용되는 Maven과 Gradle은 각각의 독특한 특징을 가지고 있습니다. Maven Apache Maven은 Apache Software Foundation에서 개발한 빌드 도구로, XML 기반의 프로젝트 관리 도구입니다. Maven은 프로젝트의 라이프사이클 관리, 의존성 관리, 라이브러리 관리를 … Read more

[Spring] DB 컨넥션 풀 이용하여 접속하기

pom.xml에 JPA와 Hibernate을 사용하기 위해 의존성 추가 application.properties에 DB 설정 추가 Spring에서는 보통 Bean을 이용해 DataSource를 생성하지만 직접 생성할 수도 있습니다. HikariCP를 이용해 Connection Pool을 관리하게 되는데, 따로 코드는 필요없습니다.

[Spring] DAO, DTO, VO 정리

특성 DAO (Data Access Object) DTO (Data Transfer Object) VO (Value Object) 목적 데이터베이스와의 상호작용, 영속성 계층 구현 계층 간 데이터 전송 도메인 객체의 불변성 유지 기능 데이터베이스에 대한 CRUD 작업 수행 계층 간 데이터 전송 및 캡슐화 도메인 객체의 상태 저장 역할 영속성 계층의 역할을 수행 서비스 계층과 뷰 계층 간 데이터 전송 도메인 … Read more

DAO, VO 차이점

DAO (Data Access Object) 데이터베이스에 접근하고 데이터를 조작하는 역할을 담당합니다. 데이터베이스와의 상호 작용을 담당하는 객체로, 주로 CRUD (Create, Read, Update, Delete) 연산을 수행합니다.비즈니스 로직과 데이터베이스 액세스를 분리하여 유지보수성을 향상시킵니다.데이터베이스 연결, 쿼리 수행, 결과 반환 등을 처리합니다.예시: VO (Value Object) 비즈니스 로직에서 사용되는 데이터를 캡슐화하고 전달하는 역할을 담당합니다. 불변성(Immutable)을 가지며, 데이터의 일관성과 불변성을 유지합니다.비즈니스 로직에서 사용되는 … Read more

Spring MVC 패키지 구조

MVC (Model-View-Controller) 패턴을 적용하는 자바 어플리케이션의 패키지 구조는 일반적으로 다음과 같이 구성됩니다. 이 구조는 어플리케이션의 크기와 복잡성에 따라 다를 수 있으며, 작은 프로젝트에서는 더 간단하게 구성될 수 있습니다. 모델 (Model): 패키지: com.yourcompany.model 또는 com.yourcompany.domain설명: 모델은 어플리케이션의 비즈니스 로직, 데이터 구조, 데이터베이스 연동 등과 관련된 부분을 담당합니다. 엔터티, DTO, 데이터베이스와의 상호 작용 등이 이 패키지에 위치할 … Read more

Spring 용어 정리

DTO (Data Transfer Object): DTO는 데이터 전송 객체를 나타냅니다. 주로 서로 다른 계층 간에 데이터를 전송하는 데 사용됩니다. 데이터를 담고 있는 일종의 컨테이너로, 데이터를 캡슐화하여 전송하는 데 도움을 줍니다. DAO (Data Access Object): DAO는 데이터 액세스 객체를 의미합니다. 데이터베이스와의 상호 작용을 처리하고, 데이터를 영속적으로 저장하거나 검색하는 데 사용됩니다. DAO 패턴은 데이터 액세스 로직과 비즈니스 로직을 … Read more

Spring 참고 사이트

https://spring.io/projects/spring-boot/ Spring이란??? 동적인 웹 사이트를 개발하기 위한 오픈소스 프레임워크 디자인패턴 Spring MVC라는 모델-뷰-컨트롤러(MVC) 사용한다. DTO란?? Client -> Controller -> Service -> Repository ->DB Client와 Controller 사이에 데이터를 주고 받을때 쓰는 것이 DTO이다. 왜 쓰는가? 필요한 정보만 보내주기 위해

Java에서 문자열 다루기

java에서 문자열이 일치하는지 확인할때 주의점이 있습니다! == 연산자는 문자열 내용을 확인하는 것이 아니라 참조를 비교하므로 문자열의 일치 여부가 아닙니다. substring() 예제 split() 예제 IndexOf()와 replace() 예제

파일 사이즈 구하기

파일 사이즈를 얻는 방법으로는 2가지 클래스가 있습니다. java.io.File, java.nio.file java.io.File의 length() 함수 이용하기 java.nio.file.Files의 size() 함수 이용하기 얻은 파일 사이즈는 모두 Byte 단위입니다. KB, MB, GB 형식으로 변환하려면 아래 함수를 이용하세여. 파일 사이즈를 얻는 것은 디스크 io가 발생하므로 사이트 접속시 마다 구하는 것은 좋지 않습니다.