달력

42024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

Spring 시작..


http://www.springframework.org/download.html

에 가서 다운로드 받는다.

압축 풀고.. dist 디렉토리에 가보면 jar 파일, dtd, tld 등등이 보인다.

이 파일들을 사용할 수 있게 클래스 패스에 걸던, Eclipse 에서

해당 프로젝트에 등록하던지 한다.

=====================================
package test;

public interface Hello{

 public void sayHello();

}

=====================================
package test;

public class HelloImpl implements Hello{

 public String name;

 public HelloImpl(){
  System.out.println("Default Constructure called..");
 }

 public void sayHello(){ 
  System.out.println("Hello~~~ " + name);
 }

 public void setName(String name){
  this.name = name;
 }
}


=====================================


위의 파일을 Spring 설정 파일에 등록해야 사용할 수가 있다.

hello.xml 파일로 아래 내용 저장..

=====================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
  <bean id="hello"
 class="test.HelloImpl">
    <property name="name">
      <value>tornado</value>
    </property>
  </bean>
</beans>
=====================================


이제 이 파일을 테스트 해볼 클래스를 만든다.

=====================================
package test;

import org.springframework.context.*;
import org.springframework.context.support.*;

public class HelloTest{

 public static void main(String[] args) throws Exception{

  ApplicationContext ac =
   new FileSystemXmlApplicationContext("d:/source/spring/test/hello.xml");
  
  Hello hello = (Hello) ac.getBean("hello");

  hello.sayHello();

 }

}
=====================================

시작해보면.... HelloImpl 클래스의 생성자가 호출되는것을 볼 수 있고.

sayHello() 를 통해 메세지가 출력되는 것을 볼수 있당..

property 엘리먼트를 이용해서 특정 메소드에 변수를 전달 할 수도 있다.

 

내친김에 DataSource 를 등록해볼까나???

jndi 도 가능하고, DBCP 도 가능하다.

Application 이니.. DBCP 의 BasicDataSource 를 등록해 보자..

hello.xml 파일에 bean 을 등록...

(물론 DBCP 를 위한 commons-pool, commons-dbcp, commons-collection,
mysql driver 등은 준비해야쥐)

  <bean id="dataSource"
   class = "org.apache.commons.dbcp.BasicDataSource">
   
   <property name="driverClassName" >
     <value>org.gjt.mm.mysql.Driver</value>
   </property>
   <property name="url">
     <value>jdbc:mysql://localhost:3306/test</value>
   </property>
   <property name="username">
     <value>root</value>
   </property>
   <property name="password">
     <value>1111</value>
   </property>
  </bean>

위에 부분을 등록한다.


HelloTest 클래스의 main 메서드에 아래만 등록해 보면 된다.

절라 간단..


DataSource ds = (DataSource)ac.getBean("dataSource");

if(ds == null) System.out.println("null");
else System.out.println("Ok");

Connection conn = ds.getConnection();

PreparedStatement pstmt = conn.prepareStatement("select now()");

ResultSet rs = pstmt.executeQuery();

if(rs.next()){
   
    System.out.println(rs.getString(1));
}

conn.close();

 

시작은 했는데...... 개념이 헷갈리넹 ㅜㅜ

설정은 또 왜이리 많은겨  -.-;;

 

음주가무 해야 하는데 쩝~

 

Posted by tornado
|