일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 방문자추적기
- 페이스북서명운동
- 0원메가패스
- perplexity
- ChatGPT
- 애플페이
- wannacry
- 랜섬웨어
- 다음아고라사칭
- 토큰탈취
- 메플리
- 자바
- 젤프
- 취약점
- 베이직쎈
- Ai
- 이클립스
- Applepay
- 다음아고라서명운동
- 예제
- 윈도우11
- 2017티스토리결산
- 토스뱅크
- 2017 티스토리 결산
- 토큰털이
- 컨택리스
- 내방문자찾아주오
- 티스토리
- zelf
- 페이스북
- Today
- Total
목록공부 (19)
EdgeSecu

@RequestParam 으로 개별 MultipartFile 을 바로 받는 것 외에도, 폼 데이터를 묶어서 전달할 때 사용하는 커맨드 객체(command object) 에도 MultipartFile 필드를 선언해 놓고, 그 객체를 @ModelAttribute 로 받아올 수 있다는 뜻이야.즉, 이렇게 두 가지 방법이 있다는 거지:1. 개별 파라미터로 받기 (@RequestParam)@PostMapping("/upload")public String uploadFile(@RequestParam("file") MultipartFile file) { // file.getOriginalFilename(), file.transferTo(...) 등 사용 return "uploadResult";}HTML f..

🔁 DispatcherServlet이 뭔데?👉 DispatcherServlet은 Spring MVC의 핵심 서블릿이야.Spring MVC 구조에서 "중앙 집중 교통 정리" 역할을 함.클라이언트 요청이 들어오면 가장 먼저 DispatcherServlet이 받는다.그리고 알맞은 @Controller를 찾아서 실행시키고,실행 결과(View 이름)를 받아서 ViewResolver로 넘겨줘!💡 전체 흐름 요약 🌐 클라이언트가 /hello로 요청하면…Tomcat이 HTTP 요청을 받음해당 요청은 DispatcherServlet (Spring이 등록해둔 서블릿) 으로 전달됨DispatcherServlet은 요청 경로를 분석해서,👉 적절한 @Controller와 메서드를 찾아서 실행Controller에서 비즈..

model.addAttribute()는 스프링 MVC에서 컨트롤러가 뷰(예: Thymeleaf 템플릿)에 데이터를 전달할 때 사용하는 메서드야. 간단히 말해서, 컨트롤러에서 계산하거나 조회한 값을 뷰에서 참조할 수 있도록 “키–값 쌍”으로 저장해 주는 역할을 해.예를 들어:@GetMapping("/hello")public String hello(Model model) { String name = "철수"; model.addAttribute("userName", name); return "greeting"; // src/main/resources/templates/greeting.html}위 코드에서 model.addAttribute("userName", name)는 모델에 "userNam..
1. 제네릭에 primitive를 못 쓰는 이유타입 소거(Type Erasure)자바의 제네릭은 런타임에 타입 정보를 지우고(Object로 치환) 컴파일 시점에만 타입 안전성을 체크해.예를 들어 List → 실제 바이트코드상에는 List 로만 남고, 내부에는 Object 타입 요소를 저장primitive는 Object에 담을 수 없기 때문에, 제네릭 파라미터로 primitive를 허용할 수 없어하위 호환성(Backward Compatibility)제네릭은 자바 5에서 도입됐는데, 이전 버전과의 호환성을 위해 타입 소거 방식을 선택만약 List 처럼 primitive 전용 바이트코드를 만들면, 기존 자바 라이브러리와 충돌이 나기 쉬워참조형만 타입 파라미터로 허용자바 문법상 타입 파라미터 는 “참조형(ref..
함수형 인터페이스와 SAM 차이함수형 인터페이스: 하나의 추상 메소드만 가진 인터페이스. Java 8부터 @FunctionalInterface로 표시.SAM (Single 이Abstract Method): 하나의 추상 메소드를 가진 인터페이스의 개념.차이점: 함수형 인터페이스는 default와 static 메소드를 가질 수 있지만, 추상 메소드는 하나만 있어야 함.관계: SAM 개념은 함수형 인터페이스의 핵심이며, 함수형 인터페이스는 SAM을 기반으로 정의됨.함수형 인터페이스(functional interface)와 SAM(single abstract method)은 거의 같은 개념을 가리키지만, 미묘한 차이가 있:SAM 인터페이스“단 하나의 추상 메서드”만 갖는 인터페이스를 말해.Java 8 이전부터 ..
Static vs Instance: Java에서 static과 인스턴스 멤버의 차이Java에서 static 키워드를 사용하면 클래스 레벨 멤버를, 그렇지 않으면 인스턴스(객체) 레벨 멤버를 정의합니다. 두 가지를 비교해 보겠습니다.1. static 멤버 (클래스 레벨)공유: 모든 객체가 하나의 멤버를 공유합니다.접근 방법: 클래스이름.멤버 형태로 객체 생성 없이 바로 접근할 수 있습니다.주요 용도:공통 상태 유지 (예: 전체 인스턴스 개수 카운터)유틸리티 메서드 (예: Math.max(), Collections.sort())상수 선언 (예: public static final double PI = 3.14;)class Counter { static int totalCount = 0; // 클래스마..