package com.evertrip.etdspro.test.zf;
import java.math.BigInteger;
import java.util.List;
import javax.annotation.Resource;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.evertrip.etdspro.db.GenericDao;
import com.evertrip.etdspro.db.pojo.City;
import com.evertrip.etdspro.db.pojo.Country;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath*:applicationContext.xml", "classpath*:spring-beans.xml", "classpath*:springcxf.xml"})
public class PingYinTest {
@Resource(name = "GenericDaoImpl")
private GenericDao<Country, BigInteger> countrydao;
@Resource(name = "GenericDaoImpl")
private GenericDao<City, BigInteger> citydao;
private static final HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
static{
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
}
public static String cn2Spell(String chinese) {
if(chinese == null) return null;
StringBuffer pybf = new StringBuffer();
char[] arr = chinese.toCharArray();
for (int i = 0; i < arr.length; i++) {
if (arr[i] > 128) {
try {
pybf.append(PinyinHelper.toHanyuPinyinStringArray(arr[i], defaultFormat)[0] + "-");
} catch (Exception e) {
pybf.append(arr[i]);
// e.printStackTrace();
}
} else {
pybf.append(arr[i]);
}
}
return pybf.toString().replace("u:", "v");
};
public void printCountry(){
List<Country> countrys = countrydao.findAll(Country.class);
for (Country country : countrys) {
String str = cn2Spell(country.getName_zhcn());
if(str.endsWith("-"))
str = str.substring(0, str.length() - 1);
System.out.println(country.getId() + "\t" + str);
}
}
@Test
public void printCity(){
List<City> citys = citydao.findAll(City.class);
for (City city : citys) {
String str = cn2Spell(city.getName_zhcn());
if(str.endsWith("-"))
str = str.substring(0, str.length() - 1);
System.out.println(city.getId() + "\t" + str);
}
}
public static void main(String[] args) {
new PingYinTest().printCity();
}
}
Spring Junit单元测试
最新推荐文章于 2025-03-09 16:46:28 发布