본문 바로가기

Spring

"Spring에서는 pom.xml이 다 해준다는데?"

Spring DB 연결하기& 그 전 프로젝트와의 차이점

<웹프로젝트>

자바프로젝트와 다르게 Apache Tomcat v8.5가 붙는다

Apache Tomcat v8.5에는 el, jsp, servlet api 등이 있다


웹 프로젝트에 DB를 연결하고 싶다면?

lib에 ojdbc6.jar를 넣고 (런타임시 사용)

Add to Build Path를 해주면 끝!!  (컴파일시 사용) 


<Spring>

pom을 사용하면 xml에 이름 명시하면 central repository에서 가져온다

해당 pc에 repository를 만든다 (users 폴더 .m2 안에 repository 파일이 생성된다)

dependency 하나가 jar파일 하나라고 생각하면 된다


예시)

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context</artifactId>

<version>${org.springframework-version}</version>

<exclusions>

<!-- Exclude Commons Logging in favor of SLF4j -->

<exclusion>

<groupId>commons-logging</groupId>

<artifactId>commons-logging</artifactId>

</exclusion>

</exclusions>

</dependency>


dependency 모든 내용 지우고 저장하면??

⇒ Java Resouces 밑에 Libraries 밑에 maven dependencies가 사라진다


maven 활용 안 할 경우 큰 문제 !!

@controller를 하면 console 창에 정보 info가 나오는데 이는 logging class가 따로 있어야 된다

즉, 클래스를 참조하기 위해 그 클래스를 참조하는 클래스까지 가져와야 한다

예시) A class가 B클래스에 의존 적이다

A class 

B b; 


gildong

b.hell(); 


A 클래스 참조하기 위해 B도 참조해야 한다 maven이 처리해준다!! 


<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context</artifactId>

<version>4.3.18.RELEASE</version>

</dependency>


maven: context 가져올려면 core commons-logging 등이 필요하니깐 전부 가져와줄게


<메이븐 원격지 repository 경로>

https://repo.maven.apache.org/maven2 



<메이븐 리포지토리 maven groupid, artifactId, version정보찾기>

http://www.mvnrepository.com




※데이터베이스 관련 설정(기본 원격 repository에 오라클 드라이버가 없기 때문에)  1번 또는 2번 둘 중 하나 선택!

  1. 오라클 드라이버 라이브러리 설정(pom.xml파일 없이)
    • webapp/WEB-INF 밑에 lib 폴더 생성

        • ojdbc6.jar 파일을 복사
        • 파일 선택 후 마우스 우클릭: Add to Build Path
  1. 오라클 드라이버 라이브러리 설정(pom.xml파일에 정의) 
    • 첫번째)

        • dependencies 태그 위에 오라클 드라이버를 가져올 주소 명시

          <repositories> <repository> <id>oracle</id> <name>ORACLE JDBC Repository</name> <url>http://maven.jahia.org/maven2</url> </repository> </repositories>

    • 두번째)

        • dependencies 태그 안에 dependency 태그 정의

          <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>12.1.0.2</version> </dependency>

http://maven.jahia.org/maven2에 들어가보면


pom.xml에 등록하면


Maven Dependencies 안에 ojdbc6-12.1.0.2.jar가 생긴 걸 볼 수 있다