新建的core文件夹下conf\solrconfig.xml中加代码
<config>
<!--config是上级节点-->
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
</config>
conf文件夹下新建data-config.xml文件,里面填以下代码
<?xml version="1.0" encoding="UTF-8"?>
<dataConfig>
<!--<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:jtds:sqlserver://192.168.16.72" user="sa" password="123" batchSize="-1" />-->
<dataSource driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://192.168.16.72;DatabaseName=bzdbff" user="sa" password="123" />
<document>
<entity name="example" transformer="RegexTransformer" query="select ID ,A001,A100,A205 from dbo.AATCC_N">
<!--column的id是数据库的id,name的id是managed_schema里面的id,id是必须,并且唯一的-->
<field column="ID" name="ID" />
<!--column的vip是数据库的vip字段,name的vip是managed_schema里面的vip,下面配置同理-->
<field column="A001" name="A001" />
<field column="A100" name="A100" />
<field column="A205" name="A205" />
<field column="A298" name="A298" />
</entity>
</document>
</dataConfig>
Tomcat 8.5\webapps\solr\WEB-INF\lib文件夹下添加jdbc的jar包,我这用的是sqlserver的sqlserverjdbc.jar
conf文件夹下的managed-schema文件中添加列,id列已有不需添加如下
<!--这里无需定义id,因为managed_schema文件已经在前面开头位置定义了,id是必须,并且唯一的-->
<field name="a100" type="string" indexed="true" stored="true" />
<field name="a001" type="string" indexed="true" stored="true" />
<field name="a205" type="string" indexed="true" stored="true"/>
<field name="a298" type="string" indexed="true" stored="true"/>
回到solr操作界面,按如下所示操作
全局查询一下试试