본문 바로가기

반응형

전체 글

(495)
[Spring] redirect경로 redirect시 URL이 원하는 경로로 되지 않는다. redirect메커니즘 : redirect: 사용 -> 스프링 MVC는 HTTP 상태 코드 302 Found 반환 -> Location 헤더에 지정된 URL로 리디렉션 지시 여기서 발생한 문제는 redirect: 뒤에 지정된 경로가 상대 경로로 해석되기 때문에, 현재 경로(/ajax/loginProcess)를 기준으로 리디렉션 URL이 구성됨 Sol) return "redirect:/web/common/main";
[JSTL] Gradle에서 JSTL 설정하기 JSTL이 정상적으로 동작하지 않아 에러가 발생 그래서 JSTL를 재설정 하면서 설정 방법을 정리하기로 함 1. 의존성추가 //implementation 'javax.servlet:jstl' //스프링부트 3.0 미만 implementation 'jakarta.servlet:jakarta.servlet-api' //스프링부트 3.0 이상 implementation 'jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api' //스프링부트 3.0 이상 implementation 'org.glassfish.web:jakarta.servlet.jsp.jstl' //스프링부트 3.0 이상 2. 선언 3. 태그 - core 태그 출력 사용할 변수를 설정 설정한 변수 제거 예..
[CSS] 스크롤 달기 (feat.Overflow) scroll달기 div에 overflow스타일 추가, 그래도 적용이 안된다면 높이가 지정되어있는지 확인 ...
[gitHub] You are in 'detached HEAD' state. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. 찾아보니 복구 후에 remote HEAD값과 local의 HEAD값이 안맞아서 그런것 같다. 맞춰주려 여러 시도를 해봤지만 실패해서 가장 깔끔하고 단순한 방법으로 진행했다. ## 현재 브런치 및 HEAD확인 git branch -a ## test브런치 생성 git checkout -b test 현재 branch를 확인해보고 새..
[IntelliJ] IntelliJ 복구기능 프로젝트에서 우클릭후 하단에 로컬기록으로 가서 팝업을 띄우면 이렇게 나오는데 좌측에서 변경할 시점을 선택해 되돌리기를 누르면 그때로 복구가 가능하다. 스탬프는 build가 되면서 찍히는 것 같다. + ) Local History 보관 기간 - 기본값은 최근 5일치 보관 - 일수는 파일에 변경이 실제로 일어난 working day 로 산정함 - IntelliJ 의 JVM 옵션에 -DlocalHistory.daysToKeep=30 처럼 지정하여 변경할 수 있음 - 또는 IntelliJ 설정 중 Registry 설정에서 변경 가능
[POI] EXCEL업로드시 숫자타입 문자타입으로 변경 @Override public List uploadExcelFile(MultipartFile excelFile, Boolean dbInsertFlag, AdminSearchVO paramVO) { List list = new ArrayList(); Set groupCodes = new HashSet(); try { OPCPackage opcPackage = OPCPackage.open(excelFile.getInputStream()); XSSFWorkbook workbook = new XSSFWorkbook(opcPackage); XSSFSheet sheet = workbook.getSheetAt(0); for(int i=1; i
[POI] 엑셀 업로드시 중복값 체크 Set groupCodes = new HashSet(); ... XSSFCell cell = row.getCell(0); if(cell == null) { break; } if (null != cell) { String groupCode = cell.getStringCellValue(); if (groupCode.equals("")) { break; } // 중복을 확인하기 위해 varCode를 Set에 추가하고, 중복인 경우 해당 항목 스킵 if (groupCodes.contains(groupCode)) { continue; } data.setGroupCode(groupCode); groupCodes.add(groupCode); } if(null != cell) { data.setGroupCode(ce..
[Spring Security] CSRF 토큰 토큰 재생성시 Model에 담아야함 Controller String csrf = getCsrfToken(request); model.addAttribute("newToken", csrf); JavaScript function sample() { ... // 토큰과 헤더의 meta데이터 수정 const token = $("meta[name='_csrf']").attr("content"); const header = $("meta[name='_csrf_header']").attr("content"); var tags = ""; $.ajax({ url: '/amng/dataVariableMng/uploadExcelFile', data: formData, processData: false, contentType..

반응형