0
点赞
收藏
分享

微信扫一扫

Apache Solr 快速入门


下面我来分享一下我自学solr的笔记,希望能帮助你对solr快速上手。



安装启动



  1. 1 环境

Tomcat 7
        Java 1.6
        solr-4.3.1


  1.  
  2. 2 安装

1.         1.复制 solr/dist/solr-4.3.1.war 到 tomcat/webapps
        2.启动tomcat
        3.修改solr/WEB-INF/web.xml
            <env-entry>
               <env-entry-name>solr/home</env-entry-name>
               <env-entry-value>D:/temp/solr/test1/solr2</env-entry-value>
               <env-entry-type>java.lang.String</env-entry-type>
            </env-entry>
            
            env-entry-value 指定自己创建的空目录
        4.将 \solr\dist 下的jar 复制到  WEB-INF/lib
        5.将 \solr\example\solr\collection1 复制到  env-entry-value 目录下

  1. 3
    启动tomcat
    END



导入数据


  1. 1 在 collection1\conf\ 创建 dataconfig.xml

1.         <?xml version="1.0" encoding="UTF-8"?>
        <dataConfig>  
            <dataSource type="JdbcDataSource"  
                  driver="net.sourceforge.jtds.jdbc.Driver"  
                  url="jdbc:jtds:sqlserver://127.0.0.1:1433/mydatabase"  
                  user="sa"  
                  password="password"/> 
           <document>    
            <entity name="goods_id"  query="select id,name,shortName from t_goods">  
                <field column="id" name="id"/> 
                <field column="name" name="NAME"/>  
               <field column="shortName" name="SHORTNAME"/>
            </entity>
            <entity name="menu_id"  query="select id,title,name from t_menus">  
                <field column="id" name="id"/> 
                <field column="title" name="title"/>  
               <field column="name" name="name"/>
            </entity>
            <entity name="newGoods_id4"  query="
                select
                    g.id as id,
                    g.name as goodsName,
                    t.name as typeName
                from t_Goods2 g
                left join t_Types t on t.id=g.typeId
            ">  
                <field column="id" name="id"/> 
                <field column="goodsName" name="goodsName_txt"/>  
                <field column="typeName" name="typeName_txt"/>
            </entity>
          </document>  
        </dataConfig>

  1. 2

1.      
修改 collection1\conf\solrconfig.xml
        增加
        <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> 
            <lst name="defaults">
            <str name="config">D:/temp/solr/test1/solr2/collection1/conf/dataconfig.xml</str>
            </lst>
        </requestHandler>

  1. 3
    重启tomcat
  2. 4
    在admin页面的  collection1下面的 Dataimport
            选择 对应的 Entity 点 Execute
  3. 5
    在 Core Admin 中 点  Reload 就可以加载刚才导入的数据
    END


查询



  1.  

collection1下面的 Query 界面
    【q】
        *:*             查询所有
        typeName_t:*    根据typeName_t属性来查询
    【fq】
        id:[100000 TO *]    id的范围是 100000到无穷大   TO需要大写

 

举报

相关推荐

0 条评论