서블릿 필터(Servlet Filter) WAS = 톰켓 서버 사용자로부터 요청이 들어오면 적절한 소프트웨어를 실행하여 결과를 돌려준다. 서블릿을 실행시 메모리상에 존재하는데 메모리상에 존재하는 공간을 서블릿 컨테이너 라고 WAS는 서블릿을 실행해서 담아놓고 결과를 WAS로 돌려주게된다. 사용하지않으면 삭제된다. 서블릿이라는 것은 주구장창 만들었는데 또다른 서블릿을 만들수있는게 필터 라는 녀석이다. 서블릿 구현하면서 request.setCharacterEncoding(“euc-kr”); 설정 했었는데 한글을 쓰다 보니 사용자로부터 입력을 받을 때 저 설정을 무조건 해야한다. 서블릿을 만들일 이 많아 질텐데 다 저설정을 해야한다. 그렇다면 server.xml 에 들어오는 입력을 euc-kr 로 바꾸면 된다..
Web Programming/JSP + Servlet
1. 문제상황 > 개발중 비정상적인 was 종료로 인해 다음과 같은 에러와 함께 재시작 되지 않는다. 실 운영환경에서도 이런경우가 있다. Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s). 2. 문제확인 > was 재시작을 위한 포트가 이미 사용중이기 때..
한글 입력시 한글이 깨지는 경우 방법 해결하기 한글을 출력하는데 문제가 없었는데 아마 전달하다가 POST 하다가 문제가 발생한듯 하다 입력을 하면 UTF-8 로 전달 하면 대칭되는 연산 숫자의 크기가 영문자인 경우 1바이트면 충분하다 한글이나 중국어 일본어 등등은 영문자 위에다가 확장된 문자와 연관되어 있어서 2바이트가 사용된다. HI 라고 보내면 문자하나당 1바이트 해서 2바이트 POST하면 2바이트씩 해서 한문자로 인식한다 톰켓에서의 인코딩 방식은 이 문자를 ISO-8859-1 인코딩 방식을 이용한다. 6문자로 온걸 인식한다. 이렇게 읽으면 한글이 깨지고 그걸 출력하면 깨지는 문제가 발생 해결방법은 Servlet 에 입력도구에다가 UTF-8를 설정한다. 귀찬으면 톰켓 에 있는 server.xml 에다..
사용자로 부터해서 어떤값을 입력받을 때 개시글 업무적인 것을 한번에 get 요청을 하지 못하고 get 요청과 post 요청을 나눠서 한다. GET 방식은 1. 쓰고자하는 내용을 모두 URL 에 붙인다는거 자체가 문제가 있고 2. 쿼리스트링은 문서를달라고 하는게 옵션 값이 장문으로 보내는 것은 쿼리스트링의 올바른 방법이 아니다. GET방식 폼 액션은 @웹서블릿 과 같게 한다. 입력폼 name 값들을 request.getParameter 로 가져온다. out.println 으로 출력 한다. 폼액션으로 넘겨줄때 method="POST" 를 추가하면 된다. GET 방식으로 보냈을때 데이터값들이 보인다. POST로 보낼 시 Post 로 전달되면 쿼리값이 붙은것이아니라 다른곳에 붙게 됨 F12를 누르고 개발자 도구..