【问题标题】:How to achieve auto completion [closed]如何实现自动完成[关闭]
【发布时间】:2012-12-02 10:52:13
【问题描述】:

我正计划开发一个小型搜索引擎,该引擎具有基于数据库中输入的密钥的自动完成功能(有点像谷歌)。是否有推荐的方法来执行自动完成。我是用java做的。

【问题讨论】:

  • 我不认为这是一个措辞恰当的问题,但我认为它不值得结束
  • @BrianAgnew 我投票决定关闭,因为它非常主观。这种类型的“我如何……?”没有正确答案。题。也许更适合programmers.stackexchange.com。
  • 自动补全基于什么?基本上你应该有一个 Dictionary 类,里面有一个 ArrayList<String> 并在上面做一些算法
  • 有趣的是,当您甚至没有告诉我们您要使用的 UI 框架时,已经有两个答案了。一些框架已经提供了自动完成所需的一切,而其他框架则可能需要您自己完成。
  • @Arian 我愿意接受有关 UI 框架的建议。

标签: java user-interface autocomplete


【解决方案1】:

我不清楚这个应用程序是如何部署的,等等,我已经(正确或错误地)将其视为类似 bash 的自动完成功能的要求。

JLine 是 Java 的命令行库。它提供光标键导航、历史记录和完成。不幸的是,文档不是很好,但从Completor 接口开始。

如果您正在使用 Web 界面,我会查看 DWR(它将 Java 对象公开为 Javascript 对象)并按照 this post 实现自动完成。

【讨论】:

    【解决方案2】:

    您应该订阅类似于TextChanged的各种事件(根据需要)

    查看这些问题:

    Java equivalent to C# TextBox TextChanged event

    Auto complete textbox in Java Swing

    swing autocomplete text field / drop down

    【讨论】:

      【解决方案3】:

      没那么难。您可以将 java 与 jquery auto complete plugin 一起使用。

      在这里你只需要拨打这样的电话:

       $("#id").autocomplete("MyJSP.jsp");
      

      因此,您的后台处理由您的 java 完成,这会使用自动完成插件加载功能。很容易!你可以看看这个link。

      他们也有很好的 Spring 做事方式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-06-23
        • 1970-01-01
        • 2021-12-31
        • 2018-04-23
        • 2018-01-13
        • 2010-12-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多