Spring & Springboot 72

웹 애플리케이션 생성 및 서버로 데이터 전송

웹 애플리케이션 예제 준비 Service를 빈 객체로 등록하고 DAO 빈 객체와 연결하는 방법에 대해 알아본다. 1. ch07_pjt_01을 복사하여 ch08_pjt_01 프로젝트를 생성한다. 2. pom.xml 파일에서 프로젝트 이름을 변경한다. ch08_pjt_01 3. 왼쪽 하단의 [Servers] 탭에 ch07_pjt_01 프로젝트가 있다면 hello 콘텍스트가 ch08_pjt_01의 콘텍스트와 중복되므로 삭제한다. 4. 변경된 내용을 서버에 적용하기 위해 아이콘(Publish to the server)를 클릭한다. [Stopped, Republish] → [Stopped, Synchoronized]로 변경됨 적용 전 적용 후 5. ch08_pjt_01을 서버에서 실행하여 프로젝트가 정상적으로 실..

회원 관리 페이지 만들기

컨트롤러, 메서드, 뷰 만들기 1. com.company.hello.member 패키지를 생성하고 그 아래에 MemberController 클래스를 생성한다. 2. MemberController 클래스가 컨트롤러의 역할을 할 수 있도록 @Controller를 다음과 같이 명시한다. - signUp() 및 signIn() 메서드를 생성한다. - signUp()과 signIn() 메서드에 @RequestMapping을 이용해 요청 URL을 매핑한다. package com.company.hello.member; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;..

STS를 이용한 웹 프로젝트

STS를 이용한 웹 프로젝트 생성 스프링 MVC 프레임워크를 이용한 웹 프로젝트를 생성하고 실행해본다. MVC 프레임워크를 이용한 웹 프로젝트 생성하기 STS 상단 메뉴의 [File]-[New]-[Other..]를 선택한다.(ctrl+n) Spring > Spring Legacy Project를 선택하고 'ch07_pjt_01' 프로젝트 이름을 지정해준다. Spring MVC Project를 선택하고 최초 1회 Spring MVC 사용을 위해 데이터를 다운로드하는 창이 나타나면 YES을 클릭해준다. 패키지 이름은 com.company.hello로 지정해준다. Spring MVC 프로젝트 설정하기 1. [Window] - [Show View] - [Project Explorer]를 클릭하여 프로젝트를 관리..

스프링 MVC를 이용한 웹 서비스 프로젝트

스프링 MVC를 이용한 웹 서비스 구현 방법에 대해 알아본다. 스프링 MVC : 스프링의 다양한 기능 중에 웹 애플리케이션을 개발하기 위한 전용 프레임워크 STS 설치 STS설치하기 · STS : 스프링을 이용한 프로그램 개발을 좀 더 쉽게 진행할 수 있도록 고안된 프로젝트 · 실행방법 (1) 이클립스에 플러그인으로 설치 (2) STS 별도 다운로드 이클립스에서 STS 플러그인을 설치하는 방식에 약간의 문제가 발생하는 경우가 있으므로 스프링 공식 깃허브에서 STS를 별도로 다운받아 사용해본다. ① C드라이브에 springMVC_STS 폴더를 만들고, 폴더 내부에 download와 project 폴더를 만든다. ② 스프링 공식 깃허브에 접속해서 STS3 다운로드 링크에 들어가 'Spring Tool Sui..

Java 파일 분리와 @Import 애너테이션

· 기능 단위로 스프링 설정 파일을 분리하여 개발의 편의성을 높여준다. · MemberConfig.java 파일을 3개의 파일로 분리하고 스프링 컨테이너 초기화에 이용하는 작업을 수행해본다. 분리할 파일 생성하기 · ch06_pjt_01.ems.configuration 패키지에 MemberConfig1, MemberConfig2, MemberConfig3.java 파일을 생성한다. · 스프링 컨테이너에 빈 객체를 생성하는 역할을 하므로 @Configuration을 명시해준다. Java 코드 분리하기 MemberConfig1.java · 학생 정보를 추가, 수정, 검색, 삭제하는 Service 및 DAO 빈 객체를 스프링 컨테이너에 생성하는 코드 · InitSampleData부터 PrintStudentIn..

