test.StuInfoJUnitTest.java Source code

Java tutorial

Introduction

Here is the source code for test.StuInfoJUnitTest.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package test;

import com.wt.entity.StuInfo;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Blob;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Hibernate;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.criterion.Example;
import org.hibernate.service.ServiceRegistry;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.*;

/**
 *
 * @author Administrator
 */
public class StuInfoJUnitTest {

    // ?
    SessionFactory sessionFactory = null;
    Session session = null;
    Transaction transaction = null;

    // ???
    @Before
    public void init() {
        //  configuration ??
        Configuration configuration = new Configuration().configure();
        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
                .applySettings(configuration.getProperties()).build();

        //  SessionFactory ??
        sessionFactory = configuration.buildSessionFactory(serviceRegistry);

        //  session
        session = sessionFactory.openSession();
        // CRUD

        // ?
        transaction = session.beginTransaction();
    }

    // ???
    @After
    public void destroy() {
        // ??
        transaction.commit();

        //  session 
        session.close();

        // sessionFactory
        sessionFactory.close();
    }

    // 
    @Test
    public void testQuery() {
        Criteria criteria = session.createCriteria(StuInfo.class);
        criteria.add(Example.create(new StuInfo()));
        List<StuInfo> list = criteria.list();

        for (StuInfo stuInfo : list) {
            System.out.println("------------------------------------");
            System.out.println("s_id----- " + stuInfo.getS_id());
            System.out.println("s_name---- " + stuInfo.getS_name());
            System.out.println("s_sex----- " + stuInfo.getS_sex());
        }
    }

    // id
    @Test
    public void testQueryById() {
        StuInfo stuInfo = (StuInfo) session.get(StuInfo.class, 1);

        System.out.println("------------ID " + stuInfo.getS_id() + " ?---------------");
        System.out.println("s_id----- " + stuInfo.getS_id());
        System.out.println("s_name---- " + stuInfo.getS_name());
        System.out.println("s_sex----- " + stuInfo.getS_sex());

    }

    // ?
    @Test
    public void testInsert() {

        try {
            // ??
            FileInputStream in = new FileInputStream("web\\img\\testImg.jpg");
            Blob photo = Hibernate.getLobCreator(session).createBlob(in, in.available());
            StuInfo stuInfo = new StuInfo();

            stuInfo.setS_name("test");
            stuInfo.setS_sex("testGirl");

            stuInfo.setS_photo(photo);

            //  session save???
            session.save(stuInfo);

        } catch (Exception e) {
            System.out.println("???");
        }

    }

    // ?
    @Test
    public void testUpdate() {
        StuInfo stuInfo = (StuInfo) session.get(StuInfo.class, 2);

        // ??
        stuInfo.setS_name("6666666666666666");

        //  session save???
        session.save(stuInfo);
    }

    // ?
    @Test
    public void testDelete() {
        // ?
        try {
            StuInfo stuInfo = (StuInfo) session.get(StuInfo.class, 3);

            session.delete(stuInfo);

            //  session save?
            session.save(stuInfo);
        } catch (Exception e) {
            System.out.println("?stu?" + e);
        }
    }

    // ???????
    @Test
    public void testPhotoGet() {
        StuInfo stuInfo = (StuInfo) session.get(StuInfo.class, 1);

        Blob photo = stuInfo.getS_photo();

        try {
            // ?Blob?
            InputStream inputStream = photo.getBinaryStream();

            // inputStreamavailable()??????
            byte[] buf = new byte[inputStream.available()];
            inputStream.read(buf);

            // 
            File file = new File("D:\\tset_img\\testImgOne.jpg");
            if (!file.exists()) {
                file.createNewFile();
            }

            // ?
            OutputStream fileOutputStream = new FileOutputStream(file);
            fileOutputStream.write(buf);

            // ?
            fileOutputStream.close();
            inputStream.close();

        } catch (Exception e) {
        }

    }

}