2013-10-05 2 views
0

Я хочу написать поиск по словам, который подключается к определенному веб-сайту (огромный), принимает слово от пользователя, выполняет поиск по сайту и возвращает строки, содержащие слово, это должно быть написано в java и в виде апплета. Я прочитал несколько уроков и вопросов по этому вопросу и понял, что нужно сделать:Каковы шаги по поиску слова для веб-сайта?

1. присоединитесь к веб-сайту и получите содержимое веб-сайта и сохраните его в строке (это должно быть сделано с помощью webcrawler, который будет создан из моего собственного кода для подключения к веб-сайту и сохранит содержимое в библиотеке string + jsoup для анализа HTML-кода).

2.save данные в базу данных (в моем случае база данных nosql).

3.index данные в базе данных.

4.query база данных, чтобы показать результаты.

5.make пользовательский интерфейс для отображения результатов поиска (я использую swing.japplet).

теперь мои Qustions являются:

1.Have я правильно понял шаги, которые я должен идти (пожалуйста, объясните мне в деталях, если шаг не является обязательным или необходимым)

2.Is это необходимо? иметь базу данных?

уведомление: Я хочу осуществить это сам, без использования готовых вещей, таких как Lucene, Nutch, Solr, ...

редактировать: 3 человека сказали мне апплет не подходит для такой вещи, так, что должно быть заменой?

Большое спасибо за помощь.

ответ

0

Вы должны посмотреть на использование Lucene, так как он делает большую часть того, что вы хотите здесь.

Вы не должны использовать апплеты.

+0

нет Я хочу реализовать его сам.не такими готовыми вещами, как люцен, почему бы не апплеты? – fereshteh

+0

@ user2841094 - Я объяснил, почему апплеты - плохая идея в моем ответе. –

+0

Что должно быть вместо апплета? Веб-сервис? – fereshteh

0

Для небольшого набора данных достаточно базы данных. Базы данных, такие как mysql, поставляются с full text search functions.

Для большего набора данных вы можете рассмотреть Lucene или Solr.

+0

Вы имеете в виду, что я должен использовать mysql вместо баз данных nosql? – fereshteh

+0

Если бы я был вами, я просто поеду с solr. – interskh

0

Это один из способов реализации этого. Другим (более простым) способом было бы использовать существующий механизм поиска текста/индексации, такой как Lucene/Solr. Стремление к повторному внедрению колеса «поиска текста/индексации» с использованием технологии базы данных поражает меня как пустую трату усилий, если у вас нет разумной технической причины для этого.

Вам нужна какая-то база данных, потому что индексирование веб-сайта на лету просто не работает. Луцену справится с этим.

Я думаю, что ваш выбор апплетов Java для создания пользовательского интерфейса - плохая идея. Существуют и другие технологии, которые дают результаты, которые являются хорошими или лучшими ... без риска для безопасности плагина Java-браузера.


Наконец, еще один способ сделать ваш сайт доступным для поиска - это заставить Google сделать это за вас. Сделайте свой контент сайта индексируемым, а затем используйте API поиска Google.

+0

Можете ли вы посоветовать мне лучшие технологии, пожалуйста? – fereshteh

+0

Начните с рассмотрения: http://stackoverflow.com/questions/2055430/list-of-rich-web-application-technologies –

+0

Большое спасибо Стивену, это действительно то, на что я должен смотреть. – fereshteh

Смежные вопросы