XML 파일을 Java 파일로 변경하기

XML파일을 Java 파일로 변경하기 XML파일이 아닌 Java파일을 이용해서 스프링 설정 파일을 만들어본다. 예제 프로젝트 준비하기 1. ch04_pjt_01 프로젝트를 복사해서 ch06_pjt_01로 붙여넣는다. 2. pom.xml에서 를 ch04_pt_01에서 ch06_pjt_p1로 수정한다. ch06_pjt_01 3. [src/main/java] 내부의 패키지 이름을 ch04_pjt_01 → ch06_pjt_01로 변경한다. 변경 전 변경 후 4. [src/main/resources] 내부의 appplicationContext.xml에서 모든 패키지명을 ch04_pjt_01에서 ch06_pjt_01로 수정한다. - appCtx1, appCtx2, appCtx3, appCtxImport.xml도 모..

스마트폰 연락처 -2

@Autowired를 이용한 의존 객체 자동 주입 생성자가 여러 개인 경우 Serivce빈이 생성될 때 생성자에 ContactDao가 자동 주입되는 것을 확인했다. 만약 새성자가 오버라이드되어 여러 개가 있다면 어떻게 될까? 이를 확인하기 위해 Service클래스에 디폴트 생성자를 추가하고 실행해보면 다음과 같다. ■ ContactRegisterService 클래스 생성자 public ContactRegisterService() { System.out.println("default constructor"); } public ContactRegisterService(ContactDao contactDao) { System.out.println("contactDao: " + contactDao); this...

스마트폰 연락처 -1

스마트폰 연락처의 개요 스마트폰 연락처 프로젝트 스마트폰의 연락처로 특정 인물에 대한 연락처가 출력되는 프로그램 ▶ 시나리오 ① 연락처 3개의 샘플 데이터를 데이터베이스에 등록한다. ② 전체 연락처 정보를 출력한다. ③ 특정 인물에 대한 연락처를 출력한다. ▶ 프로그램 흐름도 MainClass ContactRegisterService ContactSearchService ContactDao IoC 컨테이너 생성 연락처 등록 연락처 조회 연락처 등록, 조회 ▶ 클래스와 appCtx.xml 내용 MainClass 클래스 MainClass main() 메서드가 명시되어 있는 클래스 Service 클래스 ContactRegisterService 연락처 등록 ContactSearchService 연락처 조회 DA..

학사 관리 시스템 -4

스프링 빈 범위 IoC 컨테이너에 생성된 빈을 getBean()으로 호출하면 항상 동일한 객체가 반환된다. → 스프링은 기본적으로 객체 범위를 싱글턴으로 관리하기 때문이다. 싱글턴 (스프링 빈 범위) : 객체를 호출할 때마다 새로 생성하지 않고 기존의 객체를 재활용 하는 것 ch04_pjt_02 프로젝트를 생성하고 다음 구조처럼 나타낸다. 1. 메이븐 설정 파일 pom.xml에서 spring-context 모듈과 빌드를 설정한다. 4.0.0 spring5 ch04_pjt_02 0.0.1-SNAPSHOT org.springframework spring-context 5.2.9.RELEASE maven-compiler-plugin 3.1 11 11 utf-8 2. DependencyBean 클래스 객체가 생..

학사 관리 시스템 -3

MainClass.java MainClass.java를 생성하여 main() 메서드에서 GenericXmlApplicationContext와 IoC 컨테이너에 생성된 빈을 이용해본다. src/main/java > ch04_pgt_01.ems 패키지 생성 > MainClass.java 만약 ch04_pgt_01.ems 패키지 생성 시 오류 발생하면 ? 우클릭 > class 생성 Package 변경 : ch04_pjt_01.ems Name : MainClass MainClass의 구조는 다음과 같다. 1. applicationContext.xml와 GenericXmlApplicationContext를 이용하여 Ioc 컨테이너를 생성한다. GenericXmlApplicationContext ctx = new ..