본문 바로가기

전체 글59

Controller에서 Request을 hashmap으로 받기 보통 받아온 request 파라미터를 @RequestMapping("/main.do") public String main(HttpServletRequest request) { String id = request.getParameter("id"); System.out.prinln(id); return "main"; } 이런식으로 받아오지만 hashmap으로 변형해주는 메소드를 추가하여 좀더 쉽게 사용이 가능하다. package cms.cmm.util; import java.io.IOException; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.net.. 2022. 5. 31.
update replace 메일발송이력 기능을 추가하던 중 받는이 이메일에 undefind가 들어가는것을 발건하였다 갯수가 몇개 없으면 하나하나 바꿔주면 되지만 db에 갯수가 100개이상 넘어가면 시간이 너무 많이 소요 되기 때문에 mysql replace 기능을 사용하여 한번에 변경하는것을 구현하였다. replace는 선택한 문자를 원하는 문자로 변경해주는 놈이다. 현재 부분적으로 undefined가 들어가 있다. update [테이블] set [컬럼]=replace([컬럼], 'undefined,', ''); 해당 명령어를 실행한 후 결과 2022. 5. 19.
.each문으로 td값 비교 모든 tr에 td값을 비교해서 날짜 시간 중복되는것 걸러내기 if( $(item).find("[data-date]").val() || $(item).find("[data-time]").val() || $(item).find("[data-place]").val() ) { var date = $(item).find("[data-date]").val(); var time = $(item).find("[data-time]").val(); //time에 '~'포함 여부 체크 if(time.indexOf('~') == -1){ alert("시간대 설정을 다시해주세요.\n예) 10:00 ~ 12:00"); isProgress = false; return false; } var trLength = $(item).clo.. 2022. 5. 12.
버튼으로 테이블 tr, td 제어하기 table사용시 tr > td 에 버튼을 만들고 해당 버튼을 클릭시 버튼이 포함된 tr > td를 제어하는 방법 $("[id='resetBtn']").click(function(){ if(confirm("초기화 하시겠습니까?")){ var btn = $(this); var tr = btn.parent().parent(); var td = tr.children(); td.find("[data-consultant-date]").val(""); td.find("[data-consultant-time]").val(""); td.find("[data-consultant-place]").val(""); } }); 버튼 클릭시 해당 tr > td들만 제어하는 제이쿼리 이며 날짜, 시간, 장소를 초기화 하는 기능을 추.. 2022. 5. 10.
NICE 인증 크로스도메인 에러 나이스인증 회원가입시 에러가 발생한다고 연락이 와서 찾아보니 www.test.com도 접속이 가능하도록 도메인을 추가한것이 문제 였다. returnUrl에 test.com만 해뒀더니 www.에서 접속하면 크로스 도메인 에러가 발생하였음. 접속 url에 따라 returnUrl을 변경하는 방식으로 오류를 잡았다. String requestUrl = request.getRequestURL().toString(); String url = "https://test.com/"; if(requestUrl.indexOf("www") != -1){ url = "https://www.test.com/"; } // CheckPlus(본인인증) 처리 후, 결과 데이타를 리턴 받기위해 다음예제와 같이 http부터 입력합니다. .. 2022. 5. 9.
톰캣 세션풀림 현상 사용자와 관리자페이지 각각 프로젝트를 나누어 개발하였는데 실서버에 각각 올리니 사용자에서 로그인 후 관리자페이지에서 액션을하면 사용자페이지에서 로그인세션이 날라가는 현상이 발생하였다. 반대의 경우도 마찬가지 개발당시 사용자프로젝트를 만들고 그걸 그대로 복붙해서 관리자 프로젝트로 사용해서 그런건지 .. 해결 방안 > 각각의 프로젝트server context.xml에 세션 쿠키이름을 다르게하여 저장하였음 에러발생 : 처음 서버 기동 후 로그인하면 관리자는 url에 JSESSIONID=????? 나오면서 500에러발생 뒤로가기 후 다시 시도하면 정상 작동 > web.xml에 30 COOKIE 2022. 4. 29.
소수점 1개만 입력 가능하도록 달러를 입력받는 경우가 있었는데 소수점이 여러개 찍히는 경우가 생겼다. 스크립트를 통해 2개이상 입력시 지우는 방식과 0~9숫자와 소수점만 입력가능하도록 한다. 2022. 4. 29.
MYSQL 컬럼이름이나, 테이블이름으로 찾기 SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = '컬럼이름'; 위에 명령어를 사용하면 컬럼이름이들어간 스키마, 테이블이름, 컬럼이름이 나온다. where절을 적절하게 변경하여 유용하게 사용할 수 있다. 2022. 4. 29.
메인페이지 이미지 로딩 시간 줄이기 메인페이지에 이미지가 많거나 용량이 많은 것들이 있으면 로딩시간이 길어진다. 이때 lazy라는 것을 사용하여 로딩시간을 많이 단축 시킬 수 있다. lazy는 이미지 로딩을 하지 않고 있다가 사용자가 해당위치에 왔을때 이미지를 로딩하는 것으로 페이지 로딩시간을 단축시켜준다. 이미지 슬라이드에서 이미지가 안나오는 경우도 종종 생김으로 무조건 거는게 좋은건 아닌 것 같다. 2022. 4. 29.