| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 인텔리제이 한글 깨짐 해결법
- 자바 멀티스레딩
- OPP개념
- 포함관계
- Thread
- 시스템 환경 변수 편집
- Java데이터 타입
- IntelliJ IDEA
- 집합관계
- JAVA기초
- for문
- 인텔리제이 기초 설정
- break문
- 생성자
- 메서드
- 상수
- multi-threading
- continue문
- 연관관계
- 접근제어지시자
- 형 변환
- 반복문
- java변수
- JAVA객체지향
- 메서드 오버로딩
- Java
- While
- this예약어
- 컴파일
- function
- Today
- Total
목록분류 전체보기 (196)
최원종의 개발 블로그
Kakao Developers 사이트https://developers.kakao.com/ Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해 보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.com Kakao Developers 설정법 참고 블로그https://chl6698.tistory.com/177 kakao Developers(Oauth 2.0 설정) 설정 및 적용법https://developers.kakao.com/ Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해 보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developer..
https://github.com/User20202373/spring_blog_kor_v2_ex GitHub - User20202373/spring_blog_kor_v2_exContribute to User20202373/spring_blog_kor_v2_ex development by creating an account on GitHub.github.comhttps://developers.kakao.com/ Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해 보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.comServer To Server 란? 서버 투 서버(Server-to-Server, S2S)는 ..
로그인 시 권한 정보 함께 조회로 수정SQL문select u.*, r.role from user_tb uleft join user_role_tb r on u.id = r.user_idWHERE u.username = 'admin' AND u.password = '1234';UserService (로그인 및 회원가입 로직 수정) /user/Repository.java // 사용자명과 비밀번호로 사용자 조회(로그인용) + Role 정보 한번에 조회 @Query(""" SELECT distinct u FROM User u LEFT JOIN FETCH u.roles r WHERE u.username = :username AND u.password = :p..
역할 기반 접근 제어(RBAC, Role-Based Access Control)소프트웨어 시스템에서 사용자가 부여받은 역할(Role)에 따라특정 페이지나 기능에 대한 접근을 허락하거나 차단하는 보안 기법단순히 로그인을 했느냐 안 했느냐를 넘어,로그인한 사람이 '누구인가'를 판별하여 권한을 제어사용자에게 역할(Role)을 부여하고, 역할에 따라 관리자 전용 메뉴/페이지에 접근을 제어하는 기능구현- ADMIN (관리자) - 권한: 시스템의 모든 것을 제어할 수 있는 최고 권한. - 접근 가능 영역: 일반 페이지는 물론, '관리자 전용 대시보드', '회원 관리 메뉴', '설정 페이지' 등 민감한 관리자 전용 URL에 자유롭게 접근할 수 있음.- USER (일반 사용자) - 권한: 서비스의..
5단계 운영체제 별 경로 설정FileUtil 핵심 코드 분석public static final String IMAGES_DIR = Paths.get(System.getProperty("user.home"), "blog_uploads").toString();JVM 시스템 프로퍼티에서 사용자 홈 디렉토리를 동적으로 긁어온 뒤 blog_uploads 폴더를 결합하는 방식을 채택함으로써,윈도우에서는 C:\Users\유저명\blog_uploads, 맥에서는 /Users/유저명/blog_uploads로 자동 가공되는 크로스 플랫폼 설계FileUtil 코드⬇️더보기package com.tenco.blog._core.util;import com.tenco.blog._core.errors.Exception400;impo..
4단계 프로필 이미지 수정 하기update-form.mustache ( 회원 정보 수정 화면 코드 추가)⬇️더보기{{> layout/header}} 회원정보수정 {{#user.profileImage}} 프로필 사진 삭제 {{/user.profileImage}} {{^user.profileImage}} ..
3단계 프로필 이미지 삭제 하기FileUtil (파일 삭제 기능 만들기)코드 요약물리적 업로드 경로 단일화 : IMAGES_DIR 경로를 C:\\upload로 고정하여WebMvcConfig의 물리 리소스 위치와 1대1 매핑 구조 확립가상 핸들러와의 완벽한 연계 : FileUtil이 C:\\upload에 저장한 원본 파일을 WebMvcConfig가 /images/** 라는 가짜 주소로 변환하여 외부 노출 수행NIO Path 및 Files 자원 처리 : 파일 복사(copy) 및 물리 삭제(delete) 시 실제 지정된 C:\\upload 디렉토리를 타겟으로 명확히 연산 유도확장자 필터링 기반 보안 적용 : Content-Type 헤더가 image/로 시작하는지 검증하여 악성 실행 파일이나 문서 파일의 서버 ..
2단계 프로필 이미지 출력과 정적 리소스 핸들러 처리 header.mustach 파일 코드 수정 마이페이지회원정보보기--> UserController(마이페이지 요청 화면) // 마이페이지 요청 화면 @GetMapping("/user/detail") public String detailPage(Model model, HttpSession session) { User sessionUser = (User) session.getAttribute("sessionUser"); model.addAttribute("user", sessionUser); return "user/detail"; }user/detail.mustache (새로 생성){{> layout/hea..
1단계 - 프로필 이미지 저장하는 기능 구현application-dev.yml 파일에 추가server: servlet: encoding: charset: utf-8 force: true # 파일 업로드 설정 multipart: enabled: true # 파일 업로드 활성화 max-file-size: 50MB # 단일 파일 최대 크기 설정 (1MB) max-request-size: 100MB # 전체 요청(Request) 최대 크기 설정 port: 8080 User 엔티티 컬럼 추가 // User 테이블에는 이미지 파일명만 저장할 예정 (실제 데이터는 내 서버 컴퓨터 로컬에 저장할 예정) @Column(nullable = tru..