⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userdaotest.java

📁 springlive ch7
💻 JAVA
字号:
package org.appfuse.dao;

import java.util.List;

import javax.jdo.PersistenceManagerFactory;

import org.appfuse.model.User;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.dao.DataAccessException;

public class UserDAOTest extends BaseDAOTestCase {
    private User user = null;
    private UserDAO dao = null;
    private PersistenceManagerFactory factory = null;

    protected void setUp() throws Exception {
        String[] paths = {"/org/appfuse/dao/applicationContext-test.xml"};
        ctx = new ClassPathXmlApplicationContext(paths, ctx);
        dao = (UserDAO) ctx.getBean("userDAO");

        /*factory =
            (PersistenceManagerFactory) ctx.getBean("persistenceManagerFactory");
        PersistenceManager pm =
            PersistenceManagerFactoryUtils.getPersistenceManager(factory, true);
        TransactionSynchronizationManager.bindResource(factory,
                                                       new PersistenceManagerHolder(pm));
                                                       */
    }

    protected void tearDown() throws Exception {
        dao = null;
        /*
        PersistenceManagerHolder pmHolder =
            (PersistenceManagerHolder) TransactionSynchronizationManager.unbindResource(factory);
        PersistenceManagerFactoryUtils.closePersistenceManagerIfNecessary(pmHolder.getPersistenceManager(),
                                                                          factory);
                                                                          */
    }

    public void testGetUsers() {
        // add a record to the database so we have something to work with
        user = new User();
        user.setFirstName("Rod");
        user.setLastName("Johnson");
        dao.saveUser(user);

        List users = dao.getUsers();
        assertTrue(users.size() >= 1);
        assertTrue(users.contains(user));
    }

    public void testSaveUser() throws Exception {
        user = new User();
        user.setFirstName("Rod");
        user.setLastName("Johnson");

        dao.saveUser(user);
        assertTrue("primary key assigned", user.getId() != null);
        log.info(user);
        assertTrue(user.getFirstName() != null);
    }

    public void testAddAndRemoveUser() throws Exception {
        user = new User();
        user.setFirstName("Bill");
        user.setLastName("Joy");

        dao.saveUser(user);

        assertTrue(user.getId() != null);
        assertTrue(user.getFirstName().equals("Bill"));

        if (log.isDebugEnabled()) {
            log.debug("removing user...");
        }

        dao.removeUser(user.getId());

        try {
            user = dao.getUser(user.getId());
            fail("User found in database");
        } catch (DataAccessException dae) {
            log.debug("Expected exception: " + dae.getMessage());
            assertTrue(dae != null);
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -