Compass学习
本项目使用luence完成商品搜索功能, 但不直接使用 Lucene的API而是使用了Compass的API. Compass对Lucene的API进行了封装.
Compass是一个强大的,事务的,高性能的对象/搜索引擎映射框架(OSEM:object search engine /mapping)与一个Java持久层框架.Compass包括:
comapss把实体类与文档(object)映射起来,
* 搜索引擎抽象层(使用Lucene搜索引荐),
* OSEM (Object/Search Engine Mapping) 支持,
* 事务管理,
* 类似于Google的简单关键字查询语言,
* 可扩展与模块化的框架,
* 简单的API.
记住OSEM这个词就像你理解ORM一样,从今天开始OSEM开始走入你的视野,
OSEM就是类似于Compass采用面向对象方式操作搜索引擎的一种产品.
对于Compass的学习,如果你会使用hibernate那么你按照使用hibernate的思路来学习Compass只需要半小时就能学会.
compass api
Compass的使用可类比hibernate的使用
使用hibernate的步骤:
1.设计实体,并且完成实体的映射元数据(有两方式一是使用hbm.xml文件,二是使用注解)
2.使用hibernate的API完成对实体的增删改查操作.
使用Compass的步骤与hibernate极其类似:
1.设计实体,关且完成实体的映射元数据
hibernate使用注解@Entity,指定实体跟数据库表进行映射.
而Compass使用@Searchale指明实体跟索引的document进行映射
@Searchable
public class Flight implements Serializable{
private Long id;
//定义该属性为搜索实体的标识属性,默认映射到document中的id字段
@SearchableId
public Long getId() { return id ;}
}
2.使用Compass的API完成对实体的增删改查操作.
Compass中的实体是与document进行映射,而hibernate中的实体是与数据库表进行映射
使用Compass的API可以使用面向对象的方式操作搜索引擎
使用hibernate的API可以采用面向对象的试操作数据库表
Compass操作实体的API中常用的类:
1. Compass类相当于hibernate中的SessionFactory用于创建CompassSession,Compass只需要实例化一次,它不是轻量级的.
2. CompassSession相当于hibernate中的session,用于建立会话
3. CompassTransaction相当于hibernate中的Transaction,用于事务操作
hibernate可以不使用hibernate.cfg.xml配制文件而使用可编程配制方式.
对于Compass而言也可以不使用compass.cfg.xml配制文件,而使用可编程的配制方式.
在使用hibernate时如果使用基于注解的方式,在创建sessionFactory时使用的是AnnotationConfiguration这个类而不是Configuration类
对于Compass使用基于注解的方式映射实体,在创建Compass时也要使用相应的CompassAnnotationConfiguration而不是CompassConfiguration
学习Compass的主要学习的就是实体映射时的注解,操作实体时的API.
<!--EndFragment-->
相关推荐
Lucene+compass学习资料+ajax
Compass学习文档1.doc
Compass原理深入学习笔记,对于compass知识的一个梳理,希望对大家有用
Compass概念: 1:Compass相当于hb的SessionFactory 2:CompassSession相当于hb的Session 3:CompassTransaction相当于hb的transaction。 <br>Compass也是采用CompassConfiguration(装载配置和映射文件...
Compass是一个强大的,事务的,高性能的对象/搜索引擎映射(OSEM:object/search engine mapping)与一个Java持久层框架.内容包括compass的jar包及从网上搜集的相关学习资料. 附两个不错的资料地址: ...
完整compass工程+mysql建库sql+学习资料
compass学习必备资料! 唯一的问题就是英文版,希望大家喜欢。 本人技术博客:http://blog.sina.com.cn/javadevelop
mongodb安装包和compass mongodb安装包和compass mongodb安装包和compass 可在node学习过程中使用
compass和wellplan学习总结.pdf
compass和wellplan学习总结.doc
compass和wellplan学习总结材料.doc
NULL 博文链接:https://lionsadness.iteye.com/blog/689948
MongoDB的讲义,资源包。与大数据hadoop学习相关,包含快速入手MongoDB和MongoDB集群安全两个部分,以及mongoDB的可视化工具zip包MongoDB-compass
Controller提供足够的配置参数,使它完全可以被配置重用,这是个值得SpringSide学习的地方。 即使你的Web应用不是采用Spring MVC,如果没有大规模改写的需求,也可以直接使用,让Struts与Spring MVC并存。
刚刚从compass的官网上下载的compass 2.1 API网页,然后合成的chm文件,希望大家能够很好的学习compass
Mi_Compass.zip项目安卓应用源码下载Mi_Compass.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
android 源码学习
基于Java+Hibernate Spring JPA Compass实现的图书商城项目源码.zip 运行环境 适用 课程设计,大作业,毕业设计,项目练习,学习演示等