Please enable JavaScript.
Coggle requires JavaScript to display documents.
Servlet, 톰캣이 켜 졌다 - Coggle Diagram
Servlet
ServletConfig
web.xml의 Servlet 내부로 한정
servlet의 param-name을 가져오다
ServletConfig config = this.getServletConfig();
config.getInitParameter("패러미터이름")
JSP에서는 ServletConfig 를 config로 내장하고 있어, 바로 사용가능
<%= config.getInitParameterNames()%>
ServletContext
web.xml 의 context-parm을 가져오다
ServletContext context = this.getServletContext(); context.getInitParameter("패러미터네임")
<%application.getInitParameter("패러미터이름")%>
// TODO Auto-generated method stub
super.init(config);
ServletContext application=this.getServletContext();
applicationContext=new ApplicationContext(config,application);
simpleUrlHandlerMapping=SimpleUrlHandlerMapping.getInstance(application);
}
public void init(ServletConfig config) throws ServletException {
web.xml에 올린 데이터를 가져오는 이유
톰캣이 켜졌을때 미리 메모리에 올리면 요청하고 가져올때 속도가 빠르다
톰캣이 켜 졌다
load-on-startup이 양수면
dispatcher servlet에 init 메쏘드 호출
dispatcher servlet 클라스 하나에 객체 두개를 만들었다 -> web.xml
web.xml
<servlet-name> 을 main 으로 /<servlet-class> 를 패키지명.클래스이름
<servlet-mapping>에 servlet-name과 url-pattern을 넣습니다
<servlet-name>main
<url-pattern>*.do
사용자가 xxx.do 로 url을 날리면 <param-name>main 이 받아서 <servlet-class>의 클라스가 실행
<init-param> 에 <param-name> 과 <param-value>가 있습니다
<param-name>패러미터이름을 주다
getInitParameter("이름") 으로 value를 string으로 가져오다
이 이후는 길어서 noteone의 경로 설정 참고
<param-value>에 파일의 경로,xxx.properties 가 있다
얘를 applicationContext에 가져오는데 1. 맵객체 생성 2. 값 가져오기 3. getRealPath로 경로 설정 4. 프로퍼티 객체생성.5 경로 설정한거 읽어오기 6. 키 값을(StringPropertyNames ())set 에 넣고 포문돌리기 , class.forName(값) 으로 Object 객체 생성
map에 넣어서 메모리에 올리기
super.init(config)는 조상인 genericServlet이 가진 inint을 오버라이딩 하기 위해서임
그렇게 config를 가져옴
httpServlet이 가진 getServletContext() 호출 , 자료형 ServletConext 객체 만듬 -> application
application 은 이제 web.xml에 <context-param>을 가져 올 수 있음
application.getInitParameter ("")로 <param-name>값 넣어요
<param-value>를 가져와요~
<context-param>은 다른 servlet과 공유합니다
중급에 nullaction이 있다면 jsp에는 urlFile
urlFileNameViewController