引言

君子生非异也,善假于物也。

Java和.Net哪个好,我们也不需要打口水战,我认为语言只是我们达到目的的工具而已,某个业务场景哪个顺手用哪个(包括除此两种以外的所有语言),当然要精通一门语言是很难的事情,需要我们持之以恒。

Lunece是什么?

Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。

Lunece也是有.Net版本的---Lucene.Net

为什么我没有使用.Net版本的呢?你怎么知道我没有用.....当前Lucene.Net版本到3.03,传说这个项目已经被停掉了,所以后面Lucene所具有的新功能都不会再有跟进了(比如Join、分组等等...)。

所以我没得选择,最终还是选择了原生态的Lunece

Solr是什么

一开始我也是发下大宏愿要基于Lunece去写一个搜索引擎(认真看了百科的就知道Lunece不是搜索引擎,只是信息检索程序库),索引初始化、索引同步、索引查询、权重设置等等,我已经部署好Eclipse、TomCat、并去官网下载了最新的Lunece5.3

经过几天的摸索之后我偶然的发现了Solr这个好东西,这是基于Lucene的全文搜索服务器。非常好使

环境搭建

废话不多说,我们开始我们Solr之旅的第一步:环境搭建

1.Eclipse 下载:http://www.eclipse.org/downloads/download.php?file=/oomph/epp/mars/R1a/eclipse-inst-win64.exe(我的环境是Win7-64位)

2.Java-JDK8.0下载 http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-windows-x64.exe?AuthParam=1446687554_926c8d0bd88689df9fd551dd67501a8a 同样的Win7-64位环境

3.Tomcat8 (相当于.Net的IIS) http://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.0.28/bin/apache-tomcat-8.0.28-windows-x64.zip

以上工具都下载安装之后,需要配置环境变量,如何配置的文章网上很多,乏善可陈

由于我也是Java的新手,多年.Net的经验对于我这样的Java新手来说作用不大,所以我下载的版本都是最新的版本,后来才知道由于开源的问题,版本太多,各种插件的更新速度根本跟不上Java的更新版本

所以很多人、企业都还是用的很低的版本,这一点上.Net程序员们倒是省心了很多,全部都是.Net制定的规则......

环境搭建之变量配置

Tomcat的安装跟网上其他的资料都差不多,乏善可陈,Windows版本就是配置一些环境变量。

由于我的是最新版本,所以网上找的许多的环境变量配置方法有些许出入,下面是我的配置,其中的值中的路径你需要按照你自己的路径配置

1.变量名:JAVA_HOME 值:C:\Program Files\Java\jdk1.8.0_65

2.变量名:CATALINA_HOME 值:C:\apache-tomcat-8.0.28

2.变量名:TOMCAT_HOME 值:C:\apache-tomcat-8.0.28\bin

3.变量名:CLASS_PATH 值:.;%JAVA_HOME%\lib;%TOMCAT_HOME%\BIN;%CATALINA_HOME%\common\lib\servlet.jar

4.变量名:Path 值:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

其中%%之间的值就是引用已经有的变量名的地址

PS:CATALINA_HOME和TOMCAT_HOME 应该就是版本不同步的原因吧,很多应用还是引用的TOMCAT_HOME而最新的TOMCAT8却是用的CATALINA_HOME

Tomcat简单配置

1.为了不让Tomcat默认访问端口8080、80...占用我常用的端口,于是我修改了apache-tomcat-8.0.28\conf\server.xml下的所有端口以90开头,如9080

打开http://localhost:9080/,当然以你自己的配置端口为准。可以看到如下界面

2.点击Manager App管理App发现需要输入密码,这个是在apache-tomcat-8.0.28\conf\tomcat-users.xml文件中配置,然后输入tomcat 密码tomcat就可以登录后端管理界面了。

XML贴出来方便复制:

    <role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat,manager-gui,admin-gui"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>

结尾

这篇博文就先介绍这么多,Solr的配置,我们下篇再讲,一篇博文太长可能会让你感觉很累,学习也需要节奏(高手直接无视此句)。

