`

solr 通过 数据库导入 建立索引

阅读更多

今天写错一个单词,忙会了,一下午,因为本人也是刚接触,所以对一对多,多对多,等关系建立solr索引也比较陌生,不知道哪儿错了,最后发现是单词写错了,真是郁闷啊。

data-config.xml代码如下:

<dataConfig> 
  <dataSource type="JdbcDataSource"   
              driver="com.mysql.jdbc.Driver" 
             url="jdbc:mysql://localhost:3306/cms?characterEncoding=gbk"   
              user="root"   
              password="lijian"/> 
  <document name="products"> 
    <entity  name="item"
        query="select * from lsoba_product where pro_prop_system_status='A' limit 0,1000"> 
    <field column="pro_id" name="pro_id"/>
    <field column="pro_name" name="pro_name"/>
    <field column="pro_site_price" name="pro_site_price"/>
    <field column="pro_desc" name="pro_desc"/>
    <field column="pro_address" name="pro_address"/>
    <field column="pro_pic_url" name="pro_pic_url"/>
    <field column="pro_src_url" name="pro_src_url"/>
    <field column="pro_brand_id" name="pro_brand_id" />
    <field column="pro_mall_id" name="pro_mall_id" />

//这个单词写错了,写成了entiey 呵呵,浪费了老多时间。
    <entity name="itemcat" query="select itemCat_cid,itemCat_name from lsoba_itemcat where itemCat_cid='${item.pro_id}'">
      <field column="itemCat_cid" name="pro_cid"/>
      <field column="itemCat_name" name="pro_cat_name"/>
    </entity>
    <entity query="select mall_name from lsoba_mall where mall_id='${item.pro_mall_id}'">
      <field column="mall_name" name="pro_mall_name"/>
    </entity>
    <entity query="select BRAND_NAME from lsoba_brand where BRAND_ID='${item.pro_brand_id}'">
      <field column="BRAND_NAME" name="pro_brand_name"/>
    </entity>
  </entity> 
  </document> 
</dataConfig>

 

 

schema.xml 部分配置如下:

<fields>
   <!-- add product infomation -->
 <field name="pro_id" type="text" indexed="true" stored="true" required="false"/>
 <field name="pro_name" type="text" indexed="true" stored="true"/>
 <field name="pro_site_price" type="float" indexed="true" stored="true"/>
 <field name="pro_desc" type="text" indexed="true" stored="true"/>
 <field name="pro_address" type="text" indexed="true" stored="true"/>
 <field name="pro_pic_url" type="text" indexed="true" stored="true"/>
 <field name="pro_src_url" type="text" indexed="true" stored="true"/>

 <!-- add categoryName -->
  <field name="pro_cid" type="text" indexed="true" stored="true" multiValued="true"/>
 <field name="pro_cat_name" type="text" indexed="true" stored="true"/>
 
 <!-- add brand -->
 <field name="pro_brand_id" type="text" indexed="true" stored="true"/>
 <field name="pro_brand_name" type="text" indexed="true" stored="true" multiValued="true"/>
 
 <!-- add mall -->
 <field name="pro_mall_id" type="text" indexed="true" stored="true"/>
 <field name="pro_mall_name" type="text" indexed="true" stored="true" multiValued="true"/>
  
 </fields>

 <!-- Field to use to determine and enforce document uniqueness.
      Unless this field is marked with required="false", it will be a required field
   -->
 <uniqueKey>pro_id</uniqueKey>

 <!-- field for the QueryParser to use when an explicit fieldname is absent -->
 <defaultSearchField>pro_name</defaultSearchField>

 <!-- SolrQueryParser configuration: defaultOperator="AND|OR" -->
 <solrQueryParser defaultOperator="OR"/>

 

 

查询结果就ok了,

http://localhost:8080/solr/select/?q=*%3A*&version=2.2&start=0&rows=10&indent=on

 

  <?xml version="1.0" encoding="UTF-8" ?>
- <response>
- <lst name="responseHeader">
  <int name="status">0</int>
  <int name="QTime">41</int>
- <lst name="params">
  <str name="indent">on</str>
  <str name="start">0</str>
  <str name="q">*:*</str>
  <str name="rows">10</str>
  <str name="version">2.2</str>
  </lst>
  </lst>
- <result name="response" numFound="1000" start="0">
- <doc>
  <str name="pro_address">日本</str>
  <str name="pro_brand_id">201049182911492922809004</str>
- <arr name="pro_brand_name">
  <str>兰蔻</str>
  </arr>
  <str name="pro_cat_name">彩装</str>
- <arr name="pro_cid">
  <str>201004260102</str>
  </arr>
  <str name="pro_desc"><div class="pro_intro"> <div class="title">商品详细说明:</div> <p style="word-break:break-all;">* 重整肌肤的柔软度。一下子就可以渗透进皮肤,没有粘糊的感觉。用后肌肤清新怡然。<BR>* 细细的泡沫能深入除去毛孔污垢,含有彻底清洁毛孔成分,且美白效果甚佳,能使肌肤具有透明美白感。清洁的同时更能祛除游离在皮肤表面的麦拉宁分泌物,丰富维他命E成分,保证肌肤润泽不干燥,有效抗衰老,防止幼纹的生成;<BR>* 使用方法:取适量于手心加水轻轻打起泡沫,用于清洁面部,洁毕用清水洗净即可。</p> </div></str>
  <str name="pro_id">201049182911492922809004</str>
  <str name="pro_mall_id">no5</str>
- <arr name="pro_mall_name">
  <str>No5</str>
  </arr>
  <str name="pro_name">The body shop 美体小铺蔓越莓身体滋养霜-09圣诞限量版(67829)</str>
  <str name="pro_pic_url">http://www.no5.com.cn/photo.html?size=b&photo=20100419145547448544122.jpg</str>
  <float name="pro_site_price">205.0</float>
  <str name="pro_src_url">http://www.no5.com.cn/goods/13598.html</str>
  </doc>
- <doc>
  <str name="pro_address">中国</str>
  <str name="pro_brand_id">201049183211493231502300</str>
- <arr name="pro_brand_name">
  <str>兰蔻</str>
  </arr>
  <str name="pro_cat_name">个人护理</str>
- <arr name="pro_cid">
  <str>201004260103</str>
  </arr>
  <str name="pro_desc"><div class="pro_intro"> <div class="title">商品详细说明:</div> <p style="word-break:break-all;">乳状的化妆水能?底清洁却不刺激脆弱敏感的肌肤。同时能给予肌肤滋润,帮助后续保养品的吸收。<BR>适干性及脆弱敏感性肌肤使用。</p> </div></str>
  <str name="pro_id">201049183211493231502300</str>
  <str name="pro_mall_id">no5</str>
- <arr name="pro_mall_name">
  <str>No5</str>
  </arr>
  <str name="pro_name">HR 赫莲娜光采重现铜光粉饼(01#21222) 本周特价!</str>
  <str name="pro_pic_url">http://www.no5.com.cn/photo.html?size=b&photo=2007122611113640349034.jpg</str>
  <float name="pro_site_price">205.0</float>
  <str name="pro_src_url">http://www.no5.com.cn/goods/11591.html</str>
  </doc>
- <doc>
  <str name="pro_address">法国</str>
  <str name="pro_brand_id">201049183311493311295211</str>
- <arr name="pro_brand_name">
  <str>兰蔻</str>
  </arr>
  <str name="pro_cat_name">彩装</str>
- <arr name="pro_cid">
  <str>201004260102</str>
  </arr>
  <str name="pro_desc"><div class="pro_intro"> <div class="title">商品详细说明:</div> <p style="word-break:break-all;">乳状的化妆水能?底清洁却不刺激脆弱敏感的肌肤。同时能给予肌肤滋润,帮助后续保养品的吸收。<BR>适干性及脆弱敏感性肌肤使用。</p> </div></str>
  <str name="pro_id">201049183311493311295211</str>
  <str name="pro_mall_id">no5</str>
- <arr name="pro_mall_name">
  <str>No5</str>
  </arr>
  <str name="pro_name">HR 赫莲娜光采重现铜光粉饼(01#21222) 本周特价!</str>
  <str name="pro_pic_url">http://www.no5.com.cn/photo.html?size=b&photo=200812041543031000793288.jpg</str>
  <float name="pro_site_price">175.0</float>
  <str name="pro_src_url">http://www.no5.com.cn/goods/1604.html</str>
  </doc>
- <doc>
  <str name="pro_address">美国</str>
  <str name="pro_brand_id">201049183511493593780939</str>
- <arr name="pro_brand_name">
  <str>美体小铺</str>
  </arr>
  <str name="pro_cat_name">彩装</str>
- <arr name="pro_cid">
  <str>201004260102</str>
  </arr>
  <str name="pro_desc"><div class="pro_intro"> <div class="title">商品详细说明:</div> <p style="word-break:break-all;">兰蔻清新恒丽遮瑕笔含丰富保湿植物复合物,抗氧化及轻盈因子,遮盖瑕疵,黑眼圈及皱纹,同时保护肌肤免受环境侵害。细致顺滑乳液,遮盖瑕疵,使妆容丰满自然,经皮肤科专家测试。<BR>01# Clair dore </p> </div></str>
  <str name="pro_id">201049183511493593780939</str>
  <str name="pro_mall_id">no5</str>
- <arr name="pro_mall_name">
  <str>No5</str>
 
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics