powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Четверговый поиск в БД like a Google.
25 сообщений из 60, страница 2 из 3
Четверговый поиск в БД like a Google.
    #39704556
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Mayton.

Ты такую порнографию хотел увидеть? Типо на знание присутсвия MetaData в JDBC ?


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
package test_jvm;

import oracle.jdbc.driver.*;

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

public class DbSearcher {
 
	public static final String host ="";
	public static final String sid = "";
	public static final String user = "";
	public static final String pwd = "";

	public static ArrayList<String> getColumns( Connection conn, String schemaName,  String tableName ) throws SQLException {
    	ArrayList<String> fields = new ArrayList<String>();
		DatabaseMetaData meta = conn.getMetaData();
    	ResultSet rsetCol = meta.getColumns( null, schemaName, tableName, null );
    	while (rsetCol.next() ) {
    		String colName = rsetCol.getString(4);
    		fields.add( colName );
    	}
    	rsetCol.close();
    	return fields;
	}
	public static String formatOutput( ArrayList<String> fields, ResultSet rset ) throws SQLException {
		StringBuilder res;
		res = new StringBuilder();
		int pos = 1;
		res.append( "{ " );
		for ( String s:fields ) {
			if ( pos>1 ) {
				res.append( ", " );
			}
			String val = rset.getString( pos++ );
			res.append( s );
			res.append( "=" );
			res.append( val );
		}
		res.append( " }" );
		return res.toString();
	}
    public static void stupedSearch( Connection conn, String schemaName,  String tableName, String subStr ) throws SQLException
    {
    	ArrayList<String> fields;
    	fields=getColumns( conn, schemaName, tableName );
    	StringBuilder sql;
    	sql = new StringBuilder();
    	sql.append( "SELECT * FROM "+schemaName+"."+tableName+" WHERE 1=0 " );
    	for ( String s:fields) {
    		sql.append( " OR " );
    		sql.append( s );
    		sql.append( " like :" );
    		sql.append( s );
    		sql.append( " " );
    	}
    	System.out.println( "Search in table "+schemaName+"."+tableName );
    	System.out.println( "sql="+sql.toString() );
    	PreparedStatement stmt;
    	stmt = conn.prepareStatement( sql.toString() );
    	int pos = 1;
    	for ( String s:fields ) {
    		stmt.setString( pos++, "%"+subStr+"%" );
    	}
    	ResultSet rset = stmt.executeQuery();
    	while ( rset.next() ) {
    		System.out.println( formatOutput( fields, rset ) );
    	}
    	rset.close();
    	stmt.close();
    	System.out.println( "search finished" );
    }
    
	public static void main(String[] args) throws SQLException {
		// TODO Auto-generated method stub
		String searchString = "153666";
		java.sql.Connection conn;
		DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());
		conn = DriverManager.getConnection
				  ("jdbc:oracle:thin:@"+host+":1521:"+sid, user, pwd );
		DatabaseMetaData meta = conn.getMetaData();
		ResultSet rset1, rset2;
		stupedSearch( conn, "MSM", "CSC_OBJECT", searchString );
/*		
		rset1 = meta.getSchemas();
		while ( rset1.next() ) {
			String schemaName = rset1.getString( 1 );
			System.out.println( "schema "+schemaName );
			rset2 = meta.getTables( null, schemaName, null, null );
			while ( rset2.next() ) {
				String tableName = rset2.getString( 3 );
				System.out.println( schemaName+"."+tableName );
		        stupedSearch( conn, schemaName, tableName, "test" );
			}	
			rset2.close();
		}
		rset1.close();
*/
		System.out.println( "OK" );
	}

}




