분류 전체보기(545)
-
unqualified name
"단순 이름" (unqualified name)이라는 용어는 Java에서 주로 클래스, 인터페이스, 또는 메서드의 이름을 특정한 컨텍스트 없이 단독으로 지칭할 때 사용됩니다.자세한 설명:단순 이름(Unqualified Name):정의: 단순 이름은 패키지나 클래스의 경로 정보를 포함하지 않은, 그 자체로만 존재하는 이름을 말합니다. 예를 들어, java.util.List 클래스에서 List는 단순 이름입니다.예시:클래스 java.util.ArrayList에서 ArrayList가 단순 이름입니다.클래스 com.example.MyClass에서 MyClass가 단순 이름입니다.완전한 이름(Qualified Name:정식 이름):정의: 완전한 이름은 클래스나 인터페이스의 패키지 경로를 포함한 전체 이름을 의미합..
2023.05.01 -
Chapter 7 프로젝트 설정 관련
보호되어 있는 글입니다.
2023.05.01 -
WebDataBinder
📌 WebDataBinder란?WebDataBinder는 웹 요청 파라미터를 JavaBean 객체로 바인딩하는 특별한 DataBinder입니다.📌 서블릿 API에 종속되지 않으며, ServletRequestDataBinder와 같은 구체적인 변형 클래스의 기본 역할을 합니다.📌 주요 사용 사례:컨트롤러에서 폼 데이터를 객체로 자동 변환JSON 데이터를 Java 객체로 변환데이터 유효성 검사 수행커스텀 변환기 적용 가능⚠️ 보안 경고:데이터 바인딩을 사용할 때 외부 클라이언트가 특정 객체 그래프를 조작할 위험이 있으므로,허용되지 않은 필드 바인딩을 막고 적절한 보안 조치를 취해야 합니다.✅ WebDataBinder의 주요 기능1️⃣ 데이터 바인딩 (HTTP 요청 → Java 객체)WebDataBind..
2023.05.01 -
Dependency Injection of Spring Framework
스프링 프레임워크에서 의존성 주입을 수행하는 방법은 더 다양합니다.1. 생성자 주입 (Constructor Injection)설명: 생성자를 통해 의존성을 주입하는 가장 권장되는 방식입니다.예시:@Componentpublic class MyService { private final MyRepository repository; public MyService(MyRepository repository) { this.repository = repository; }}2. 세터 주입 (Setter Injection)설명: 세터 메서드를 통해 의존성을 주입하는 방식입니다.예시:@Componentpublic class MyService { private MyRepository rep..
2023.05.01 -
Separation of Concerns(관심사 분리)
관심사의 분리(Separation of Concerns) 원칙 설명"관심사의 분리(Separation of Concerns, SoC)"는 소프트웨어 설계에서 중요한 원칙 중 하나입니다. 이 원칙은 각 부분이 자신의 관련된 기능만을 담당하도록 하여 코드의 가독성을 높이고, 유지보수를 쉽게 하며, 오류 발생 가능성을 줄이는 데 목적이 있습니다. 자바에서는 클래스를 통해 관심사를 분리할 수 있으며, 다양한 방법으로 구현될 수 있습니다. 대표적인 예로는 모듈화, 계층화, 컴포넌트 기반 개발 등이 있습니다.자바 예제: 쇼핑 애플리케이션이 예제에서는 간단한 쇼핑 애플리케이션을 만들어 보겠습니다. 주요 구성 요소는 상품 정보를 관리하는 Product, 데이터베이스 접근을 담당하는 ProductDao, 비즈니스 로직을..
2023.05.01 -
Maven Build System
개요메이븐은 프로젝트 객체 모델(Project Object Model)이라는 개념을 바탕으로 프로젝트 의존성 관리, 라이브러리 관리, 프로젝트 생명 주기 관리 기능 등을 제공하는 프로젝트 관리 도구입니다. 또한 플러그인을 기반으로 소스 코드로부터 배포 가능한 산출물을 만들어 내는 빌드 기능 뿐만 아니라 리포팅 및 documentation 작성 기능 등을 제공합니다. 설명Maven 특징Maven 장점Maven 단점 • 뛰어난 의존성 관리- 의존성 자동 업데이트-저장소를 통한 라이브리 일괄 관리 • Repository 관리의 불편함- Maven 프로젝트의 급속한 발전으로 central repository가 제공하는 라이브러리들이빠르게 증가하고 있으나 아직 3rd 파티 라이브러 등 미제공 라이브러리들이 있음..
2023.05.01