전체 글 155

공개키암호

공개키 (Public Key): 누구나 접근 가능하며, 데이터를 암호화하거나 서명을 검증하는 데 사용.개인키 (Private Key): 소유자만이 가지고 있으며, 암호화된 데이터를 복호화하거나 디지털 서명을 생성하는 데 사용. 작동 원리:공개키로 암호화된 데이터는 해당 개인키로만 복호화 가능. 개인키로 생성한 서명은 공개키로 검증 가능.예시를 들어봅시다public class Main_01 { public static void main(String[] args) { String plain1 = "안녕하세요 김석범입니다"; String cipher1 = CipherRSA.encrypt(plain1); System.out.println("암호문 : " +cipher1..

카테고리 없음 2025.06.25

hash

요즘시대에 보안은 필수이다DB에 평문으로 개인정보를 저장하는것은 말이안됨!(단방향 해쉬알고리즘몇개를 알아보자) package ex01_hash;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import java.security.Security;import java.util.Arrays;import java.util.List;import java.util.Scanner;import java.util.Set;public class Main_01 { public static void main(String[] args) throws NoSuchAlgorithmException { byte[] plain = nul..

카테고리 없음 2025.06.24

부트캠프91일차 (new Project JPA,Thymeleaf사용,transaction,Log4j2)

1) 새로운프로젝트 Shop3생성 이름은 shop3로 하는 스프링부트에서 다음과같은 라이브러리들을 추가해준다JPA와 Thymeleaf도입 shop3/logic/itempackage kr.gdu.logic;import org.springframework.web.multipart.MultipartFile;import jakarta.persistence.Entity;import jakarta.persistence.Id;import jakarta.persistence.Table;import jakarta.persistence.Transient;import jakarta.validation.constraints.Max;import jakarta.validation.constraints.Min;import jaka..

Spring 2025.06.23

부트캠프91일차 (네이버검색api , Scheduling스케줄링)

1) 네이버검색API /WEB-INF/views/naver/search.jsp 블로그뉴스 책백과사전 카페글 지식인지역 웹문서이미지 쇼핑전문자료 페이지 별 검색 갯수 : 102050    검색어 : 검색 1-1)클라이언트 코딩 application.properties (gitIgnore처리해놔서 git에 안올라감)내가올리는 gitRepository가 private가 아니므로 이런비밀암호같은경우는 application에 담아두는것임자바에서 @Value(${필드명})으로 사용이가능함!!!naver.secret =나의 s..

Spring 2025.06.23

Exception과 AOP의 동작원리

exception/shopException.javapackage kr.gdu.exception;import lombok.Getter;@Getterpublic class ShopException extends RuntimeException{ private String url; public ShopException(String msg,String url) { super(msg); this.url = url; }}난 다음과같이 runtimeException(컴파일러가 강제하지 않는 실행 시간 예외)를 상속받아 클래스를 하나 만듬 aop란?AOP는 공통 관심사를 분리해 코드의 가독성과 유지보수성을 높이는 기술로,Spring AOP나 AspectJ를 통해 쉽게 구현할 수 있습니다. 장점:코드 중복 감소...

Spring 2025.06.21

부트캠프90일차( api)

1)네이버로그인 API2)결제시스템API(포트원)3) 챗봇활용 ( 유료라서 강사님 아이디활용) 1) 네이버 로그인 APIhttps://developers.naver.com/main/ NAVER Developers네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음developers.naver.com해당사이트에 접속해 어플리케이션이름(식별용) 과 프로필사진을 제외하고 모두 필수버튼에 체크를 해준다 요청URL등을 자신의 서버에맞게 설정을 해주면어플리케이션이 만들어짐 getMapping("login") @GetMapping("login") public S..

카테고리 없음 2025.06.20

Spring객체 저장방식과 폼유효성검사

BindingResult와 @Valid를 이용해 폼 유효성검사를 하는 방법과 설명 1) message.properties 사용 전 세팅법#message#message.properties파일을 사용하겠다는 의미 (인코딩방식은 UTF-8)spring.messages.basename=messagesspring.messages.encoding=UTF-8application.properties에서 다음과같이 message.properties를 사용하겠다고 선언 error.dto.pass = 비밀번호가틀려요내가 message.properties에 설정해놓은 에러명과 문자 2) 사용과 설명DTOpackage kr.gdu.dto.board;import jakarta.validation.constraints.NotEmp..

지식공부 2025.06.19

객체지향프로그래밍_OOP(Object-Oriented Programming)

OOP(Object-Oriented Programming) 자세한 설명1. OOP(객체지향프로그래밍)란?OOP는 프로그램을 객체(Object) 단위로 설계하고, 객체들이 상호작용하며 동작하도록 만드는 프로그래밍 패러다임이야. 현실 세계의 개념(학생, 게시글, 채팅 세션)을 객체로 모델링해서 코드의 재사용성, 유지보수성, 확장성을 높이는 게 목표야.핵심 아이디어:객체: 데이터(속성)와 기능(메서드)을 하나로 묶은 단위. 예: Student 객체는 studentId, name 속성과 enrollCourse() 메서드 가짐.클래스: 객체의 설계도. 예: Student 클래스는 학생 객체의 틀.장점:코드 재사용(상속, 다형성), 모듈화(캡슐화), 유지보수 쉬움.대규모 프로젝트(학사관리시스템, 게시판) 관리에 적..

지식공부 2025.06.18
반응형