javaのspring frameworkを試してみた。
bean定義ファイルを読み込もうとしたらところでエラーが発生する。。
エラーの内容は、「xmlbeanfactoryが非推奨」とのこと
それじゃ推奨されているやり方でやればいいんだと思って
簡単に考えたらハマったのでメモしておく。
構成
- src/SpringTestMain.java
- src/Target.java
- src/applicationContext.xml
簡単な構成です。はい。
SpringTestMain.java
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
public class SpringTestMain {
public static void main(String[] args) {
// Beanファイルの読み込み
Resource resource = new ClassPathResource("applicationContext.xml");
// ファイル読み込み成否ステータス
System.out.println("res" + resource.exists());
DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(beanFactory);
// bean定義読み込み
reader.loadBeanDefinitions(resource);
Target target = (Target)beanFactory.getBean("target");
System.out.println("target" + target);
}
}
Target.java
public class Target {
}
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd">
<bean id="target" class="Target"</bean>
</beans>
必要最低限の内容のみです…!
以上で実行したらBean定義ファイルの読み込みに成功し、
Beanの反映にも成功しました。
DefaultListableBeanFactory
XmlBeanDefinitionReader
↑こいつらのいい説明が思い浮かばなかったので、
教えて頂けると嬉しいです><
spring初心者なので色々ツッコミ所がありましたら、
宜しくお願い致します!