Search in table MSM.CSC_OBJECT
sql=SELECT * FROM MSM.CSC_OBJECT WHERE 1=0 OR ID like :ID OR TYPE_RE like :TYPE_RE OR CREATE_METHOD like :CREATE_METHOD OR START_DATE like :START_DATE OR DATE_IN like :DATE_IN OR TAC_ID like :TAC_ID OR USR like :USR OR DWELLING like :DWELLING OR MSM_ID like :MSM_ID OR NAME like :NAME OR LOCATION like :LOCATION OR END_DATE like :END_DATE OR OBJ_ID like :OBJ_ID OR ADR_ID like :ADR_ID OR AREA_SIZE like :AREA_SIZE OR HEIGHT like :HEIGHT OR INSTALL_DATE like :INSTALL_DATE OR PROHIBIT_REASON like :PROHIBIT_REASON OR VER like :VER OR POPULATION like :POPULATION OR FLAG_WORK like :FLAG_WORK OR ROOF_AREA like :ROOF_AREA OR PAVE_AREA like :PAVE_AREA OR SOIL_AREA like :SOIL_AREA OR LAWN_AREA like :LAWN_AREA OR FLAG_INP like :FLAG_INP OR FLAG_OUT like :FLAG_OUT OR FLOORS like :FLOORS OR MSM_NAME like :MSM_NAME OR ROAD_AREA like :ROAD_AREA OR FLAG_ORA like :FLAG_ORA OR FLAG_PDK like :FLAG_PDK OR CAD_TAG like :CAD_TAG OR OD_AREA like :OD_AREA OR AREA_REMARK like :AREA_REMARK OR WAHOR_POWER like :WAHOR_POWER OR WATER_DEPTH like :WATER_DEPTH OR FLAG_FILTR like :FLAG_FILTR OR TRO_ID like :TRO_ID OR LENGTH_DRAIN like :LENGTH_DRAIN OR WIDTH_DRAIN like :WIDTH_DRAIN OR DEPTH_DRAIN like :DEPTH_DRAIN OR FLAG_DRAIN like :FLAG_DRAIN OR VOLUME_DRAIN like :VOLUME_DRAIN OR APD_ID like :APD_ID OR GIS_ID like :GIS_ID OR FLG_COMPLEX like :FLG_COMPLEX OR IMPROVEMENT_ID like :IMPROVEMENT_ID OR LIFE_REQUEST like :LIFE_REQUEST OR LIFE_REQUEST_DESC like :LIFE_REQUEST_DESC OR ARMOR_TECHNOLOGICAL like :ARMOR_TECHNOLOGICAL OR ARMOR_EMERGENCY like :ARMOR_EMERGENCY OR REGISTERED_PEOPLE like :REGISTERED_PEOPLE OR TOTAL_AREA like :TOTAL_AREA OR COMMON_AREA like :COMMON_AREA OR TFI_ID_RV like :TFI_ID_RV OR TFI_ID_RK like :TFI_ID_RK OR OKS like :OKS OR CAD_TAG_ZU like :CAD_TAG_ZU OR TPU_ID like :TPU_ID OR BUSH_AREA like :BUSH_AREA OR COMMON_AREA_1 like :COMMON_AREA_1 OR COMMON_AREA_2 like :COMMON_AREA_2 OR FLAG_124 like :FLAG_124 OR VCKP_FLOORS like :VCKP_FLOORS OR VCKP_IMPROVEMENT like :VCKP_IMPROVEMENT OR IS_ODPU like :IS_ODPU OR COUNT_FLAT like :COUNT_FLAT OR ZNOP_ID like :ZNOP_ID OR OSGC_ID like :OSGC_ID OR GIS_GKH like :GIS_GKH OR OWNERS like :OWNERS OR WATER_AREA like :WATER_AREA


