분류 전체보기 (108) 썸네일형 리스트형 서블릿으로 Dispatchservlet 역할 구현하기-5 요구) 어떤 개발자는 member.do를 호출하면 MemberController가 아니고 UserController라고 네이밍함. 메소드는 이름이 다르지만 url규칙은 바뀔수 없음.이때 if else로 하려고 생각했으나 클래스가 많을때 그것을 다 if else로 바꿀수 없음.해결 방법 : 문서를 만들어서 저기에 알맞는 설정을 한 후 파서를 사용한다.~~~~~~~~~~~~~~~~~~~~~~~~~~~~HashMap CheckName(String controllerName,String method,String check){ HashMap map = new HashMap(); HashMap result = new HashMap(); String name; name = check.substring(c.. 서블릿으로 Dispatchservlet 역할 구현하기-4(reflection) Servlet.java~~~~~ String method = request.getParameter("method"); String check = request.getRequestURI(); //Reflection RF = new Reflection(method); try { Class cls = Class.forName("choice"); //리플렉션 할 클래스 choice c = new choice(check,method); // Field fld = cls.getField("method"); //불러오고 싶은값 System.out.println(c.method + "메소드 호출됨"); }~~~~~ choice.java import java.io.PrintWriter; public class choic.. 서블릿으로 Dispatchservlet 역할 구현하기-3 (reflection, method, invoke) 요구) 메소드나 클래스 값이 어떤값이 오든 설정파일에 있으면 실시간으로 받아들여서 처리하는 코드와 설정파일 작성. 역할 구현하기-2는 if method.equals('~~~') 이렇게 되있어서 메소드가 추가 될때마다 if문이 들어가야함. 팩토리 패턴을 사용해서 if를 제거할수 있다고 생각 if문을 패턴지향적으로 없앤다면 클래스가 늘어나고 모든 요구사항을 반영하는데 있어서 수정이 불가피함. 디자인 패턴을 사용하는 이유는 얼마나 유연하게 갈것인가 인데 단순히 메소드 하나 호출시켜주고 싶은데 클래스가 많이 늘어나야 할 필요가 없음.두가지의 해결 방법이 있음.1. xml설정해서 매핑으로 해결. (문제점 : 메소드는 자동으로 갈라지게 할수 없음)2. 힌트를 이용해서 해결.(힌트) reflection, met.. 서블릿으로 Dispatchservlet 역할 구현하기-2 (request.getRequestURI ,getParameter ) 요구) 원래 member.do로 받았는데 이번에는 *.do로 하나의 서블릿에서 받고 싶음. member.do면 MemberController, book.do면 BookController 클래스를 사용하고 method가 create면 거기 있는 create메소드를 사용하고 싶음.Servlet.javaimport java.io.IOException; import java.io.PrintWriter;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;publ.. 서블릿으로 Dispatchservlet 역할 구현하기-1 구글링하고 네이버에서 이것저것 찾아서 만든 dispatchServlet역활을 하는 서블릿을 만들기 까지 과정들을 적도록 하겟습니다. 친구가 어떤 형식을 요구 하면 그에 맞는 코드를 작성하고 피드백을 받고 정리했던 글 입니다. 혼자서 한글로 만들어서 볼려 했는데~ 도움은 안되더라도 보기좋게 다시 정리하는 형식으로 올릴 예정입니다.첫번째 요구) url 파라미터가 member일때 method값을create값으로 넣기ex> ~~/member?method=create내가 작성한 소스.response.setContentType("text/html; charset = euc-kr");// TODO Auto-generated method stub PrintWriter out = response.getWriter.. Http 기본 메소드 제한 http 기본 메소드 제한해야 하는 이유 http 인증 프로토콜 순서 요청 : 사용자가 서버에게 인증이 필요한 자료를 요청인증요구 : WWW-Authenticate 서버는 사용자에게 인증을 요구하는 401 상태정보를 요구인증 : Authorization 사용자는 이름과 비밀번호를 기술한 헤더와 함께 보낸다.성공 : Authorization-Info 인증이 정확하면 서버는 응답한다. http method 중에 OPTIONS 메소드가 있는데, OPTIONS는 웹서버에서 지원하는 method가 어떤 것들이 있는지를 알려준다. GET, POST는 기본적인 메소드이므로 제한을 두지 않는데 OPTIONS 은 어떤 메소드가 허용 가능한지 알려줘서 제한 해야함. TRACE는 클라이언트가 송신한 request를 그대로 .. 웹페이지 한글 출력,servlet 한글 출력,물음표 표시 해결, 웹 브라우져에 따른 파라미터 처리,오라클 케릭터셋-2 장장 4일에 걸쳐서 안되던게 이제서 해결이.. 웹 프로그래밍을 하면 참 할게 많구나 하는 생각이 든다. 내가 맡은 역활은 서버단을 구축하는건데 데이터 - 서버(가공) - 디비(추출) - 서버(가공) - 웹 여기서 (서버-디비-서버)를 맡았다. 하다보니 안되는 부분이 있었는데 한글로 출력하는 부분이었다. 일단 데이터를 받는 부분 부터 웹브라우져의 인코딩, 서블릿 소스의 인코딩, 디비와 인코딩 등 여러 인코딩 상황에 있었는데 하나만 해결해자라는생각 때문에 나중보니 어디서 부터 수정해야할지 감이 안잡혀서다시 이걸 다 고치는데 힘들었다............ 일단 브라우져마다 인코딩이 다른것은 1편에서 언급했고, 톰켓은 두가지방법을 이용해서 get방식으로 전달된 파라미터를 읽을 때 사용할 캐릭터 셋을 .. 톰켓 한글 setCharacterEncoding 안되는 이유, jsp,servlet 한글 인코딩 문제, 웹 브라우져에 따른 파라미터 처리방식-1 이전에 한글이 콘솔창에 출력이 안되서 글을 썻는데 그것도 안되는 문제가 발생해서 자세하게 공부하고 해결 방법을 찾으려함. String name = request.getParameter("name");request.setCharacterEncoding("euc-kr");String address = rquest.getParameter("address"); 이런 코드가 있을때 파라미터로 name을 받고 케릭터 셋을 euc-kr로 하는것이 아니라 케리터 셋을 지정하기 전에 파라미터 값이 사용되면 모든 파라미터값이 기본 캐릭터 셋을 이용해서 디코딩된다. 따라서 위 코드는 name파라미터와 address파라미터 모두 기본 인코딩 설정인 iso-8859-1을 이용해서 디코딩 된다. setEncoding을 사용하지 .. 이전 1 ··· 10 11 12 13 14 다음