데이터베이스 설계를 먼저 해서 테이블들 구축해놓기.
Spring Legacy Project
에서 Spring MCV Project
생성하기.
context path
설정하기
https://sports.news.naver.com/wfootball/index에서
sports.news.naver는domain name
, wfootball이context path
pom.xml
설정하기
pom(Project Object Mode).xml
이라는 빌드 파일의 빌드 정보를 Maven
이 읽어서 프로젝트를 빌드하고 라이브러리를 관리한다.
Maven
: 장점 = 빠름 (이전 실행내용 재사용), 단점 = 버그 많음
Gradle
: 장점 = 버그 별로 없음, 단점 = 느림
<properties>
태그부터 끝까지 쭉 긁어서 지우고 셋팅된 내용으로 다시 밀어넣기.프로젝트 우클릭 > Maven > Update Project > force 체크
해서 업데이트.프로젝트를 서버에 올려서 제대로 작동하는지 확인.
필요한 자바 파일들을 넣기 위한 패키지들 전체적으로 작성하기. (샘플 자바도 만들어놓으면 좋음)
controller
model.dto
model.mapper
model.service
servlet-context.xml
파일에서 controller 스캔 & root-context.xml
파일에서 model 스캔시키기.
<context:component-scan base-package="com.ssafy.after.controller" />
<context:component-scan base-package="com.ssafy.after.model"/>
root-context.xml
은 namespace에서 context 체크)root-context.xml
파일에 MyBatis 관련 객체 3개 등록하기 (namespace에서 p 체크)
<!-- 데이터베이스 관련 라이브러리 객체 3개는 항상 무조건 필요함! -->
<!-- 1. 커넥션 관리 객체 (타이어)-->
<context:property-placeholder location="classpath:db.properties "/>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
p:driverClassName="${db_driver}"
p:url="${db_url}"
p:username="${db_username}"
p:password="${db_password}" />
<!-- 2. MyBatis 설정 객체 (휠)-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"
p:dataSource-ref="dataSource"
p:typeAliasesPackage="com.ssafy.baemung.model.dto"
p:mapperLocations="classpath:/**/maapper/*.xml" />
<!-- 3. 마이바티스 설정 + 예전 DAO에서 '?' 처리해주는 기능 구현되어 있는 객체(바퀴)-->
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg ref="sqlSessionFactory" />
</bean>
web.xml
파일에 한글 파라미터 인코딩 관련 filter
등록하기 <!-- 모든 Character에 대한 Encoding을 UTF-8로 하는 Filter & Filter Mapping 추가! -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Mapper(xml+interface)
Service
Controller
클래스 자바 파일들 작성하고 미리 애노테이션들 다 붙여놓기@Controller
@Service
@Autowired
같은 애들 빠진거 없나 미리 확인해두기.클래스 변수
Getter
Setter
toString
채우기Mapper(xml+interface)
에 사용할 SQL 관련 설정들 다 작성하기 (interface 메소드 작성 후 xml에 mybatis SQL 작성)Service
Controller
jsp
를 작성해서 한가지 기능씩 실행시키면서 작업하기