{ ID=153666, TYPE_RE=1, CREATE_METHOD=1, START_DATE=2000-04-27 15:31:36.0, DATE_IN=2000-04-27 15:31:36.0, TAC_ID=2, USR=MSM, DWELLING=1, MSM_ID=61637/89W, NAME=Многоквартирный дом, LOCATION=null, END_DATE=null, OBJ_ID=null, ADR_ID=186998, AREA_SIZE=null, HEIGHT=null, INSTALL_DATE=null, PROHIBIT_REASON=null, VER=1, POPULATION=null, FLAG_WORK=1, ROOF_AREA=null, PAVE_AREA=null, SOIL_AREA=null, LAWN_AREA=null, FLAG_INP=N, FLAG_OUT=N, FLOORS=null, MSM_NAME=ЖИЛОЙ ДОМ, ROAD_AREA=null, FLAG_ORA=N, FLAG_PDK=Y, CAD_TAG=1676:0:49, OD_AREA=null, AREA_REMARK=null, WAHOR_POWER=null, WATER_DEPTH=null, FLAG_FILTR=null, TRO_ID=null, LENGTH_DRAIN=null, WIDTH_DRAIN=null, DEPTH_DRAIN=null, FLAG_DRAIN=null, VOLUME_DRAIN=null, APD_ID=null, GIS_ID=180895, FLG_COMPLEX=N, IMPROVEMENT_ID=null, LIFE_REQUEST=N, LIFE_REQUEST_DESC=null, ARMOR_TECHNOLOGICAL=N, ARMOR_EMERGENCY=N, REGISTERED_PEOPLE=null, TOTAL_AREA=null, COMMON_AREA=null, TFI_ID_RV=8150, TFI_ID_RK=8340, OKS=Y, CAD_TAG_ZU=null, TPU_ID=null, BUSH_AREA=null, COMMON_AREA_1=null, COMMON_AREA_2=null, FLAG_124=N, VCKP_FLOORS=null, VCKP_IMPROVEMENT=null, IS_ODPU=null, COUNT_FLAT=null, ZNOP_ID=null, OSGC_ID=null, GIS_GKH=Y, OWNERS=null, WATER_AREA=null }


{ ID=336932, TYPE_RE=1, CREATE_METHOD=1, START_DATE=2013-11-15 11:57:30.0, DATE_IN=2013-11-15 11:57:30.0, TAC_ID=45, USR=MSM, DWELLING=2, MSM_ID=153666/00R, NAME=Детская площадка, LOCATION=null, END_DATE=null, OBJ_ID=null, ADR_ID=138802, AREA_SIZE=null, HEIGHT=null, INSTALL_DATE=null, PROHIBIT_REASON=null, VER=1, POPULATION=null, FLAG_WORK=1, ROOF_AREA=null, PAVE_AREA=null, SOIL_AREA=null, LAWN_AREA=null, FLAG_INP=Y, FLAG_OUT=null, FLOORS=null, MSM_NAME=null, ROAD_AREA=null, FLAG_ORA=N, FLAG_PDK=N, CAD_TAG=78:14:7645А:1016, OD_AREA=null, AREA_REMARK=null, WAHOR_POWER=null, WATER_DEPTH=null, FLAG_FILTR=null, TRO_ID=null, LENGTH_DRAIN=null, WIDTH_DRAIN=null, DEPTH_DRAIN=null, FLAG_DRAIN=null, VOLUME_DRAIN=null, APD_ID=null, GIS_ID=null, FLG_COMPLEX=N, IMPROVEMENT_ID=null, LIFE_REQUEST=N, LIFE_REQUEST_DESC=null, ARMOR_TECHNOLOGICAL=N, ARMOR_EMERGENCY=N, REGISTERED_PEOPLE=null, TOTAL_AREA=null, COMMON_AREA=null, TFI_ID_RV=null, TFI_ID_RK=8370, OKS=Y, CAD_TAG_ZU=null, TPU_ID=null, BUSH_AREA=null, COMMON_AREA_1=null, COMMON_AREA_2=null, FLAG_124=N, VCKP_FLOORS=null, VCKP_IMPROVEMENT=null, IS_ODPU=null, COUNT_FLAT=null, ZNOP_ID=null, OSGC_ID=null, GIS_GKH=null, OWNERS=null, WATER_AREA=null }

search finished
OK
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704558
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev, круть.

Но не спешите. Я все таки переделаю интерфейс. Добавлю детекторы Date, Number.
Больше входных параметров. И не один коннекшен а много для параллелизма.

Далее мне нужна будет толстая БД для симуляции поисков. И надо вкомпилировать
хард-кодом в сборку штук 10-20 разных JDBC драйверов чтоб летало везде.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704560
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonLeonid Kudryavtsev, круть.

Но не спешите. Я все таки переделаю интерфейс. Добавлю детекторы Date, Number.
Больше входных параметров. И не один коннекшен а много для параллелизма.

Далее мне нужна будет толстая БД для симуляции поисков. И надо вкомпилировать
хард-кодом в сборку штук 10-20 разных JDBC драйверов чтоб летало везде.


