1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/northersong-OpenSearchPPP

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 6.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 24.11.2024 06:13 d3a5fff

Введение

Данный проект разработан на языке Java и может быть использован с Java Web-проектами. Он поддерживает различные Java-фреймворки, такие как servlet и Spring MVC. Использование метода простое: необходимо собрать исходный код в jar-пакет и внедрить его в проект. Затем следует настроить файл config.properties и добавить его на фронтэнд.

Данные можно настроить в файле конфигурации, включая подключение к базе данных и SQL-запросы. Можно также добавлять, изменять и удалять документы. Кроме того, можно использовать класс PPPCore для получения помощи при работе с документами и самостоятельно углубиться в разработку.

Использование

  1. Как было упомянуто во введении, необходимо собрать исходный код в jar-файл и внедрить в проект. Также необходимо добавить файлы OpenSearchPPP.js и ppp.jsp в одну директорию. В проекте используется AJAX с фреймворком jQuery, поэтому необходимо также добавить файл jquery.
  2. Необходимо изменить файл конфигурации в соответствии с комментариями (можно скачать готовый jar-файл из OpenSerachPPP-demo.7z).
  3. Формат параметров поиска на странице можно посмотреть в OpenSearchAPI поиске параметров.
  4. Внимание! Если вы обнаружите ошибку, пожалуйста, сообщите мне. Я готов исправить её 100 способами! Если вы хотите протестировать всё до конца, я буду рад помочь вам! Конечно, если у вас есть какие-либо предложения, то я буду благодарен за них.

Структура проекта В пакете com.ppp.searchHelp.core:

  • Action — класс для реализации ajax-поиска;
  • PPPCore — основной класс, содержащий информацию о конфигурации, такую как ACCESSKEY;
  • другие классы — вспомогательные классы для поиска и добавления документов.

В пакете com.ppp.searchHelp.DB:

  • класс задач для периодического сканирования базы данных и класс операций с базой данных.

Файл config.properties содержит всю необходимую конфигурацию:

accesskey = accesskey
secret = secret
#название приложения поиска
indexName = PPPOpenSearch
#максимальное количество подключений HTTP-клиента
maxConectionNum = 10
#адрес API Али
host = http://opensearch-cn-beijing.aliyuncs.com


#####################
#следующие настройки можно не использовать##
#####################
#включить задачу периодического обновления базы данных
openTask = true
#дата начала обновления (только одна из двух настроек может использоваться)
startDate = 2015-10-05 02:40:00
#задержка обновления в секундах
delay = 1
#период обновления в секундах
period = 120

#настройки подключения к базе данных
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://127.0.0.1:3306/test2?useUnicode=true&allowMultiQueries=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=root

#SQL для добавления документа
add = select id, name as title,content as body,autho as author from test where `index` = 'add'
#SQL для обновления документа
update = select id, name as title,content as body,autho as author from test where `index` = 'update'
#SQL для удаления документа
delete = select id from test where `index` = 'delete'
#SQL для обновления статуса после успешного обновления
updateIndexStatusSQL = update test set `index`=? where id =?
#статус после успешного обновления
status = ok

Пример использования js:

/**
 * Инициализация search плагина, который можно использовать для поиска сразу после инициализации
 * $.PPPSearch(query,optons)
 * query — поисковый запрос, optons — конфигурация (фильтрация, config, агрегация и т. д.)
 */
var search = $.PPPSearch({
	page:{
		pagerSize:15
	},
	onSuccess : function(data){
		$("#showResult").val(JSON.stringify(data));
	},
	onError:function(data){
		$("#showerrorResult").val(JSON.stringify(data));
	},
	allowNullQuery:true
});

/**
 * Автор norhern, если вы обнаружите ошибки, не стесняйтесь сообщить мне, я готов исправить их 100 различными способами! Если вы захотите протестировать все до конца, я с радостью помогу вам! Конечно, если у вас будут предложения, я буду признателен за них.
 * song571377@qq.com
 */
$("#searchBtn").click(function(){
	search.search($("#searchText").val());
});
$("#prv").click(function(){
	search.page(search.options.page.pageNum-1);
});
$("#next").click(function(){
	search.page(search.options.page.pageNum+1);
});
$("#jump").click(function(){
	search.page($("#pageNum").val());
});
$("#refresh").click(function(){
	search.refresh();
});
</script>

Страница demo представляет собой файл index.jsp. Из-за занятости автора в последнее время, работа над проектом не была завершена. Автор просит указать на недостатки и внести исправления.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/northersong-OpenSearchPPP.git
git@api.gitlife.ru:oschina-mirror/northersong-OpenSearchPPP.git
oschina-mirror
northersong-OpenSearchPPP
northersong-OpenSearchPPP
master