본문 바로가기

전체 글142

파일 업로드시 Unable to process parts as no multi-part configuration has been provided 에러 Unable to process parts as no multi-part configuration has been provided에러는 톰켓 8.5 버전을 사용할 때 파일을 업로드하려고 했더니 오류가 났다. 이 오류를 해결하기 위해서는 Server의 web.xml을 수정해 주어야 한다. 수정전 web.xml 수정후 web.xml WEB-INF/web.xml ${catalina.base}/conf/web.xml 2019. 6. 21.
스프링 Oracle 트랜잭션 관리 예제 스프링에서 트랜잭션을 관리하기 위해서 MyBatis와 Oracle JDBC 또는 HikariCP가 연동되어 있어야 한다. 연동을 한뒤 몇 가지를 세팅해 주어야 한다. pom.xml org.springframework spring-tx ${org.springframework-version} root-context.xml의 Namespaces 다시 source로 돌아가 아래의 내용을 추가해 준다. 예제를 위한 테이블 생성 CREATE TABLE tbl_1( data VARCHAR(10) ); CREATE TABLE tbl_2( data VARCHAR(4) ); tbl_1테이블과 tbl_2테이블을 만들었다. 두 테이블의 길이가 다른 이유는 트랜잭션이 제대로 동작하는지 확인을 하기 위하여 다르게 만들어 주었다... 2019. 6. 19.
스프링 AOP란? - (AOP적용 예제) AOP ( Aspect-Oriented Programing) aop는 관점 지향 프로그래밍 이라는 의미로 번역된다. aop를 이용하면 기존의 코드에 첨삭 없이, 메소드의 호출 이전 또는 이후에 필요한 로직을 수행하는 방법을 제공한다. 관점이라는 용어는 개발자들에게는 관심사라는 말로 통용된다. 관심사는 개발 시 피룡한 고민이나 염두에 두어야 하는 일이라고 볼 수 있다. ex) 파라미터가 올바르게 들어왔는가? 적절한 권한을 가지고 있는가? JoinPoint 관심사와 비즈니스 로직이 결합되는 지점을 조인 포인트라고 한다. ex) 메소드가 실행되기 전 또는 실행된 후 Pointcut 관심사와 비즈니스 로직이 결합되는 지점을 결정하는 것을 포인트컷이라고 한다. 구분 설명 execution(@execution) 메.. 2019. 6. 18.
jQuery Select Box 컨트롤 (내용 추가, 삭제 등) jQuery로 옵션 생성 $('#selectBox').html("1번째 옵션2번째 옵션"); 선택된(selected) 내용 읽기 console.log($('#selectBox option:selected').text()); 선택된(selected) 옵션 값(value) 가져오기 console.log($('#selectBox option:selected').val()); 옵션 추가 $('#selectBox').append("3번째 옵션"); selected 속성 추가 $('#selectBox').val("3").prop("selected","selected"); 첫번째 option 삭제 $('#selectBox option:first').remove(); 마지막 option 삭제 $('#selectBox .. 2019. 6. 12.
스프링 ajax통신 한글 깨짐 (물음표로 나오는 현상) ajax로 컨트롤러랑 통신을 하다보면 아래와 같이 한글이 깨져서 물음표로 나오는 현상을 볼 수 있다. 이럴 때, 아래와 같이 RequestMapping에 produces = "application/text; charset=utf8" 한 줄만 써주면 해결이 된다. produces = "application/text; charset=utf8"을 써주게 되면 ajax로 데이터를 보낼때와 ajax에서 데이터를 받을 때 모두 한글이 깨지지 않는다. 2019. 6. 12.
Java : 기상청 좌표 얻기 이전 글에서는 사용법을 알아 보았고, 이번 글에서는 기상청 api를 사용하기 위한 파라미터 x좌표와 y좌표를 얻기 위한 방법을 포스팅 하겠다. http://www.kma.go.kr/DFSROOT/POINT/DATA/top.json.txt 위 사이트에 가면 아래와 같은 값을 얻을 수 있다. (한글이 깨져서 보인다면 인터넷 익스플로어로 열어 마우스 우클릭 후 인코딩을 UTF-8로 변경해 주면 된다.) [{"code":"11","value":"서울특별시"},{"code":"26","value":"부산광역시"},{"code":"27","value":"대구광역시"},{"code":"28","value":"인천광역시"},{"code":"29","value":"광주광역시"},{"code":"30","value":"대.. 2019. 6. 7.
Java 기상청 날씨 API 사용하기(동네예보조회) 기존 (신)동네예보정보조회서비스와 중기예보정보조회서비스는 2020년 4월 28일 폐기. 기상청 API는 아래의 링크 확인 https://ming9mon.tistory.com/151 [JAVA]변경된 기상청 날씨 API (동네예보, 중기예보) 기존에 사용하던 (신)동네예보정보조회서비스와 중기예보정보조회서비스는 2020년 4월 28일 완전히 폐기된다고 합니다. 새로운 API는 https://www.data.go.kr/dataset/15000099/openapi.do 에서 동네예보 조회서비.. ming9mon.tistory.com 공공데이터포털의 날씨 API를 이용한다. https://www.data.go.kr/search/index.do 사이트에서 "동네에보정보조회서비스"를 검색하면 오픈 API를 찾을 수 .. 2019. 6. 7.
jQuery 회원가입 정규식표현 유효성 검사(자주쓰는 정규표현식 정리) 회원가입시 아이디나 패스워드 등 유효성을 검사해 주어야 하는데 이때 jQuery의 정규식 표현을 이용하여 유효성을 검사할 수 있다. var userIdCheck = RegExp(/^[A-Za-z0-9_\-]{5,20}$/); RegExp는 정규표현식을 사용하기 위한 객체이다. 정규표현식은 /와 /사이에 식을 넣어서 사용한다. 위와 같이 변수에 정규 표현식을 저장해 놓고, 다음과 같이 사용할 수 있다. if(userIdCheck.test($('#userId').val())){ console.log("정규표현식에 맞지 않음"); } 자주쓰는 정규표현식 숫자만 입력 가능 : /[^0-9]$/ ^는 문자의 시작 부분에 대응하여 $는 끝 부분과 대응하여 숫자만 입력 했는지 검사할 수 있다. 한글만 입력가능 : /.. 2019. 6. 5.
부트스트랩 Modal창 사용법 부트스트랩 Modal창을 이용하기 위해서는 부트스트랩의 css와 jQuery를 등록시켜 주어야 된다. 등록시킨 뒤 페이지에 Modal 소스를 넣어주고 스크립트로 보여주면 된다. Modal example 모달 테스트 모달테스트 X 내용 입력 !! 예 아니요 위의 예제에서 볼 수 있듯이 modal의 header와 body, footer로 나뉜다. 원하는 위치에 내요을 입력하고 예와 아니오를 누르면 된다. 스크립트 스크립트로 "모달 테스트"버튼을 눌렀을 경우 모달창이 보이도록 설정한다. 예를 눌렀을 경우 다른 이벤트를 주고싶다면 이벤트를 추가로 작성해 주면 된다. 전체 소스 모달 테스트 × 모달테스트 내용 입력 !! 예 아니요 2019. 6. 4.