public class IbatisExecutor { private static DaoManager daoManager; public static void main(String[] args) throws Exception { try { Reader reader = Resources.getResourceAsReader("dao.xml"); daoManager = DaoManagerBuilder.buildDaoManager(reader); ShainDAO dao = (ShainDAO) daoManager.getDao(ShainDAO.class); Shain shain = new Shain(); shain.setShainId(111); // 検索処理(JOIN) shain = dao.selectAllByPrimaryKey(shain); System.out.println("-----検索(JOIN)結果-----"); System.out.println("shainId = " + shain.getShainId()); System.out.println("shainName = " + shain.getShainName()); System.out.println("bushoName = " + shain.getBusho().getBushoName()); System.out.println("\n"); // トランザクション処理開始 daoManager.startTransaction(); // 挿入処理 BushoDAO bushoDAO = (BushoDAO) daoManager.getDao(BushoDAO.class); Busho busho = new Busho(); busho.setBushoId(2); busho.setBushoName("営業部(iBATIS)"); busho.setExtensionNum(2345); bushoDAO.insert(busho); dispResult(bushoDAO, busho, "挿入結果"); // 更新処 busho.setBushoId(2); busho.setExtensionNum(3456); bushoDAO.updateByPrimaryKey(busho); dispResult(bushoDAO, busho, "更新結果"); // 削除処理 busho.setBushoId(2); bushoDAO.deleteByPrimaryKey(busho); dispResult(bushoDAO, busho, "削除結果"); // コミット daoManager.commitTransaction(); } catch(Exception e) { e.printStackTrace(); } finally { try { daoManager.endTransaction(); } catch(Exception e) { e.printStackTrace(); } } }