xml Config 정보이용, 객체생성 및 메소드실행 (DI:dependency Injection)
* xml로 작성된 Config 파일로 자바 객체생성 및 Methoad 실행시켜주는 라이브러리 만들어보았습니다
1. DynamicK 객체 생성후 -> addConfigFile('경로') 경로 추가 -> setting() 시작됩니다.
2. 기본형들은 value Attribute로 초기값 정해줄수있습니다.
3. 생성시 파라미터 정할수있습니다.
4. 메서드 실행시킬수있습니다.
* 잡담
1. 앞으로 이거 추가추가 하여서 더좋은 라이브러리로 발전시켜야겠습니다.
2. 가져다쓰세욤.ㅎ 쓸사람이있을라나?ㅎ(허접해서.ㅠ)
3. jar 풀면 소스있어요 (다른것도 많이들어가있어서 용량이좀되네욤)
※ 궁굼한것이 있으면 메일주세요 visualkhh@gmail.com
실행
DynamicK k = new DynamicK();
k.addConfigFile("W:\\dynamic_config.xml");
k.setting();
k.addConfigFile("W:\\dynamic_config.xml");
k.setting();
XML
<?xml version="1.0" encoding="UTF-8"?>
<dynamick>
<class id="f" classpath="java.lang.String" value="f_string"></class>
<class id="a" classpath="java.lang.String" value="a_string"></class>
<class id="b" classpath="java.lang.Integer" value="500"></class>
<class id="c" classpath="java.lang.Boolean" value="true"></class>
<class id="d" classpath="khh.dynamick.DynamicInputTest">
<constructor>
<class ref="a"></class>
<class ref="b"></class>
<class id="ggg" classpath="java.lang.Boolean" value="false"></class>
</constructor>
<methoad name="setA">
<class ref="a"></class>
</methoad>
<methoad name="setB">
<class id="umb" classpath="java.lang.Integer" value="670"></class>
</methoad>
<methoad name="setC">
<class ref="c"></class>
</methoad>
<methoad name="getA"></methoad>
<methoad name="getB"></methoad>
<methoad name="getC"></methoad>
</class>
</dynamick>
<dynamick>
<class id="f" classpath="java.lang.String" value="f_string"></class>
<class id="a" classpath="java.lang.String" value="a_string"></class>
<class id="b" classpath="java.lang.Integer" value="500"></class>
<class id="c" classpath="java.lang.Boolean" value="true"></class>
<class id="d" classpath="khh.dynamick.DynamicInputTest">
<constructor>
<class ref="a"></class>
<class ref="b"></class>
<class id="ggg" classpath="java.lang.Boolean" value="false"></class>
</constructor>
<methoad name="setA">
<class ref="a"></class>
</methoad>
<methoad name="setB">
<class id="umb" classpath="java.lang.Integer" value="670"></class>
</methoad>
<methoad name="setC">
<class ref="c"></class>
</methoad>
<methoad name="getA"></methoad>
<methoad name="getB"></methoad>
<methoad name="getC"></methoad>
</class>
</dynamick>
결과
DynamicInputTexta_string500false
setAa_string
setB670
setCtrue
getAa_string
getB670
getCtrue
setAa_string
setB670
setCtrue
getAa_string
getB670
getCtrue