`
文章列表
数据库:MySQL IDE:eclipse 查询表建立方法如下: CREATE TABLE `student` (   `id` int(10) NOT NULL auto_increment,   `name` char(10) default NULL,   `sex` char(10) default NULL,   `age` int(10) default NULL,   `password` char(20) character set utf8 default NULL,   PRIMARY KEY  (`id`) ) ENGINE=InnoDB DEFAULT CHARSE ...
1,subclass 元素映射子类:用一张表存储整个继承树的全部实例。 2,joined-subclass元素映射子类:继承树的每层实例对应一张表,且基类的表中保存所有子类的公有列,因此如需创建子类实例,总是需要查询基类的表数据,其子类所在深度越深,查询涉及到的表就越多。 3,unioned-subclass元素映射子类:继承树的每层实例对应一张表,每层的实例完整地保存在对应的表中,表中的每条记录即可对应一个实例。关于继承策略的选择,建议使用unioned-subclass的继承映射策略,理由如下。使用subclass 的映射策略时,因为整个继承树的全部实例都保存在一张表内,因此子类新增的数 ...
HibernateTemplate的 常规 用法 1 ,void delete ( Object entity ) : 删除指定持久化实例 public void removePerson( int personid) {   //先加载特定的实例   Object  p  = getHibernateTemplate().load( Person.class , new Integer( personid));   //删除特定实例   getHibernateTemplate().delete (p); } 2 ,deleteAll ( Collection entities ...
推荐的做法是为每一次分页导航都执行一次新的 查询。因为Hits中保存的并不是真正的Document,因此可以通过HIts.doc(index)的方式取出在一定范围内的Document。在获 得Hits后可以用类似下面的方法进行分页处理: private List processHits(Hits hits,int startIndex,int endIndex)throws Exception{ if(endIndex>=hits.length()) endIndex=hits.length()-1; List docs=new ArrayList(); for(int i=star ...
10 一些经验 10.1关键词区分大小写 or AND TO等关键词是区分大小写的,lucene只认大写的,小写的当做普通单词。 10.2 读写互斥性 同一时刻只能有一个对索引的写操作,在写的同时可以进行搜索 10.3 文件锁 在写索引的过程中强行退出将在tmp目录留下一个lock文件,使以后的写操作无法进行,可以将其手工删除 10.4 时间格式 lucene只支持一种时间格式yyMMddHHmmss,所以你传一个yy-MM-dd HH:mm:ss的时间给lucene它是不会当作时间来处理的 10.5 设置boost 有些时候在搜索时某个字段的权重需要大一些,例如你可能认为标题中出现关键词的文章 ...
9 性能优化 一直到这里,我们还是在讨论怎么样使lucene跑起来,完成指定任务。利用前面说的也确实能完成大部分功能。但是测试表明 lucene的性能并不是很好,在大数据量大并发的条件下甚至会有半分钟返回的情况。另外大数据量的数据初始化建立索引也是一个十分耗时的过程。那么如何提高lucene的性能呢?下面从优化创建索引性能和优化搜索性能两方面介绍。 9.1 优化创建索引性能 这方面的优化途径比较有限,IndexWriter提供了一些接口可以控制建立索引的操作,另外我们可以先将索引写入RAMDirectory,再批量写入 FSDirectory,不管怎样,目的都是尽量少的文件IO,因为创建索引 ...
lucene的搜索相当强大,它提供了很多辅助查询类,每个类都继承自Query类,各自完成一种特殊的查询,你可以像搭积木一样将它们任意组合使用,完成一些复杂操作;另外lucene还提供了Sort类对结果进行排序,提供了Filter类对查询 ...
5.1 最简单的能完成索引的代码片断 IndexWriter writer = new IndexWriter(“/data/index/”, new StandardAnalyzer(), true); Document doc = new Document(); doc.add(new Field("title", "lucene introduction", Field.Store.YES, Field.Index.TOKENIZED)); doc.add(new Field("content", "lucene wo ...
lucene包括core和sandbox两部分,其中core是lucene稳定的核心部分,sandbox包含了一些附加功能,例如highlighter、各种分析器。 Lucene core有七个包:analysis,document,index,queryParser,search,store,util。 1 analysis Analysis包含一些内建的分析器,例如按空白字符分词的WhitespaceAnalyzer,添加了stopwrod过滤的StopAnalyzer,最常用的StandardAnalyzer。 2 document Document包含文档的数据结构,例如Document ...
1 lucene简介 1.1 什么是lucene Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。 1.2 lucene能做什么 要回答这个问题,先要了解lucene的本质。实际上lucene的功能很单一,说到底,就是你给它若干个字符串,然后它为你提供一个全文搜索服务,告诉你你要搜索的关键词出现在哪里。知道了这个本质,你就可以发挥想象做任何符合这个条件的事情了。你可以把站内新闻都索引了,做个资料库;你可以把一个数据库表的若干个字段索引起来,那就不用再担心因为“%like ...
10.3控制标签 10.3.1 10.3.2 10.3.3 10.3.4 generator标签         使用generator 标签可以将指定字符串按指定分隔符分成多个子串,临时生成的多个子串可以使用iterator标签来迭代输出。可以这样理解:generator将一个字符串转化成一个集合。在该标签的标签体内,整个临时生成的集合将位于ValueStack的顶端,蛋一旦该标签结束,该集合将被移出ValueStack         generator 标签的属性:         1,count :可选属性,该属性指定生成集合中元素的总数。         2,separa ...
数据标签主要用于提供各种数据访问相关的功能,包括显示一个Action里的属性,以及生成国际化输出等功能 数据标签主要包括: action :该标签用于在JSP页面中直接调用一个Action,通过指定executeResult参数,还可将该Action的处理结果包含到本页面来。 bean :该标签用于创建一个javabean实例。如果指定了id属性,则可以将创建的javabean实例放入Stack Context中。 date :用于格式化输入一个日期 debug :用于在页面上生成一个调试链接,当单击该链接时,可以看到当前ValueStack和Stack Context中的内容。 i18n: ...
11.6  常用的Ajax标签 struts2为了简化Ajax过程,提供了一些常用的Ajax标签。可以满足一般的Ajax需求,对于一些更为复杂的Ajax通信过程,我们可以使用后加的JSON插件来实现。 11.6.1  div标签 div标签在页面上生成一个Div元素,但这个Div元素的内容不是静态内容,而是从服务器获取的内容。为了让该div标签能取得服务器的数据,必须为该div标签指定一个 (1) href   属性,这个属性必须是一个Action,该Action负责生成该Div元素的内容。 --------------------------------------------- ...
未完成……
Spring中的Hibernate事务: 如果应用持久层是用Hibernate实现的,就会用到HibernateTransactionManager。在应用中使用下面所有的XML来声明它。 <bean id = "transactionManager" class = "org.springframework.orm.hibernate.HibernateTransactionManager">     <property name = " sessionFactory " >        < ...
Global site tag (gtag.js) - Google Analytics