package com.kingschan.blog.test; import com.hankcs.hanlp.HanLP; import com.hankcs.lucene.HanLPIndexAnalyzer; import com.kingschan.blog.dao.HibernateBaseDao; import com.kingschan.blog.dao.Pagination; import com.kingschan.blog.dao.impl.ArticleDaoImpl; import com.kingschan.blog.model.vo.ArticleVo; import com.kingschan.blog.model.vo.CategoryVo; import com.kingschan.blog.model.vo.UserVo; import com.kingschan.blog.po.Article; import com.kingschan.blog.po.ArticleText; import com.kingschan.blog.po.Category; import com.kingschan.blog.util.TimeStampUtil; import org.apache.lucene.search.highlight.*; import org.hibernate.search.FullTextQuery; import org.hibernate.search.query.dsl.QueryBuilder; import org.jsoup.Jsoup; import org.junit.Test; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; /** * Created by kingschan on 2017/2/24. */ @ContextConfiguration(locations = { "classpath:/applicationContext.xml", "classpath:/applicationContext-db.xml", "classpath:/applicationContext-cache.xml", "classpath:/applicationContext-bean.xml", "classpath:/applicationContext-mvc.xml" }) public class BlogFullTextAnalyzerTest extends AbstractTransactionalJUnit4SpringContextTests { @Qualifier("ArticleDaoImpl") @Autowired private ArticleDaoImpl articleDao; @Qualifier("HibernateBaseDao") @Autowired private HibernateBaseDao baseDao; @Transactional // @Test public void getArticleDateQuantityTest() throws Exception { // int val= articleDao.getArticleDateQuantity("3c2ec7b28db9416cafc488660c603bb4","201602"); // System.out.println(val); Pagination page = articleDao.getFullTextSearch(1, 10, "3c2ec7b28db9416cafc488660c603bb4",true, "java对数据库事务进行处理", "articleTitle", "articleText.articleContent"); List<ArticleVo> lis = (List<ArticleVo>) page.getData(); for (ArticleVo a : lis) { System.out.println(a.getArticleTitle()); String text = Jsoup.parse(a.getArticleTitle() + a.getArticleContent()).text(); //关键字提取 List<String> keywordList = HanLP.extractKeyword(text, 3); System.out.println(keywordList); //自动摘要 List<String> sentenceList = HanLP.extractSummary(text, 3); System.out.println(sentenceList); System.out.println("---------------------------------------------------"); } /*List<ArticleText> lis=(List<ArticleText>) baseDao.PaginationByHql(" from ArticleText",1,10,false); for (ArticleText text:lis ) { System.out.println(text.getArticleSummary()); } }*/ } }