| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 열공하자
- Node.js기본
- node.js
- mariadb
- Lag
- 파티셔닝
- 성장기
- node.js란
- frontend
- 실시간알림
- SSE
- Partition
- 개발자
- partitioning
- localStorage
- ServerSentEvent
- PostgreSQL
- EventSource
- Today
- Total
목록Spring Framework (11)
써치킴의 우당탕탕 개발 블로그
※ 신입사원 OJT 교육을 위해 정리해두었던 내용이다. Maven Java 기반 프로젝트의 전체적인 라이프 사이클을 관리하는 빌드 도구 (프로젝트 관리용 도구) 컴파일과 빌드를 동시에 수행, 테스트를 병행하거나 서버 측 Deploy 자원을 관리할 수 있는 환경을 제공, 라이브러리 관리 기능도 내포 pom.xml 파일에 필요한 라이브러리만 적으면 Maven이 알아서 다운받고 설치해주고 경로까지 지정 내가 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 작동하는데에 필요한 다른 라이브러리들까지 관리하여 네트워크를 통해서 자동으로 다운받아줌 빌드? 프로젝트를 위해 작성한 Java코드나 여러 자원들(.xml, .jar, .properties)를 자바가상머신(JVM)이나 톰캣같은 WAS가 인식할 수 있는 구조로 ..
클라이언트(Client)가 서버에 어떤 요청(Request)을 한다면 스프링에서 제공하는 DispatcherServlet 이라는 클래스(일종의 front controller)가 요청을 가로챈다. (web.xml에 살펴보면 모든 url ( / )에 서블릿 매핑을하여 모든 요청을 DispatcherServlet이 가로채게 해둠(변경 가능)) 요청을 가로챈 DispatcherServlet은 HandlerMapping(URL 분석등..)에게 어떤 컨트롤러에게 요청을 위임하면 좋을지 물어본다. (servlet-context.xml에서 @Controller로 등록한 것들을 스캔해서 찾아준다.) 요청에 매핑된 컨트롤러가 있다면 @RequestMapping을 통하여 요청을 처리할 메서드에 도달한다. 컨트롤러에서는 해당..
@PropertySource 외부 서비스 연결에 필요한 정보는 property 파일에 저장해두는 것이 좋다. @PropertySource를 통해 로딩한 내용은 스프링 Enviroment 오브젝트에 등록됨 > 이 값은 PropertySourcesPlaceholderConfigurer에 아무 인자를 주지않고 생성해도 값을 획득해서 사용해 준다. 스프링은 환경 오브젝트인 Enviroment를 제공 Enviroment는 빈처럼 @Autowired를 주입받아 사용 가능 Enviroment property 값 주입받아 사용 가능 PrppertySource를 스프링에 추가하기 위해서는 Environment 인 @Configuration 클래스와 함께 사용된다. @Configuration @PropertySource(..
Interceptor spring의 controller 호출전에 동작하는 방식. Interceptor는 '낚아채다'라는 의미를 가지고 있다. Client에서 Server로 들어온 Request 객체를, Controller의 Handler로 도달하기 전 가로채어, 원하는 추가 작업이나 로직을 수행한 후 Handler로 보낼 수 있도록 해주는 Module이다. Handler : 사용자가 요청한 url에 따라 실행되어야 할 Method. mvc:mapping path="/**/*.do"/ : 모든 .do가 mvc인터셉터를 거치게 하도록 정의 mvc:exclude-mapping : mvc 인터셉터를 거치지 않고 예외시킬 url 정의 /**/*.do라는 mappring을 받았을 경우 컨트롤러 호출 전 com.al..
@Autowired get/set 접근 메서드를 만들지 않고도 SpringFramework 설정 파일을 통해 get/set 메서드 대신 일을 해줌 이 객체를 생성해서 자동으로 만들어줘 (xml의 bean과 동일한 기능) , 태그와 동일 역할 → , 대신 역할을 해줌 정밀한 의존관계가 필요한 경우 사용 setter, 일반 메서드도 적용 가능 기존 소스 새로운 소스 @Autowird 를 통해서 자동으로 car 의 property 를 찾아줄 수 있음
@Component 빈 태그와 동일한 역할 DAO @Repository 퍼시스턴츠 레이어(data 저장/조회/변경/삭제를 다루는 레이어) 영속성을 가지는 속성(파일. DB)를 가지는 클래스 DAO @Service 비즈니스 로직을 가지는 클래스 Impl @Controller 웹 요청과 응답을 처리하는 클래스 Controller
일일이 빈등록 x, com.allim.*..*.web 경로를 포함한 모든 하위경로에 적용 Annotation 적용한 자바파일들이 빈으로 등록됨 @Service가 포함된 annotation 로딩 @Controller를 제외한 annotation만 로딩
MyBatis 객체 지향 언어인 Java의 관계형 데이터베이스 프로그래밍을 좀 더 쉽게 할 수 있게 도와 주는 개발 프레임워크. JDBC보다 더 편하게 사용하기 위해 개발되었다. JDBC(자바에서 제공하는 데이터베이스 프로그래밍 API)를 통해 데이터베이스에 엑세스하는 작업을 캡슐화하고 모든 JDBC 코드 및 매개 변수의 중복작업을 제거하고, 개발자가 지정한 일반 SQL 쿼리, 저장 프로시저 및 고급 매핑을 지원한다. MyBatis에서는 프로그램에 있는 SQL쿼리들을 한 구성파일에 구성하여 프로그램 코드와 SQL을 분리할 수 있는 장점을 가지고 있다. 데이터베이스 레코드에 원시타입과 Map 인터페이스 그리고 자바 POJO를 설정하고 매핑하기 위해 XML 과 애노테이션을 사용할 수 있다. sql 실행 결과..
모델-뷰-컨트롤러 패턴 웹 프로그램밍 개발 시 거의 표준적인 방식인 "Spring MVC"라 불리는 모델-뷰-컨트롤러(MVC) 패턴을 사용한다. DispatcherServlet이 Controller 역할을 담당하여 각종 요청을 적절한 서비스에 분산시켜주며 이를 각 서비스들이 처리를 하여 결과를 생성하고 그 결과는 다양한 형식의 View 서비스들로 화면에 표시될 수 있다.
Spring Framework 엔터프라이즈 어플리케이션 개발을 편하게 해주는 오픈소스 프레임워크. 크기와 부하의 측면에서 경량 컨테이너이며, 자바 객체를 직접 관리한다. 제어의 역전(Ioc), 의존성주입(DI), 관점 지향 프로그래밍(AOP)가 주요 특징이다. 1. 제어의 역전(IoC : Inversion of Control) IoC란 기존 사용자가 모든 작업을 제어하던 것을 특별한 객체에 모든 것을 위임하여 객체의 생성부터 생명주기 등 모든 객체에 대한 제어권이 넘어간 것을 제어의 역전(IoC)이라고 한다. 애플리케이션의 느슨한 결합을 도모. 컨트롤의 제어권이 사용자가 아니라 프레임워크에 있어 필요에 따라 스프링에서 사용자의 코드를 호출한다. 2. 의존성 주입(DI : Dependency Injecti..