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

📄 testany.java

📁 hibernate quickly 一书的各章节源代码
💻 JAVA
字号:

import com.manning.hq.apdxA.BarterPayment;
import com.manning.hq.apdxA.CreditCardPayment;
import com.manning.hq.apdxA.HibernateFactory;
import com.manning.hq.apdxA.Registration;
import junit.framework.TestCase;
import org.hibernate.Session;

import java.math.BigDecimal;

/**
 * 
 */
public class TestAny extends TestCase {
    private Session session1;
    private Session session2;
    protected void setUp() throws Exception {
        HibernateFactory.buildSessionFactory();
        session1 = HibernateFactory.openSession();
        session2 = HibernateFactory.openSession();
    }

    protected void tearDown() throws Exception {
        super.tearDown();
        Session session = HibernateFactory.openSession();
        session.createQuery("delete Registration").executeUpdate();
        session.createQuery("delete CreditCardPayment").executeUpdate();
        session.createQuery("delete BarterPayment").executeUpdate();
        session.flush();
        HibernateFactory.close(session);

        HibernateFactory.close(session1);
        HibernateFactory.close(session2);
    }

    
    /**
     *
     */
    public void testCreditCardPayment() throws Exception {
        Registration r = new Registration();
        CreditCardPayment cc = new CreditCardPayment();
        r.setPaymentDetails(cc);
        cc.setAmount(new BigDecimal(34.50));
        cc.setCurrencyCode("US");

        session1.save(cc);
        session1.save(r);
        session1.flush();

        Registration reg = (Registration) session2.load(Registration.class, r.getId());
        assertEquals("", r.getId(), reg.getId());
        assertEquals("", r.getPaymentDetails().getId(), cc.getId());
        CreditCardPayment cc2 = (CreditCardPayment) r.getPaymentDetails();
        assertEquals("", "US", cc2.getCurrencyCode());

    }

    public void testBarterPayment() throws Exception {
        Registration r = new Registration();
        BarterPayment bp = new BarterPayment();
        r.setPaymentDetails(bp);
        bp.setNumberOfCows(5);
        bp.setNumberOfSheep(10);

        session1.save(bp);
        session1.save(r);
        session1.flush();

        Registration reg = (Registration) session2.load(Registration.class, r.getId());
        assertEquals("", r.getId(), reg.getId());
        assertEquals("", r.getPaymentDetails().getId(), bp.getId());

    }
}

⌨️ 快捷键说明

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