프로젝트 생성, 설정 방법
프로젝트 설정하는 과정이 생소하고 복잡하기 때문에 자세히 기록해두고 연습을 많이 해야할 것 같다.
1. Spring Legacy Project 로 프로젝트 생성
2. 자바 버전 변경 (Project Facets과 pom.xml에서)
1) Project Facets
프로젝트 우클릭 > properties > project facets
2) pom.xml
3. web.xml 에서 한글 깨짐 방지 설정
코드는 매번 복붙하면 된다. 외우기보단 어떤 코드인지 이해하기.
> 코드 복붙 더보기
한글 깨짐 방지 코드를 web.xml에 삽입
<!-- 한글 깨짐 방지 설정 -->
<!-- 서버가 켜지면 가장 먼저 읽게되는 파일 -->
<!-- 한글깨짐 : 특정한 요청이 오면 특정 클래스로 연결해서 한글 깨짐을 방지 -->
<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>
<!-- 강제 인코딩 여부 -->
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<!-- 어떤 요청이 왔을 때 어떤 필터를 사용할 것인가? -->
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
4. server path 변경
server path는 웹페이지 주소창에 뜨는 주소인데 그 부분을 수정해줄 수 있다.
Path 부분이 /main으로 되어있다.
Path 부분을 / 라고만 해둘 것이다.
오른쪽에 Edit 을 눌러 수정해준다.
이런 설정 파일들(web.xml, pom.xml, server 등)을 수정한 뒤에는 서버를 껐다 켜줘야
수정한 부분이 반영된다.
서버를 끈 뒤에 수정하는 것이 가장 좋다...
5. pom.xml 에서 라이브러리 추가
필요한 라이브러리가 있다면 pom.xml에 설정해두고
maven 이 알아서 pom.xml을 읽고 라이브러리들을 다운받아준다..
추가해 줄 라이브러리는 DB관련 5가지 라이브러리
1) ojdbc : DB 접속을 도와준다.
<!-- ojdbc : DB 접속 --> <!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client --> <dependency> <groupId>org.mariadb.jdbc</groupId> <artifactId>mariadb-java-client</artifactId> <version>2.7.2</version> </dependency>
2) dbcp : 커넥션(DB에서 무언가를 할 수 있는 키) 풀 사용
<!-- dbcp : 커넥션(DB에서 무언가를 할 수 있는 키) 풀 사용 --> <!-- https://mvnrepository.com/artifact/commons-dbcp/commons-dbcp --> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency>
3) spring-jdbc : DB와 SPRING을 연결 해준다.
<!-- spring-jdbc : DB 연결과 SPRING을 연결해준다. --> <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework-version}</version> </dependency>
4) mybatis : XML 쿼리문을 특정 인터페이스와 연결해주는 기능
<!-- mybatis : XML 쿼리문을 특정 인터페이스와 연결해주는 기능 --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version> </dependency>
5) mybatis-spring : 마이바티스와 스프링을 연결
<!-- spring-mybatis : 마이바티스와 스프링을 연결해준다. --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.2</version> </dependency>
이 라이브러리들 추가를 <!-- AspectJ --> 위에 해준다. 위치는,, 상관있나? 모르겠는데
일단 특정 위치를 정해두는 게 좋은 것 같다. 보기 편하니까
6. servlet-context.xml 추가 설정
src > main > webapp > WEB-INF > spring > appServlet > servlet-context.xml
servlet-context.xml 에서는 DB와 관련된 설정을 추가해준다.
위치는 <context:component-scan ...> 밑으로 통일.
1 ) DB 접속 정보의 DB 유저 네임과 비밀번호 확인
2) 마이바티스 사용 설정에 mapperLocation 위치 설정 확인
3) 간편 사용 설정에 base-package 위치 설정 확인
코드 복붙하다보면 위치 설정 변경을 깜빡할 수 있는데 오류가 나므로 꼭 꼭 확인해주기!
<!-- 접속 정보 --> <beans:bean name="datasource" class="org.apache.commons.dbcp.BasicDataSource"> <beans:property name="driverClassName" value="org.mariadb.jdbc.Driver"/> <beans:property name="url" value="jdbc:mariadb://localhost:3306/mydb"/> <beans:property name="username" value="web_user"/> <beans:property name="password" value="pass"/> </beans:bean> <!-- 마이바티스 사용 설정 --> <!-- name = 필수요소(이름이 정해져 있음) / id = 선택요소(이름이 정해져 있지 않음) --> <!-- 어떤 DB를 쓸건지 정보 제공 --> <!-- 쿼리문(xml)이 어디에 있는지 지정 --> <beans:bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <beans:property name="dataSource" ref="datasource"/> <beans:property name="mapperLocations" value="classpath:com/test/main/dao/*.xml"/> </beans:bean> <!-- 간편 사용 설정(마이바티스 사용하는 패키지 범위) --> <mybatis-spring:scan base-package="com.test.main.dao"/>
설정코드를 넣고 나면 간편 사용 설정 코드가 빨갛게 된다.
Namespaces 누르고 mybatis-spring 체크박스 체크 해주기
7. 패키지 생성, 필요한 파일 생성
필요한 패키지를 생성해 사용한다.
패키지는 생성 한 뒤에 이름 변경하거나 지우거나,, 건들지 마,, 여러모로 복잡해지니까 ,,
클래스명은 변경해도 괜찮다.
- mapper.xml 필요 코드
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.mvc.member.dao.MemberDAO"> <!-- 내용 --> </mapper>
* mapper namespace 설정해주는 걸 종종 까먹는데,, 주의할 것!
여기까지 해주면 스프링 프로젝트 기본 설정이 끝난다.
'Back-End > SPRING' 카테고리의 다른 글
build ] spring 프로젝트 tomcat으로 build하기 (0) | 2022.07.18 |
---|---|
SPRING] 외부 프로젝트 파일이 제대로 import 되지 않을 때 (0) | 2022.05.23 |
SPRING] 초기 설정 , 프로젝트 생성 방법 (0) | 2022.05.23 |