본문 바로가기

반응형

JAVA

(22)
변수, 배열, 반복문 (2) import java.util.*;class Main { public static void main(String[] args) { String str = "Hello"; String input = null; Scanner kb = new Scanner(System.in); System.out.print("please enter an String :"); input = kb.next(); if(input == str) { System.out.println("String match ! "); }else { System.out.println("String do not ma..
변수, 배열, 반복문 (1) 코드에서는 들여쓰기가 중요하다.eclipes 경우에는 해당부분 선택하고 ctrl+i 해주면 된다. class Main { static int num; public static void main(String[] args) { int anotherNum = 5; num = 2; System.out.println(num + anotherNum); System.out.println("Num : " + num); System.out.println("AnotherNum :" + anotherNum); System.out.println("Sum :" + num + anotherNum); }}..
스웨거 (Swagger) APi 문서화, 디자인, 빌드, 테스트 사용 편리하게 한 프레임 워크 -> 스웨거는 RESTful API 서비스 개발하고 문서화 하는 데 도움을 주는 도구 모음 1. API 문서화 📄컨트롤러, 요청/응답 객체를 기반으로 API 문서를 자동 생성한다.명세서를 수동으로 관리할 필요가 없다. 2. Swagger UI 💻웹 브라우저에서 API 명세를 시각화해 보여준다.각 API에 직접 요청을 보내고 응답을 확인할 수 있어 테스트 용도로도 유용하다. 3. 코드 생성 ⚙️OpenAPI 스펙을 기반으로 클라이언트 SDK나 서버 스텁 코드를 생성할 수 있다.일관된 API 호출 구조가 필요한 팀에 적합하다. 4. API 테스트 🧪Swagger UI를 통해 다양한 파라미터와 헤더 조합으로 실시간 테스트가 가능하다...
Spring Boot 멀티 프로젝트 생성하기(3) Spring Boot 멀티 프로젝트 생성하기(2)Spring Boot 멀티 프로젝트 생성하기멀티 프로젝트를 왜 해야 하는가 영상을 보고 연습 삼아 멀티 프로젝트를 만들어 보고자 한다. 프로젝트 생성하기 프로젝트 이름은 delivery-service자바버전은 21로ha-yeong.tistory.com Spring Boot 멀티 프로젝트 생성하기멀티 프로젝트를 왜 해야 하는가 영상을 보고 연습 삼아 멀티 프로젝트를 만들어 보고자 한다. 프로젝트 생성하기 프로젝트 이름은 delivery-service자바버전은 21로 설정별도의 설정 없이 프로젝트ha-yeong.tistory.com build.gradle(:db) 는 lombok, jpa, mysql을 추가했다.group = 'org.delivery'v..
Spring Boot 멀티 프로젝트 생성하기(2) Spring Boot 멀티 프로젝트 생성하기멀티 프로젝트를 왜 해야 하는가 영상을 보고 연습 삼아 멀티 프로젝트를 만들어 보고자 한다. 프로젝트 생성하기 프로젝트 이름은 delivery-service자바버전은 21로 설정별도의 설정 없이 프로젝트ha-yeong.tistory.com이전 버전의 세팅 다음을 적어 보겠다. api의 build.gradle의 파일에 lombok과 springweb을 추가해 주었다. group = 'org.delivery'version = 'unspecified'configurations { compileOnly { extendsFrom annotationProcessor }}repositories { mavenCentral()}dependencies..
Spring Boot 멀티 프로젝트 생성하기 멀티 프로젝트를 왜 해야 하는가 영상을 보고 연습 삼아 멀티 프로젝트를 만들어 보고자 한다. 프로젝트 생성하기 프로젝트 이름은 delivery-service자바버전은 21로 설정별도의 설정 없이 프로젝트 생성 이제 루트에 있는 src를 삭제 다음으로 build.gradle의 파일을 열어서 아래와 같이 세팅plugins { id 'java' id 'org.springframework.boot' version '3.5.3' id 'io.spring.dependency-management' version '1.1.7'}bootJar.enabled = false // 루트 모듈은 실행 가능한 jar 생성 Xrepositories { mavenCentral()}subprojects {..
Spring Security 이해 1. 스프링과 톰캣의 관계Tomcat: 웹 서버 역할 (HTTP 요청 처리)Spring Boot 앱은 실행될 때:Bean을 넣을 수 있는 컨테이너(Root/Web ApplicationContext) 생성요청을 처리할 DispatcherServlet을 만들어 Tomcat에 등록요청 → Tomcat → DispatcherServlet → Controller Bean이 뭔데 ⬇️더보기 ✔️ 일반 자바 객체 vs Spring Bean그냥 new로 만든 객체는 우리가 직접 관리해야 합니다.하지만 Spring Bean으로 등록하면, Spring이 대신 생성하고, 주입하고, 관리해줍니다. @Component // 또는 @Service, @Repository, @Controllerpublic class MyServic..
AOP (관점지향 프로그래밍) 비즈니스 로직을 건드리지 않고도 부가적인 기능(로깅, 보안, 트랜잭션 관리 등)을 쉽게 구현할 수 있는 방법 1. 특징  관심사의 분리: 비즈니스 로직과 부가적인 기능을 분리하여 코드의 가독성과 유지보수성을 높인다.적용 범위: Web Layer, Business Layer, Data Layer 어디서든 활용 가능.재활용성: 특정 시점(Pointcut)에서 원하는 동작(Advice)을 재활용할 수 있다.   2. 활용사례 로깅: 여러 로직에서 로그를 남기고 싶을 때, 각 메소드마다 추가하지 않고 AOP로 한 번에 처리 가능       ex ) 아래 사진처럼 a로직, b로직, c로직이 있을때 각각에 메소드 안추가하고 한번에 aop로 가능 !성능 측정: 메소드 실행 전후의 시간을 측정하여 성능 최적화에 도움...