Нахрена?

На моей БД (пара десятков терабайт) оно пару десятков минут, если не часов, искать будет
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704561
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,
Код: java
1.
2.
3.
4.
5.
 		sql.append( " OR " );
    		sql.append( s );
    		sql.append( " like :" );
    		sql.append( s );
    		sql.append( " " );


ты зачем трмозной вариант используешь?

так быстрее
Код: java
1.
 		sql.append( " OR " ).append( s ).append( " like :" ).append( s ).append( " " );
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704562
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevmaytonLeonid Kudryavtsev, круть.

Но не спешите. Я все таки переделаю интерфейс. Добавлю детекторы Date, Number.
Больше входных параметров. И не один коннекшен а много для параллелизма.

Далее мне нужна будет толстая БД для симуляции поисков. И надо вкомпилировать
хард-кодом в сборку штук 10-20 разных JDBC драйверов чтоб летало везде.


Нахрена?

На моей БД (пара десятков терабайт) оно пару десятков минут, если не часов, искать будет
Это... прекрасно.

Как раз есть повод развернуть параллелизм. С другой стороны я писал в родительском топике
что заказчик такой работы - говорит что надо найти любой ценой. Сутки? Окей. Тоже катит.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704563
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторappend( " like :" ).
это уже под конкретную субд закос
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704564
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя, до core-review мы еще не дошли. Но КМК ты смотришь на оптимизацию под неверным углом.

Нужно во первых понять что для данного приложения именно это место будет bottle-neck. А я готов
спорить на виски что на самом деле оно есть! но не здесь! А совсем в другом месте.

Во вторых я предлагаю тебе дизассемблировать сборку в двух вариантах и посмотреть какой на самом
деле javac cобирает код. Очень многие паттерны строковых оптимизаций стали бесполезны после семерки
и восьмерки. Вспомни какие ::toString() имплементации генерит твоя IDE.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704567
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяавторappend( " like :" ).
это уже под конкретную субд закос
Вообще-то, нет. Двоиточие вроде стандарт ANSI. Хотя не уверен. Пофиг.

Можно поменять на ?
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704568
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
люди уже много чего сделали
https://habr.com/post/330220/
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704571
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяты зачем трмозной вариант используешь?

так быстрее

Вообще-то IMHO фиолетово.
совершенно одинаковая конструкция, которая и выполняться должна совершенно одинаково

Не люблю длинных строк в коде. Много коротких строк, проще ошибку найти. И по java сообщению об ошибке (строка выводится, а позиция нет), да и под отладчиком ходить и ставить бряк-поинты удобнее.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704572
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevВообще-то, нет. Двоиточие вроде стандарт ANSI. Хотя не уверен. Пофиг.

Можно поменять на ?
в mysql
like '%xxx%'
если так
поле COLLATE utf8_general_ci like '%xxx%'
то ищет без учёта регистра
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704573
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmayton,
люди уже много чего сделали
https://habr.com/post/330220/
Сразу поверил в статью 2017 года?
Может все таки продизассемблируешь.

P.S. На самом деле я невкурсе девятки и десятки. Но разве у тебя нет инженерного любопытства?
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704574
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevНе люблю длинных строк в коде
Код: java
1.
2.
3.
4.
5.
sql.append( " OR " )
.append( s )
.append( " like :" )
.append( s )
.append( " " );



Leonid Kudryavtsevсовершенно одинаковая конструкция, которая и выполняться должна совершенно одинаково https://habr.com/post/330220/
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704575
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы спорите о пустяках. Не жаль времени?
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704576
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmayton,
люди уже много чего сделали
https://habr.com/post/330220/

Hotspot JVM находит new StringBuilder().append(x).append(y) .toString() паттерны

В моем и твоем коде этого нет


обходясь без создания промежуточных объектов.

создания объектов и так нет
похоже, подразумевают создания объекта StringBuilder.
Но опять таки, это не наш случай. Нам все равно StringBuilder нужен, т.к. конкатенируем в цикле
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704577
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonP.S. На самом деле я невкурсе девятки и десятки. Но разве у тебя нет инженерного любопытства?я пока под 10 перевожу то что есть, пока не до исследования.
и без того проблем хватает
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704578
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevНо опять таки, это не наш случай. Нам все равно StringBuilder нужен, т.к. конкатенируем в цикле
разница в sql.append( " OR " )
.append( s )
.append( " like :" )
.append( s )
.append( " " );

