Programing 41

web.xml

web.xml url-pattern 형태 설명 샘플 / 기본 서블릿을 의미함 tomcat의 기본적으로 등록된 url-pattern은 /, *.jsp, *.jspx이다. 이중 '/' 는 default servlet이 처리하는데 보통 정적 content를 처리하기 위한 servlet이라고 생각하면 된다. 사용자 servlet(spring dispatcherServlet)에서 url-pattern으로 '/'를 사용하면 기본 tomcat default servlet의 기능은 없어진다. / /* '/*' 를 사용한다는 것은 기본적으로 tomcat의 기본 url-pattern인 /, *.jsp, *.jspx 등을 사용하지 못한다는 것을 의미한다. '/'을 처리하는 default servlet의 경우 spring에서..

Programing/Spring 2022.03.04

Eclipse Tomcat Project 작동 순서

Eclipse Tomcat Project 작동 순서 Eclipse Tomcat Server 작동 순서 1. Servers Tomcat에 가동할 Project Add 2. tomcat server.xml 3. web.xml 해당 파일 Client Request -> DispatcherServlet -> HandlerMapping -> (Controller -> Service -> DAO -> DB -> DAO -> Service -> Controller) -> DispatcherServlet -> ViewResolver -> View -> DispatcherServlet -> Response (참조) https://velog.io/@tjylo3437/Spring-MVC%EC%9D%98-%EA%B8%B0%E..

Programing/Spring 2022.03.04

JDBC / JNDI / DBCP

JDBC / JNDI / DBCP JDBC : 데이터베이스 커넥션 인터페이스 DBCP : DB커넥션을 어플리케이션 소스 내에서 제어하면서 DB Pool 가짐 JNDI : DB커넥션을 WAS단에서 제어하면서 서버에서 하나의 Connection Pool 가짐 DBCP - Database Connection Pool 의 약자이다. 요청이 올때마다 Connection 객체를 얻는 것이 아닌, 미리 일정 갯수 찍어내서 Connection Pool 로 관리 WAS가 실행되면서 미리 일정량의 DB Connection 객체를 생성하고 Pool 이라는 공간에 저장해 둠 HTTP 요청에 따라 필요할 때 Pool에서 Connection 객체를 가져다 쓰고 반환 JDBC 로딩 순서 드라이버 객체화 : Class.forName..

Programing/Spring 2022.03.03

Spring Basic

Spring Basic 구성요소 DispatcherServlet : 클라이언트 요청을 받아서, 컨트롤러에 요청을 전달하고 컨트롤러가 리턴한 결과 값을 View 에 전달하여 응답을 생성한다. (Struts 의 ActionServlet) HandlerMapping : 클라이언트 요청 URL 을 어떤 컨트롤러가 처리할지를 결정한다. (struts-config.xml 의 역할) Controller : 요청을 처리하고 결과를 리턴한다 (Struts 의 Action) ModelAndView : 컨트롤러가 처리한 결과 정보 및 뷰에 관련한 정보를 담는 객체 (struts의 forward 기능 포함) ViewResolver : 컨트롤러 처리 결과를 생성할 뷰를 결정View : 컨트롤러 처리 결과 화면을 생성하는 객체 ..

Programing/Spring 2022.03.03

JAVA Memory leak check / fix

JAVA Memory leak check / fix Stack : 스택, 지역 변수들 (메소드나 생성자들에서 선언되는) 것들이 할당된다. 지역 변수들은 메소드가 시작될 때 할당되고, 메소드가 끝날 때 할당해제된다. Heap : 힙, new 키워드를 통해서 만들어지는 모든 객체들이 할당된다. 지역변수는 primitive 자료형과 참조형 뿐 거의 없기 때문에, 어쩌다가 깊은 케이스나, 무한 재귀의 경우를 제외하면 스택은 잘 오버플로가 나지 않는다. JVM 은 힙에 살아있는 객체들이 가득 차고, 더 확장할 수 없다면 더 많은 객체를 할당 할 수 있다 자바 프로그램 메모리 누수의 전형적인 4가지 원인들은: Unknown or unwanted object references: 잘 모르고 있거나 원치않는 객체참조 ..

Programing/Java 2022.03.03

(Eclipse) Deployment Assembly

(Eclipse) Deployment Assembly Eclipse로 Tomcat를 구동하기 전 Tomcat에서 서버를 구동 할 때 필요한 바이트 파일들이 필요한데 이때 임시로 Tomcat에서 사용하기 위해 배포되는 임시 폴더가 존재합니다. 보통 class 파일들이나 resource 파일들이 업로드되는데 추가로 필요한 자원들을 서버에서 사용하게끔 할 수 있는 방법이 Deployment Assembly에 설정하는 것입니다. ※ 글쓴이가 보기에 임시 영역에 업로드 되는 공간은 build 후에 생성되는 target 폴더의 파일들이 업로드되는것으로 생각됩니다. 그러나 정확하지 않은 내용이므로 참고만 하시길 바랍니다 Deployment Assembly 설정 Project 우클릭 → Properties → Depl..

Programing/IDE 2022.03.02