Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Использование StringUtils.join при построении sql-запроса / 8 сообщений из 8, страница 1 из 1
20.02.2013, 16:05:41
    #38159278
Geminis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Не будут ли опытные джавоводы столь любезны, чтобы подсказать как бы поизящней сделать нижеизложенное?
(joinedEntities получаем как параметр метода, может быть null)
Код: java
1.
2.
3.
4.
5.
String[] joinedEntities = new String[] {"B", "C", "D"}; //для примера

joinedEntities.ДобавитьВНачало("A"); //?

String joinedTables = StringUtils.join(joinedEntities, "` natural join `"));



Следующие два варианта уже рассматривал:
Код: java
1.
2.
3.
4.
5.
6.
String[] joinedEntities = new String[] {"B", "C", "D"};
String joinedTables = "A";

if ( joinedEntities != null ) {
   joinedTables += "` natural join `" + StringUtils.join(joinedEntities, "` natural join `");
}



Код: java
1.
2.
3.
4.
5.
6.
7.
String[] joinedEntities = new String[] {"B", "C", "D"};
StringBuilder joinedTables = new StringBuilder("A");

if ( joinedEntities != null ) {
   joinedTables.append("` natural join `");
   joinedTables.append(StringUtils.join(joinedEntities, "` natural join `"));
}


Благодарю!
---------------------------------------------
У каждого свой тормозной путь......
...
Рейтинг: 0 / 0
20.02.2013, 16:35:34
    #38159344
silvan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Reinventing the square wheel
...
Рейтинг: 0 / 0
20.02.2013, 20:02:46
    #38159734
pasha701
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Код: java
1.
2.
3.
4.
String[] joinedEntities = new String[] { "B", "C", "D" }; // для примера
com.google.common.base.Joiner joiner = com.google.common.base.Joiner.on("` natural join `").skipNulls();
String additional = null;
System.out.println(joiner.join(additional, joiner.join(joinedEntities)));


B` natural join `C` natural join `D
...
Рейтинг: 0 / 0
20.02.2013, 20:45:22
    #38159772
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Geminis,
Что не так с ArrayList?
...
Рейтинг: 0 / 0
20.02.2013, 20:50:14
    #38159775
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Geminis, посмотри в сторону MyBatis. Там есть коробочное решение
для билдера запросов различной сложности.
...
Рейтинг: 0 / 0
21.02.2013, 00:08:47
    #38159924
Geminis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Всем ответившим - большое спасибо!

2 pasha701: я уже подумывал забросить StringUtils и перейти на гуглолибы.

2 Blazkowicz: к сожалению, параметр метода указан в задании как String[].

2 mayton: тема интересная, нужно будет поковырять!
...
Рейтинг: 0 / 0
21.02.2013, 08:12:57
    #38160080
ferc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
Geminis,
Код: java
1.
new ArrayList(Arrays.asList(myArray))
...
Рейтинг: 0 / 0
21.02.2013, 15:14:07
    #38160868
Geminis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование StringUtils.join при построении sql-запроса
ferc,
Смущает выделение дополнительной памяти (sc =O(n)) и вставка элемента в начало списка (tc = O(N)).

Остановился на варианте с использованием гуглолибы guava (ну и название, хех)

Благодарю!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Использование StringUtils.join при построении sql-запроса / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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