public class Person {
private int id;
private String firstName;
private String lastName;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
7.Daoクラスを作成する。
今回の例では、インタフェースとその実装クラスそれぞれを作成しました。
・PersonDao
public interface PersonDao {
public List selectAll();
}
・PersonDaoImpl
public class PersonDaoImpl extends SqlMapClientDaoSupport implements PersonDao {
@Override
public List selectAll() {
return (List) getSqlMapClientTemplate().queryForList("selectAll");
}
}
テスト
1〜7で使用する準備が整ったので、実際に使用できるか試してみます。
public class StartUp {
public static void main(String[] args) {
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext-ibatis.xml");
BeanFactory factory = (BeanFactory) context;
PersonDao dao = (PersonDao) factory.getBean("personDao");
List personList = dao.selectAll();
System.out.println(personList.size());
}
}
実行すると、以下のような感じでログが表示されました。
正常に連携できました。
2011/03/30 22:42:27 org.springframework.context.support.AbstractApplicationContext prepareRefresh
情報: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@39617189: display name [org.springframework.context.support.ClassPathXmlApplicationContext@39617189]; startup date [Wed Mar 30 22:42:27 JST 2011]; root of context hierarchy
2011/03/30 22:42:27 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
情報: Loading XML bean definitions from class path resource [applicationContext-ibatis.xml]
2011/03/30 22:42:27 org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
情報: Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@39617189]: org.springframework.beans.factory.support.DefaultListableBeanFactory@39b8d6f7
2011/03/30 22:42:27 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
情報: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@39b8d6f7: defining beans [dataSource,transactionManager,sqlMapClient,personDao]; root of factory hierarchy
2011/03/30 22:42:27 org.springframework.jdbc.datasource.DriverManagerDataSource setDriverClassName
情報: Loaded JDBC driver: com.mysql.jdbc.Driver
1