`

代码之美1:使用策略模式来编写solr 排序方法

 
阅读更多

 

代码之美1:使用策略模式来编写solr 排序方法

 

 

背景:

 

jsp中有排序方式几个方式选择(select下拉框方式),value 传入到controller-->manager 基于这个value 构造排序方法

 

原代码: if else if 判断方式

 


 

优点:

代码简单易懂

 

缺点:

新增排序方式的时候,需要增加常量和判断

 

 

 

使用策略模式 :

 


  

缺点:

增加了代码的理解度,enum(jdk1.4特性)相关知识才能明白

 

优点:

体现了oop的思想,层次更加清晰

扩展方便,

 

 

总结:

1.上面只是代表着一种思路,不要一味的认为非得用enum来替代if elseif,有时反而增加复杂度

2.策略模式使用场景

 

  • 以不同的格式保存文件;
  • 以不同的算法压缩文件;
  • 以不同的算法截获图象;
  • 以不同的格式输出同样数据的图形,比如曲线 或框图bar

 

 

 

 

  • 大小: 67.9 KB
  • 大小: 43.8 KB
  • 大小: 43.8 KB
分享到:
评论

相关推荐

    solrdump:使用光标有效地导出SOLR文档

    另请参阅:获取大量已排序的结果:游标作为增加“开始”参数以请求排序结果的后续页面的一种替代方法,Solr支持使用“游标”来扫描结果。 Solr中的游标是一个逻辑概念,它不涉及在服务器上缓存任何状态信息。 ...

    solr4.3源代码一

    通过svn下载的源代码,放在solr的lucene目录下

    solr配置与安装

    1. 创建一个solr的文件夹作为服务器的位置,里面再建两个文件夹一个home文件夹一个server文件夹。 2. home文件夹中存放apache-solr-3.6.0\example\solr中的所有文件,删除data中所有的数据,server文件夹存放apache-...

    Solr(Cloudera)使用手册

    Solr(Cloudera)使用手册

    solr 安装和使用

    solr安装和使用

    SOLR的应用教程

    1 概述 4 1.1 企业搜索引擎方案选型 4 1.2 Solr的特性 4 1.2.1 Solr使用Lucene并且进行了扩展 4 1.2.2 Schema(模式) 5 1.2.3 查询 5 1.2.4 核心 5 1.2.5 缓存 5 1.2.6 复制 6 1.2.7 管理接口 6 1.3 Solr服务原理 6...

    lucene,solr的使用

    lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用lucene,solr的使用

    基于java-solr-geo空间坐标搜索、距离排序、分页

    基于solr-geo空间搜索 1、Solr的schema.xml配置 定义坐标field 2、Solr的data-config.xml配置 建立索引 3、java查询语法 坐标距离、分页、排序

    基于Solr4.9.0的搜索系统:包括Solr索引建立、Solr索引查询DUBBO接口等内容。.zip

    springboot、Dubbo、MySQL,源码web系统,框架,代码均经过严格测试,可直接运行,有需要可自取

    相关性搜索利用Solr与Elasticsearch创建智能应用

    资源名称:相关性搜索 利用Solr与Elasticsearch创建智能应用内容简介:《相关性搜索:利用Solr与Elasticsearch创建智能应用》揭开了相关性搜索的神秘面纱,告诉大家如何将 Elasticsearch与 Solr这样的搜索引擎作为可...

    node-solr:Node.js 的 Solr 模块

    Node.js 的 Solr 模块参考Node.js: : Solr: : 使用npm test运行测试。 如果您没有在 127.0.0.1:8983 上运行 Solr,请编辑“test/common.js”。使用示例请参阅使用测试。 这是一个快速示例: var solr = require ( ...

    [Solr] Solr 管理教程 (英文版)

    [Packt Publishing] Solr 管理教程 (英文版) [Packt Publishing] Administrating Solr (E-Book) ☆ 图书概要:☆ Master the use of Drupal and associated scripts to administrate, monitor, and optimize Solr...

    solr的安装使用步骤

    solr的安装使用步骤

    java进阶Solr从基础到实战

    在本套课程中,我们将全面的讲解Solr,从Solr基础到Solr高级,再到项目实战,基本上涵盖了Solr中所有的知识点。 主讲内容 章节一:Solr基础(上) 1. 环境搭建 2. 核心讲解 3. 数据导入 4. 各种中文分析器 章节二:...

    使用docker 部署solr

    centos7 环境 安装docker 并在docker 中部署solr 并使用

    solr.war包solr.war包solr.war包solr.war包solr.war包

    solr.warsolr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包solr.war包...

    Linux上Solr的启动方式

    (1)借助X Shell上传solr的安装包到/usr/local/目录下,使用 tar -zxvf命令进行解压.  (2)使用内置的Jetty来启动Solr服务器只需要在example目录下,执行start.jar程序即可,我们可以直接执行命令:java –jar ...

    solr乱码解决方法

    solr乱码解决方法,excel文件,贴图说明。

    solr文档解说吧

    solr文档解说

    solifeSearch:所以生活源代码(solr搜索)服务器

    solifeSearch:所以生活源代码(solr搜索)服务器

Global site tag (gtag.js) - Google Analytics