引言

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

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. MySQL表损坏预防与修复

    1.       表损坏的原因分析 以下原因是导致mysql 表毁坏的常见原因: 1. 服务器突然断电导致数据文件损坏. 2. 强制关机,没有先关闭mysql 服务. 3. mysqld 进程在写表时 ...

  2. [LeetCode#104, 111]Maximum Depth of Binary Tree, Minimum Depth of Binary Tree

    The problem 1: Given a binary tree, find its maximum depth. The maximum depth is the number of nodes ...

  3. POJ 3189 Steady Cow Assignment

    题意:每个奶牛对所有的牛棚有个排名(根据喜欢程度排的),每个牛棚能够入住的牛的数量有个上限,重新给牛分配牛棚,使牛棚在牛心中的排名差(所有牛中最大排名和最小排名之差)最小.   题目输入: 首先是两个 ...

  4. 字符串(后缀自动机):USACO Dec10 恐吓信

    [题目描述] FJ刚刚和邻居发生了一场可怕的争吵,他咽不下这口气,决定佚名发给他的邻居一封脏话连篇的信.他有无限张完全相同的已经打印好的信件,都包含 N个字母(1<=N<=50,000). ...

  5. 【模拟】NCPC 2014 E ceremony

    题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1791 题目大意: N栋大楼(N<=100000),拆除的时候有两种选择的操作,可 ...

  6. 光学字符识别OCR

    1.功能: 光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程 2.典型应用: 名片扫描 3 ...

  7. 转载:c++ sort用法

    sort函数使用模板: sort包含在头文件algorithm中 sort(start,end,排序方法) 1.在没有排序方法时是默认从小到大的排列,例 #include<iostream> ...

  8. UVa1349 Optimal Bus Route Design(二分图最佳完美匹配)

    UVA - 1349 Optimal Bus Route Design Time Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & ...

  9. Java 单元测试Junit

    @Test @Before @After 测试方法运行前执行Before动作(比如创建资源),运行后执行After动作(比如销毁资源) @BeforeClass @AfterClass 测试类运行前执 ...

  10. Java并发编程:线程间通信wait、notify

    Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition 在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者 ...