sql.append( " OR " );
sql.append( s );
sql.append( " like :" );
sql.append( s );
sql.append( " " );
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704581
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя...разница в ...
бечмарк в студию

Ссылка на статью - не катит. Там совршенно про другой паттерн расказывают.
new, append, toString

а пока - какие-то сказки. Почему три операции записанные в одну строчку, должны быть быстрее, чем те же три операции записанные через перевод строки - какие-то сказки.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704586
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmaytonP.S. На самом деле я невкурсе девятки и десятки. Но разве у тебя нет инженерного любопытства?я пока под 10 перевожу то что есть, пока не до исследования.
и без того проблем хватает
Жаль.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704594
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsevа пока - какие-то сказки. Почему три операции записанные в одну строчку, должны быть быстрее, чем те же три операции записанные через перевод строки - какие-то сказки.там есть ссылка и на доклад
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704609
andreykaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmayton,

если свяжешься со мной - могу продемонстрировать поиск с использованием like
хаха ржака. самый очевидный вариант если в детали не вчитываться. я думаю там что-то иное подразумевалось. не? ))
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704615
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
запрос
Код: sql
1.
2.
3.
4.
5.
SELECT
  z1.id,
  z1.nn
FROM z1
WHERE z1.nn LIKE '%67.89%'


результат"id""nn"164867,89

Double/Float - это очень интересные и сложные типы данных. Они сжимают или хешируют вещественный диапазон
чисел как функция класса инъекция на некий ограниченный диапазон констант. Магических чисел. И поиск по
вещественному числу как по строке никогда не делают. Если вы хотите поискать - (Реально???) то я советую
задать некий криетерий близости (эпсиолон) и точку в окрестности которой вы будете искать число максимально
близкое. Это и будет поиск по Double/Float. Так и только так поиск будет осмысленным с математической точки
зрения. Все остальные ваши изобретения в части поиска по Float/Double как по тексту обречены на провал
и на наличие аномалий которые устранить на уровне операций с строками будет невозможно.

Поэтому, я вас прошу оставить вещественный тип в покое
до лучших времен.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704625
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ахтунг!

Изменения в задании №1.

Обновлённый интерфейс.
- поддержим пул коннектов
- итератор нафиг. Будет Stream.

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
/**
 *
 * @see "http://www.sql.ru/forum/1302448/chetvergovyy-poisk-v-bd-like-a-google"
 */
public interface ILikeAGoogle extends Closeable {

    /**
     * Set jdbc connection string
     * Example: 'jdbc:oracle:thin:scott/tiger:127.0.0.1:1521/XE'
     *
     * @param url
     */
    void setConnectionString(String url);

    /**
     * Get SQL connection from pool
     *
     * @return
     */
    Connection getConnectionFromPool();
    
    /**
     * Lookup in generic database
     *
     * @param expression - search expression (for ex: "bla-bla")
     * @return collection of pairs : table name, data row (in JSON format).
     *
     * @throws SQLException
     */
    Stream<Pair<String, Gson>> lookup(String expression) throws SQLException;

}



Go-go кодить!
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39704650
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreykaTвадяmayton,

если свяжешься со мной - могу продемонстрировать поиск с использованием like
хаха ржака. самый очевидный вариант если в детали не вчитываться. я думаю там что-то иное подразумевалось. не? ))
вариант не совсем очевидный. как ни странно.
демонстрация реализации. с изменением времени от нажатия до отображения . с возможностью добавлять, изменять.
...
Рейтинг: 0 / 0
Четверговый поиск в БД like a Google.
    #39706591
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В исходнике Леонида нет поддержки интерфейса ILikeAGoogle

Код: java
1.
2.
// TODO: Implement ILikeAGoogle
public class DbSearcher {


Вобщем есть поинт на доработку. Кто возьмется?
...
Рейтинг: 0 / 0
25 сообщений из 60, страница 2 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / Четверговый поиск в БД like a Google.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]