.Net程序员 Solr-5.3之旅 (一)Solr入门的更多相关文章

  1. GitHub这么火,程序员你不学学吗? 超简单入门教程 【转载】

    本GitHub教程旨在能够帮助大家快速入门学习使用GitHub. 本文章由做全栈攻城狮-写代码也要读书,爱全栈,更爱生活.原创.如有转载,请注明出处. GitHub是什么? GitHub首先是个分布式 ...

  2. 写给嵌入式程序员的循环冗余校验(CRC)算法入门引导

    写给嵌入式程序员的循环冗余校验(CRC)算法入门引导 http://blog.csdn.net/liyuanbhu/article/details/7882789 前言 CRC校验(循环冗余校验)是数 ...

  3. .Net程序员玩转Android系列之一~Java快速入门

    前言 前段时间受公司业务发展需要,探索性进入Android开发领域.一切从零开始,java基础,Java进阶,Android框架学习,Eclipse熟悉,最终到第一个即时通讯App完成,历经一个月的时 ...

  4. Java程序员必备后台前端框架--Layui【从入门到实战】(一)

    layui入门使用及图标的使用 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] [编程工具:IDEA] 下载Layui与文件分析 下载直接去官网下载即可 文件分析 下载完成后,解压会 ...

  5. GitHub这么火,程序员你不学学吗? 超简单入门教程 干货

    本GitHub教程旨在能够帮助大家快速入门学习使用GitHub. 本文章由做全栈攻城狮-写代码也要读书,爱全栈,更爱生活.原创.如有转载,请注明出处. GitHub是什么? GitHub首先是个分布式 ...

  6. 程序员必需知道的Chrome使用技巧(入门篇)

    浏览器版本 Chrome Canary 新增一些没有经过Google工程师的测试或使用的浏览器功能版本.Chrome Dev让大多数开发人员主要使用此版本来测试对浏览器的重大版本功能版本.Chrome ...

  7. Java程序员必备后台前端框架--Layui【从入门到实战】(二)

    layui使用 导航菜单.选项卡 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] [编程工具:IDEA] 导航菜单 在layui官网中示例中,我们可以找到关于导航的例子: 我们点击查 ...

  8. 程序员,一起玩转GitHub版本控制,超简单入门教程 干货2

    本GitHub教程旨在能够帮助大家快速入门学习使用GitHub,进行版本控制.帮助大家摆脱命令行工具,简单快速的使用GitHub. 做全栈攻城狮-写代码也要读书,爱全栈,更爱生活. 更多原创教程请关注 ...

  9. [置顶] AI大行其道,你准备好了吗?—谨送给徘徊于转行AI的程序员

    前言 近年来,随着 Google 的 AlphaGo 打败韩国围棋棋手李世乭之后,机器学习尤其是深度学习的热潮席卷了整个IT界.所有的互联网公司,尤其是 Google 微软,百度,腾讯等巨头,无不在布 ...

随机推荐

  1. [Forward]Visual Guide: Setting up My Sites in SharePoint 2013

    from  http://blog.sharedove.com/adisjugo/index.php/2012/07/25/visual-guide-setting-up-my-sites-in-sh ...

  2. bcb 如何在DLL中捕捉系统级异常

    http://topic.csdn.net/t/20031023/09/2385627.html -------------------------------------------------- ...

  3. QT、QTE、qtopia区别

    QT.QTE.qtopia区别 Qt的授权是分为两条线,商业版和开源版.如果使用商业版的Qt,那么开发出的程序可以是私有的和商业的:如果使用的是开源版的Qt,由于其使用的是GPL协议,那么可发出的程序 ...

  4. BZOJ1589: [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果

    1589: [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 4 ...

  5. Missing Number ——LeetCode

    Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is missin ...

  6. 数学概念——J - 数论,质因数分解

    J - 数论,质因数分解 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit ...

  7. JavaScript中的加号

    JavaScript中的加号“+”可以作为数学运算符的加,也可以作为字符串拼接,也可以作为一元运算符,表示正数. 1+2 "2"+"3" 3+"2&q ...

  8. C++中delete和 delete[]的区别

    总的原则是,如果是用new[]创建的,则用delete[]删除,如果是用new创建的,则用delete删除. 对于基本类型,比如char *p=new char[20];如果删除时,delete p和 ...

  9. Codeforces Round #259 (Div. 2) D. Little Pony and Harmony Chest 状压DP

    D. Little Pony and Harmony Chest   Princess Twilight went to Celestia and Luna's old castle to resea ...

  10. 【模拟】Class 解题报告

    [问题描述] 信息班这期的课将要结束了,老师要从现在班上的同学中选出比较优秀的同学进入下一期的学习.而录取标准则是将平时作业和考试一起考虑,综合成绩排在前面的则录取.经过一番思考,老师作了以下的筛选计 ...