본문 바로가기

프로그래밍

[Spring Framework] Spring Security CSRF 적용 폼 전송시 아래를 반드시 추가할 것. 상단에 스프링 시큐리티 taglib를 추가하고 를 이용하여도 된다. security-context.xml 에서 아래와 같이 csrf를 설정하면 되며 package com.bellsoft.exchange.custom.authentication; import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import org.springframework.security.web.util.matcher.OrRequestMatcher;import org.springframework.security.web.util.matcher.RegexRequestMatcher;import org.springfra..
[Spring Framework] rootContext, servletContext spring framework 을 사용하면서 무심코 지나치기 쉬운 context config에 대한 기본적인 내용입니다.spring은 계층구조를 가지는 multi context 환경을 구성할 수 있도록 해주며 이 spring의 context에 대한 설정을 크게 두가지로 나눈다면 root context와 servlet context로 볼 수 있습니다.servlet context의 경우 web application의 client의 요청을 받기 위한 entry point로서의 서블릿의 context 설정이라고 볼 수 있습니다. 따라서 해당 context의 설정에는 요청에 대한 처리를 해줄 controller의 매핑설정(handler mapping)과 요청처리 후 view처리를 어떻게 할 것인가에 대한 설정(v..
[Mybatis] 한글깨짐 해결 참조http://miconblog.com/tc/sohn/563http://blog.naver.com/PostView.nhn?blogId=kobell9&logNo=90149920026 1. Spring 설정web.xml 에 아래와 같이 Spring 에서 제공하는 filter를 설정해준다.(POST를 한글처리를위한 설정)encodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8encodingFilter/*servelt-context.xml 설정 2. Server 설정 Server.xml(GET 한글 처리를 위한 설정) 3. jsp 설정 4. Mybatis 입력시 한글깨짐 한글입력시깨짐문제 발생jdbc.url=jdbc:my..
[Spring] 에러처리 + 에러페이지 커스터마이징 하기 오늘의 포스팅 내용은 바로 Spring Framework에서 에러가 발생했을 시 처리하는 방법에 대해서 알아보려고 해요. 크게 네가지 파트로 나눌껀데요~이유는 Spring Security에 의해서 돌아가는 에러는 처리방법이 약간 까다롭기때문이에요. (1) AJAX를 이용하는 서비스가 로그인이 필요할 경우(2) 에러페이지 커스터마이징(3) 일반 에러 처리(4) NoHandlerFoundException(5) AccessDeniedException 위 네가지에 대해서 포스팅을 할껀데 1,2,3번은 모두 Spring Security가 관리해요.그래서 다루기가 약간 까다롭지요~ 그럼 포스팅을 시작해볼까요! (1) AJAX를 이용하는 서비스가 로그인이 필요할 경우사실 오늘 하는 포스팅중 가장 필요한 포스팅이 아닐..
[Mysql] 사용자 권한 설정 사용자 권한이란?사용자에 따라서 접근할 수 있는 DB 데이터와 사용할 수 있는 기능을 제한GRANT사용자를 생성하고, 권한을 부여 (grant : 승인하다)# 문법 GRANT 권한 ON 데이터베이스.테이블 TO '아이디'@'호스트' IDENTIFIED BY '비밀번호' 사용자의 제한DB 서버에 접속하는 사용자를 제한한다.아이디@호스트 중에서 호스트는 접속자가 사용하는 머신의 IP를 의미한다. IP를 특정하지 않으려면 ‘%’를 사용dev@123.100.100.100 : IP 123.100.100.100인 머신에서 접속한 ID devdev@% : IP 관계없이 ID가 dev인 사용자대상의 제한사용자가 제어할 대상이 되는 데이터베이스, 테이블을 지정*를 사용하면 모든 데이터베이스, 테이블을 제어 대상으로 함 ..
[MariaDB] 설치, 설정 , DB 생성, 권한부여 1. MariaDB를 설치mariadb-10.2.8-winx64.msi를 받아서 설치한다.2. MariaDB에 로그인 및 계정 생성시작 > 모든 프로그램 > MariaDB 10.1 > Command Prompt 오른클릭 > 자세히 > 관리자 권한으로 실행 root 유저로 접속 mysql -uroot -p[비번] 임의의 계정 생성 create user 'portal' identified by '비번'; 윈도우에서와 리눅스에서는 계정 생성시 '@도메인'을 붙이고 안붙이고의 차이가 있는 모양임. 지금은 윈도우에서 계정 생성한 부분의 예임 3. DB의 캐릭터셋 조회 및 설정쿼리로 캐릭터 셋을 조회하면 아래처럼 결과가 나왔다. show variables like 'c%'; +---------------------..
[Srping] 스프링에서 밀고 있는 DBCP - HikariCP HikariCPBoneCP를 재치고 놀라운 속도를 자랑하는 DB Connection Pool입니다. BoneCP의 경우, Hibernate 4.x 버젼에서의 지원이 조금 애매해진 경향이 있습니다. (최신 버젼의 Hibernate에서는 에러가 발생합니다.) 반면에 HikariCP의 경우에는 Hibernate와의 통합 jar가 나오는 등, 계속해서 밀어주고 있다는 느낌이 강하게 듭니다.GitHub pagehttps://github.com/brettwooldridge/HikariCPHibernate + HikariCPbuild.gradle에 다음 dependency들을 추가합니다. compile 'org.slf4j:slf4j-api:1.7.5' compile 'com.zaxxer:HikariCP:2.0.1' ..
[Tomcat] 아파치 톰캣 따라잡기 -2 안녕하세요. 이번에는 전에 한 번 포스팅 했던 '아파치 톰캣7 따라잡기 Part.1"에서 정리하지 못한 부분을 추가적으로 포스팅하도록 하겠습니다. 책을 정리하는 입장에서 제가 잘 몰랐던 부분이나 필요 부분을 문서화 시키는 작업임에 다소 설명적인 부분이 많이 생략될 수 있음을 이해해주시면 감사하겠습니다. 정리를 시작하도록 하겠습니다. 왜 아파치 HTTP 서버를 사용하는가?# 정적 컨텐츠를 효율적으로 제공톰캣도 정적 컨텐츠를 제공할 수는 있지만 아파치 HTTP 서버에 비해 반응 시간이 느리다. # 10퍼센트 속도 증가아파치 HTTP 서버는 콤캣과 비교해 10퍼센트 정도 더 효율적으로 정적 컨텐츠를 제공한다. 사용자 부하가 높은 상황에서는 아파치를 통합하는 것이 좋다. # 클러스터링아파치는 톰캣에 다중 인스턴..