분류 전체보기86 [Spring]DispacherServlet DispatcherServlet 디스패처 서블릿의 dispatch는 "보내다"라는 뜻을 가지고 있다. 그리고 이러한 단어를 포함하는 디스패처 서블릿은 HTTP 프로토콜로 들어오는 모든 요청을 가장 먼저 받아 적합한 컨트롤러에 위임해주는 프론트 컨트롤러(Front Controller)라고 정의할 수 있다. 이것을 보다 자세히 설명하자면, 클라이언트로부터 어떠한 요청이 오면 Tomcat(톰캣)과 같은 서블릿 컨테이너가 요청을 받게 된다. 그리고 이 모든 요청을 프론트 컨트롤러인 디스패처 서블릿이 가장 먼저 받게 된다. 그러면 디스패처 서블릿은 공통적인 작업을 먼저 처리한 후에 해당 요청을 처리해야 하는 컨트롤러를 찾아서 작업을 위임한다. 여기서 Front Controller(프론트 컨트롤러)라는 용어가 사용.. 2022. 9. 20. [Spring]jdbcTamplate 설정 및 사용 Spring 설정 파일인 applicationContext.xml 파일에 bean을 추가한다. dataSource에는 DB에 관한 정보를 설정한다.(driverName,url,...) jdbcTeplate은 외부 클래스이기 때문에 applicationContext 파일에 bean을 사용하여 메모리에 할당한다. 해당 작업을 위해서는 DBCP 라이브러리 추가가 필요하다. org.springframework spring-jdbc ${org.springframework-version} commons-dbcp commons-dbcp 1.4 라이브러리를 추가하고 JDBC의 설정이 완료 되었다면 어노테이션을 통하여 DI를 진행한다. 대표적인 sql문인 INSERT,UPDATE,DELETE는 jdbcTemplate의 .. 2022. 9. 16. [Spring]AOP AOP (Aspect Oriented Programming)란? AOP는 Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 불린다. 관점 지향은 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 모듈화 하겠다는 것이다. *모듈화 : 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것 예를 들어 핵심적인 관점은 비즈니스 로직이 될 수 있고, 부가적인 관점은 핵심 로직을 실행하기 위해 행해지는 데이터베이스 연결, 로깅, 파일 입출력 등이 될 수 있다. AOP는 흩어진 관심사(Crosscutting Concerns)를 모듈화 할 수 있는 프로그래밍 기법이다 [그림 1] AOP 예시 [그림 1]과 같이 클래스 A, B, C에서 공통적으로.. 2022. 9. 15. [Spring]IoC,AOP,DI의 개념 IoC Spring 에서는 Container라는 개념이 있는데, 이 컨테이너는 객체를 담는 용기 스프링컨테이너가 필요에 따라 개발자 대신에 bean의 생성부터 소멸까지 생명주기를 관리 객체의 의존성을 역전시켜 객체 간의 결합도를 줄이고 유연한 코드를 작성할 수 있게 하여 가독성 및 코드 중복, 유지 보수를 편하게 할 수 있게 함 컨테이너란? 스프링의 컨테이너는 프로그래머가 작성한 코드의 처리과정을 위임받아 독립적으로 처리하는 존재 객체관리를 주로 수행하는 그릇 필요성 : 의존성 제어, 즉 객체 간의 의존성을 낮추기 위해 바로 Spring 컨테이너가 사용됨 객체를 사용하기 위해서 new 생성자를 이용하거나 getter/setter 기능을 주로사용하는데 많이 사용할 수록 의존성이 높아짐. 낮은 결합도와 높은.. 2022. 9. 14. [Spring]Spring 설치 및 설정 이클립스 Help-Marketplace 클릭 sts 검색 후 Spring Tools 3 + Add-On 인스톨 보통은 Standalone Edition 설치하면 Add-On은 자동설치 됨 중간에 추가설치파일은 SelectAll 하여 설치 진행 설치가 끝나면 Spring 레거시 프로젝트 생성하고 MVC Project 선택 후 Next 기본 패키지 작성 - com.ㅁㅁ.java 의 형태로 씀 생성 후 프로젝트 우클릭 Properties 클릭 Project Facets에서 java 버전 맞추기(현재 본인은 11버전) + Runtimes 들어가서 tomcat 적용 추가로 해야할 것 1.src/main/resources 폴더 하위에 log4.xml 제외하고 모두 삭제 2.src->main->webapp->WEB-.. 2022. 9. 13. [팀프로젝트]MVC2 패턴을 이용한 펫 샵 with JDBC,웹 크롤링 해당 프로젝트에서 내가 맡은 역할은 모델 겸 컨트롤러이다. 약간의 뷰 파트도 맡았으며 컨트롤러가 메인이다. 약 1주일간의 설계 단계와 2주정도의 코드 작성 기간을 거쳐 총 3주 간의 개발 기간을 거쳤다. 주요 기능으로는 각종 API와 플러그인이 있으며 추가적으로 페이징 처리를 하였다. 내가 맡은 주요 코드는 이메일 SMTP,별점 플러그인,이미지 업로드,페이징 처리,모달창 플러그인이 있다. 개요이다. 늘어나는 온라인 수요 증가에 따른 온라인 매장이 필요성에 의해서 기획하게 되었다. 목적은 실제 서비스 가능한 수준의 웹 사이트를 목표로 설정하여 진행하였으며, 프로젝트의 주제는 '펫 샵'으로 상품 서비스의 전달이 주 된 기능이다. 개발환경은 주로 eclips를 이용했으며 서버는 tomcat, DB는 mySQL.. 2022. 9. 13. 이전 1 2 3 4 5 6 7 ··· 15 다음