반응형

IT/development 226

[springBoot] springBoot Interceptor 로그인 체크

LoginInterceptor package study.thboard2.common.interceptor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.servlet.HandlerInterceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; @Slf4j //로그인 인터셉터 public class LoginInterceptor implements HandlerInterceptor { //아래처럼 의존성 주입하려면 config에서 @Bean으로..

IT/development 2023.05.13

[springBoot] spring boot jar파일 배포 삽질(feat. 리눅스)

스프링부트에서 jar파일 실행 시 옵션으로 profile등을 설정할 수 있는데 이것 때문에 이틀을 삽질해서 메모함 서버에서 쉘 스크립트를 아래와 같이 작성(옵션을 변수화), 실행 시 계속 profile을 찾지 못했었다. #이전 명령어대로 하면 계속 안된다. java -jar -옵션 -옵션.. deploy.jar 순서가 이런식이 되어야 된다. #이전 명령어는 java -jar deploy.jar -옵션 -옵션 이 순서니까 계속 안되던 거였다. 다음엔 절대 같은 실수하지 말자

IT/development 2023.05.13

[springBoot] 페이지네이션 처리(feat. Oracle)

xml /* 게시글 목록 조회 */ (#{pageNum} -1) * #{amount} ]]> SELECT COUNT(*) FROM BOARD 오라클 페이지네이션 쿼리 핵심 더보기 /* 샘플 SQL */ SELECT T2.rn , T2.id , T2.name , T2.email , TO_CHAR(T2.create_date, 'YYYY-MM-DD') AS createDate /* 쿼리의 가장 바깥쪽에서 날짜 -> 문자열 변환을 해주는게 성능에 좋다고 한다. */ FROM ( SELECT ROWNUM as rn , T1.id , T1.name , T1.email , T1.create_date FROM ( /* 1차 서브쿼리에서 등록일 내림차순으로 정렬 */ * 혹은 ROW_NUMBER() OVER(ORDER ..

IT/development 2023.05.07

[springBoot] UrlResource 사용 시 경로 에러

첨부파일 업로드 시 application.yml에 설정해 둔 물리 경로에는 정상적으로 저장되고 DB 테이블에도 잘 저장되는 상태 이 상태에서 파일 다운로드 하기 위한 코드에서 이미지 미리보기와 파일 다운로드 시 cannot be resolved in the file system for checking its content length 에러가 발생 했었다. "D:/upload/49379d4a-3e79-4dc4-b844-bd47c62c723d.jpg"로 탐색기에서 열어도 파일이 잘 열림. 그런데 계속 UrlResource에서 경로를 찾지 못했다. 한참의 삽질 끝에 해결됨 에러가 발생하는 코드는 위이고 아래는 정상적으로 작동되는 코드이다. UrlResource 객체의 인자값으로 "file:" + 파일경로를 전..

IT/development 2023.05.07

[JavaScript] 날짜 사이 일수 계산

//시작일, 종료일 사이 일수 계산(yyyymmdd 형식) function calDiffDays(startDate, endDate) { //시작일 const strDt = new Date(startDate.substring(0,4), startDate.substring(4,6), startDate.substring(6,8)); //종료일 const endDt = new Date(endDate.substring(0,4), endDate.substring(4,6), endDate.substring(6,8)); //일수 차이(절대값) let diffDays = Math.abs(endDt.getTime() - strDt.getTime()); //하루(밀리세컨드)로 나눈 뒤 반올림 return Math.floor..

IT/development 2023.04.29
반응형