Spring | 스프링 퀵 스타트 | 초기 설정

파과·2022년 8월 11일
post-thumbnail

이클립스 / STS 설치 후 .ini 파일 수정

eclipse.ini 또는 STS.ini 파일을 찾아 -vmargs 옵션 위에 -vm 옵션을 추가하고, JDK의 javaw.exe 파일의 위치를 지정한다.

-vm
C:\Program Files\Java\jdk1.8.0_202\bin\javaw.exe

데이터베이스 구축

  • 오라클DB scott 계정에 구축함
CREATE TABLE BOARD(
	SEQ NUMBER(5) PRIMARY KEY,
    TITLE VARCHAR2(200),
    WRITER VARCHAR2(20),
    CONTENT VARCHAR2(2000),
    REGDATE DATE DEFAULT SYSDATE,
    CNT NUMBER(5) DEFAULT 0
);

INSERT INTO BOARD(SEQ, TITLE, WRITER, CONTENT)
VALUES(1, '가입인사', '관리자', '잘 부탁드립니다....');

CREATE TABLE USERS(
	ID VARCHAR2(8) PRIMARY KEY,
    PASSWORD VARCHAR2(8),
    NAME VARCHAR2(20),
    ROLE VARCHAR2(5)
);

INSERT INTO USERS VALUES('test', 'test123', '관리자', 'Admin');
INSERT INTO USERS VALUES('user1', 'user1', '홍길동', 'User');

DB 생성 후에는 반드시 커밋!!!!!을 하자...

프로젝트 생성

  • Spring Legacy Project 선택
  • 프로젝트명 : BoardWeb
  • Spring MVC Project 선택
  • 패키지명 : com.spring.book

프로젝트 설정 변경

  • Properties > Project Facets > Java를 1.8로 변경
  • 옆의 Runtimes 탭에서 Apache Tomcat 누르고 Apply
    → Java Build Path > Libraries 탭에서 톰캣이 추가된 것을 확인할 수 있다.

  • src/main/resources 폴더에 log4j.xml 파일 제외하고 모두 삭제
  • src/main/webapp/WEB-INF 아래 spring과 views폴더 삭제
  • src/main/webapp/WEB=INF/web.xml 파일에서 <web-app> 루트 엘리먼트 제외 나머지 설정 모두 삭제한 뒤 저장
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee https://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
</web-app>

  • pom.xml 파일의 Spring 버전을 최신으로 변경
<org.springframework-version>5.2.22.RELEASE</org.springframework-version>

스프링 설정 파일 생성

  • src/main/resources 클릭 > New > Other
  • Spring 폴더의 Spring Bean Configuration File 선택
  • 파일명: applicationContext
  • Finish

클래스 하나당 하나의 <bean>설정이 필요하다.
class 속성값에 패키지 경로가 포함된 전체 클래스 경로를 지정한다. 자동완성 기능을 이용하자(Ctrl + space).

라이브러리 설치

어노테이션 설정

1. Context 네임스페이스 추가

스프링 설정 파일에서 Namespace 탭 > 해당 네임스페이스 체크.
Source탭에서 <bean> 엘리먼트에 추가된 것 확인.

2. component-scan 설정

설정파일에 애플리케이션에서 사용할 객체들을 <bean> 등록하지 않고 자동 생성하려면 <context:component-scan /> 엘리먼트를 정의해야 한다. 이 설정을 추가하면 스프링 컨테이너가 클래스패스에 있는 클래스를 스캔해 @Component가 설정된 클래스들을 자동으로 객체 생성한다.
base-package 속성을 사용하면 biz패키지까지 지정했을 때 biz로 시작하는 모든 패키지를 스캔 대상에 포함한다.

예시

<context:component-scan base-package="com.springbook.biz"></context:component-scan>

0개의 댓글