1. 프로젝트 만들기


2. 서버에 모듈 들어가서 path 고치기 -- 저장




3. 프로젝트에 configure -- convert to maven project - 하면 pom.xml이 만들어짐

(빌드 도구는 ant, maven, gradle이 있으며 요즘에는 gradle이 많이 쓰임)

(버전관리 도구는 cvs, sun, git이 있으며 요즘에는 git이 많이 쓰임)


4. pom.xml클릭한 후 xml 탭으로 들어가서 다음과 같은 내용을 dependencies에 추가.

이를 통해 필요한 library를 받아옴. 배포할 때도 쉬워짐.

     <dependencies>

<dependency>

<groupId>jstl</groupId>

<artifactId>jstl</artifactId>

<version>1.2</version>

</dependency>

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>1.2.17</version>

</dependency>

<dependency>

<groupId>org.slf4j</groupId>

<artifactId>slf4j-log4j12</artifactId>

<version>1.7.7</version>

</dependency>

<dependency>

<groupId>commons-dbcp</groupId>

<artifactId>commons-dbcp</artifactId>

<version>1.4</version>

</dependency>

<dependency>

<groupId>org.lazyluke</groupId>

<artifactId>log4jdbc-remix</artifactId>

<version>0.2.7</version>

</dependency>

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>4.11</version>

</dependency>

</dependencies>


dependencies에 추가할 library 받아오는 곳: http://mvnrepository.com/



(책: 부트스트랩 사용자 가이드  참조)


5.WebContent 안에 index.html이라고 빈 파일 만들어 서버 올라가고 메세지 브라우저에 뜨는지 확인하기.


6. src 밑에 pool.jocl 파일 만들기 -- 안에 다음과 같은 내용 붙여넣기


<object class="org.apache.commons.dbcp.PoolableConnectionFactory" 

 xmlns ="http://apache.org/xml/xmlns/jakarta/commons/jocl">

<object class="org.apache.commons.dbcp.DriverManagerConnectionFactory">

 <string value="jdbc:oracle:thin:@61.72.16.181:5024:orcl"/>

 <string value="leepanho"/>

 <string value="leepanho"/>

</object>

<object class="org.apache.commons.pool.impl.GenericObjectPool">

<object class="org.apache.commons.pool.PoolableObjectFactory" null="true"/>

 <int value="10"/>          <!-- maxActive -->

 <byte value="1"/>  <!-- whenExhaustedAction-->

 <long value="10000"/>  <!--maxWait -->

 <int value="10"/>  <!-- maxIdle -->

 <int value="3"/>  <!--minIdle-->

 <boolean value="true"/>  <!-- testOnBorrow-->

 <boolean value="true"/>  <!--testOnReturn-->  

 <long value="600000"/>  <!--timeBetweenEvctionRunsMillis-->

 <int value="5"/>  <!--numTestsPerEvictionRun--> 

 <long value="3600000"/>  <!--minEvictableIdleTimeMillis-->

 <boolean value="true"/>  <!--testWhileIdle-->

</object>

<object class="org.apache.commons.pool.impl.GenericKeyedObjectPoolFactory" null="true"/>

 <string null = "true"/>

 <boolean value="false"/>

 <boolean value="true"/>

</object>


접속 서버 및 계정에는 맞에 입력해야 함.


7. src 밑에 log4j.properties 파일 만들기  --안에 다음과 같이 내용 붙여넣기

log4j.appender.file=org.apache.log4j.RollingFileAppender

log4j.appender.file.File=C:\\zzz\\app.log

log4j.appender.file.MaxFileSize=1MB

log4j.appender.file.MaxBackupIndex=1

log4j.appender.file.layout=org.apache.log4j.PatternLayout

log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

 

# Direct log messages to stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.Target=System.out

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

 

# Root logger option

log4j.rootLogger=DEBUG, file, stdout

 

# Log everything. Good for troubleshooting

log4j.logger.org.java.sql=DEBUG

 

# Log all JDBC parameters

log4j.logger.org.hibernate.type=ALL


Root logger option에서 단계를 지정해주면 저장 및 출력되는 로그 수준을 정해줄 수 있음(level: DEBUG > INFO > WARN > ERROR > FATAL)


8. Maven에는 JDBC가 없으므로 libraries에 ojdbc6.jar 파일을 넣어줘야 함



Properties -- Deployment Assemply에 추가




9. 서블릿 하나 만들어서 DB에 제대로 접속되는지 확인하기.

브라우저에 http://localhost:8080/log 라고 들어가기 - 콘솔창에 제대로 뜨는지 확인.


import org.slf4j.Logger;

import org.slf4j.LoggerFactory;



다음과 같은 인스턴스 변수 추가 : 

private static Logger logger = LoggerFactory.getLogger("controller");


doGet()에 다음을 넣어 줌:

logger.debug("debug.....");

logger.info("debug.....");

logger.error("error....");

logger.warn("debug.....");

try {

Class.forName("oracle.jdbc.driver.OracleDriver");

Class.forName("org.apache.commons.dbcp.PoolingDriver");

String jdbcDriver = "jdbc:apache:commons:dbcp:/pool";

Connection con = DriverManager.getConnection(jdbcDriver);

logger.info(con.toString());

logger.info(con.getClientInfo(jdbcDriver));

con.close();

} catch (Exception e) {

// TODO Auto-generated catch block

logger.error(e.getMessage());

}




Posted by 타다키치
,