dictserviceimpltest.java

来自「这是关于中文分词的有关程序」· Java 代码 · 共 88 行

JAVA
88
字号
/*
 * Created on 2005-12-31
 * author 谢骋超
 * 
 */
package cn.edu.zju.dartsplitter.impl;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

import junit.framework.TestCase;

import org.apache.log4j.Logger;

import cn.edu.zju.dartsplitter.DictService;
import cn.edu.zju.dartsplitter.appcontext.AppContextFactory;
import cn.edu.zju.dartsplitter.data.DictNode;
import cn.edu.zju.dartsplitter.exceptions.DictSerializeException;

public class DictServiceImplTest  extends TestCase{
    /**
     * Logger for this class
     */
    private static final Logger logger = Logger
            .getLogger(DictServiceImplTest.class);

    private DictService dictService;
    
    
    public void setUp() {        
        dictService=(DictService)AppContextFactory.getContext().getBean("dictService");
    }
    
    private void save(Object o,String fileName){ 
        try {
            FileOutputStream fos = new FileOutputStream(fileName);
            ObjectOutputStream oos = new ObjectOutputStream(fos);
            oos.writeObject(o);
            fos.close();
        } catch (FileNotFoundException e) {
            throw new DictSerializeException("file not find: " + fileName, e);
        } catch (IOException e) {
            throw new DictSerializeException(
                    "IOException on write serialize file: " + fileName, e);
        }        
    }
    
    private Object load(String fileName){
        try {
            FileInputStream fis = new FileInputStream(fileName);

            ObjectInputStream ois = new ObjectInputStream(fis);

            Object o=  ois.readObject();
            return o;
        } catch (FileNotFoundException e) {
            throw new DictSerializeException("file not find on serliaze: " + fileName, e);
        } catch (IOException e) {
            throw new DictSerializeException(
                    "IOException on write serialize file: " + fileName, e);
        } catch (ClassNotFoundException e) {
            throw new DictSerializeException(
                    "class not found on write serialize: " + DictNode.class, e);
        }        
    }    


    
    public void testSaveSerialize() {
        DictNode dictNode=dictService.saveNode("感");
        assertEquals(dictNode.getValue(),"感");
        logger.debug("write node: "+dictNode);
        
        DictNode readNode=dictService.readNode("感");
        logger.debug("read node: "+readNode); 
        logger.debug("readNode token: "+readNode.getTokenValue());       
        
        assertEquals(dictNode,readNode);
        
        logger.debug("感".hashCode());
        logger.debug("冒".hashCode());
    }
}

⌨️ 快捷键说明

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