BackEnd 6

[Java] EntityNotFountException

EntityNotFountException 이 @ManyToOne 에서 발생했을 때 처리방법 @NotFound(action=NotFoundAction.IGNORE) 위 어노테이션을 추가하면 됨 기본은 ignore이 아닌 Exception optional=true 옵션은 many에 있는 왜래키 컬럼의 값이 null인 케이스를 지정하고, notFound는 컬럼의 값이 있지만, pk로 가지는 데이터가 one에 해당하는 테이블에 없는 케이스를 지정해줌 출처 : https://fusidic.tistory.com/76 JPA - EntityNotFoundException JPA를 이용해 개발하는 중에 EntityNotFoundException 이 발생했다. @ManyToOne 관계에서 발생한 에러인데 평소에 쓰던 ..

BackEnd/Java 2022.12.01

SMTP를 이용한 자동 메일 보내기

SMTP란? 간이 전자 우편 전송 프로토콜(Simple Mail Transfer Protocol, SMTP)은 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜이다. 메일 서버간의 송수신뿐만 아니라, 메일 클라이언트에서 메일 서버로 메일을 보낼 때에도 사용되는 경우가 많다. 간단히 Simple Mail Transfer Protocol의 약어로 이메일을 전송하기 위해서 사용되는 정도로만 기억해두고 시작 기본설정 1. 개발 환경 - [NAVER] Springboot - Gradle 우선 기본 개발환경은 Springboot와 Gradle입니다. Maven환경이어도 크게 다를 건 없지만 라이브러리를 셋팅하는 부분이 조금 다르니 그 부분은 잘 해결해주시길... Gmail이나 nate, daum 등 여러 메일이 있..

BackEnd/Spring 2022.11.16

[Java] 파일 업로드 구현시 한글깨짐 현상 / 인코딩 하기

A. 한글깨짐 인코딩 1. front form 에서 아래와 같이 multipart값으로 받아오고 .... 2. java 인코딩이 필요한 파일을 아래 코드를 써서 인코딩해줌 String name = multipartRequest.getParameter("name"); name = new String(name.getBytes("8859_1"),"utf-8); B. Java 인코딩 확인하기 new String(문자열.getBytes("charSet"), "charSet"); 1. 문자열을 getBytes("charSet") 메소드 - String을 해당 charSet으로 인코딩 2. String 객체를 인코딩 방식을 추가하여 생성 - 인코딩된 문자를 Java String 객체(유니코드) 변환 => 만약 깨지는..

BackEnd/Java 2022.04.08

[Java] 파일명 저장시 암호화, 파일 이름 중복 방지하기

1. UUID 원래 파일명 제거한 후 확장자와 합쳐서 리턴 String extension = fileName.substring(fileName.lastIndexOf("."), fileName.length()); UUID uuid = UUID.randomUUID(); String newFileName = uuid.toString() + extension; 출처: https://enai.tistory.com/38 UUID로 파일 이름 중복 방지하기 UUID는 범용 고유 식별자(Universally Unique IDentifier)를 뜻한다. UUID에 관한 더 자세한 내용은 Kakao DB Team MySQL 서버에서 UUID 활용에서 참고. 파일을 업로드할 때, 같은 이름의 파일을 업로드하면 기존.. en..

BackEnd/Java 2022.04.08

[Spring] String 형식으로 들어온 날짜 객체 변환

코드 내용 : String 객체를 Date 형식으로 만든 후 원하는 날짜로 계산 후 다시 String으로 포멧후 비교 코드 설명 1. "2022-01-18" 와 같은 형식으로 들어오는 문자열(날짜) 객체를 받아서 = spcdate 2. formatter로 문자열 객체를 파싱해 날짜 객체로 만들어 준 후 3. Calendar로 날짜 계산을 한 후 4. 다시 formatter로 원하는 형식으로 날짜 객체를 변환해줌 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); String strDate = spcdate; Date date = new Date(formatter.parse(strDate).getTime()); Calendar cal = Ca..

BackEnd/Spring 2022.01.18

[Java] 파일 저장 및 파일 명 특수 문자 제거

if(files!=null){ for (MultipartFile file : files) { String originalFileName = file.getOriginalFilename(); String fileName = originalFileName.substring(0,originalFileName.lastIndexOf(".")); //이름 추출 String extension = originalFileName.substring(originalFileName.lastIndexOf(".")+1); // JPG extension = extension.toLowerCase(); //확장자 소문자 변환 JPG -> jpg String match = "[^\uAC00-\uD7A3xfe0-9a-zA-Z\\s]";..

BackEnd/Java 2021.12.29