
Anton
24.07.2018
06:35:47

Yan
24.07.2018
06:38:55
ребят,дайте совет. Меня всегда напрягает,когда в спринговых сервисах делают какую-то мапу в качестве кеша, если какое-то красивое решение?

Alexandr
24.07.2018
06:41:18
http://www.baeldung.com/spring-cache-tutorial

Google

guga
24.07.2018
06:42:08

Alexandr
24.07.2018
06:43:34
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-caching.html#_supported_cache_providers

Yan
24.07.2018
06:45:10
короч только кеш? других варинтов нет?

Alexandr
24.07.2018
06:45:58

Yan
24.07.2018
06:47:10
с кешем появляются другие проблемы: правильная инвалидация
я понимаю,что всегда будет трейд-офф(

Alexandr
24.07.2018
06:48:01
куча всего

guga
24.07.2018
06:48:05
Так тебе нужен кэш или нет?

Yan
24.07.2018
06:49:20
да, пойду читать) да бы вам настроение не портить))
спасибо ребят

Alexandr
24.07.2018
06:49:42
не за что

Google

Alexandr
24.07.2018
06:50:02
доку читать полезно, особенно по спрингу. подробно и понятно написано

Wystan
24.07.2018
07:39:36
Господа, а как вы обходите вот это:
https://github.com/querydsl/querydsl/issues/1917
spring boot 2 использует hibernate 5.2 с которым querydsl не совместим

Mikhail
24.07.2018
07:41:15
Веб в данной ситуации мимо
Даже если будет работать в консоле, все равно вебсокеты удобнее обычных сокетов. С сокетами все равно придется писать какой-то бинарный протокол для сообщений, а вебсокетах это уже есть

Wystan
24.07.2018
07:41:22
А говорят как-то в spring-data можно добиться той же гибкости что и в querydsl? там тоже можно писать кастомные predicates?

Sergey
24.07.2018
07:42:29

Ruslan
24.07.2018
07:46:30
Спасибо ,учту ваш совет
Даже если будет работать в консоле, все равно вебсокеты удобнее обычных сокетов. С сокетами все равно придется писать какой-то бинарный протокол для сообщений, а вебсокетах это уже есть
А цитировать я так и не научился

Митко Соловец?
24.07.2018
08:04:03

Alexandr
24.07.2018
08:08:24

Wystan
24.07.2018
08:09:05

Митко Соловец?
24.07.2018
08:09:26

Alexandr
24.07.2018
08:10:11

Wystan
24.07.2018
08:12:36
Ну ок.
Не представляется реалистичным, что я перепишу логику с querydsl на спецификации. Тем более, что queryDSL не только для jpa у нас используется. Так что буду ждать обновления querydsl
Всем спасибо!

Artjom
24.07.2018
08:28:36
У кого-нибудь был опыт спринг-дата-джпа с postgresql jsonb типом ?

Митко Соловец?
24.07.2018
08:36:23

Artjom
24.07.2018
08:46:11
@dmsol тогда хотел уточнить - правильно ли я понял подход этому всему:
1) сначала создаем кастомный хибернейт тип в котором описываем, как происходит сериализация/десериализация обьекта данного типа
2) Регистрируем этот самый тип в хибернейт конфигурации
3)Аннотируем этот типа с использованием @TypeDef в энтитях где этот тип хотим использовать
4) В репозитории используем в кверях jsonb_extract_path_text для того что-бы вытащить результат по значениям внутри jsonb
5) Profit ?

Митко Соловец?
24.07.2018
11:44:25

Google

Митко Соловец?
24.07.2018
11:44:42
тк спрингдата на уровне джава апи не умеет жсонб запросы

Alexey
24.07.2018
11:57:04
Подскажите, есть ли у Jooq что-то похожее на Criteria API? Чтобы можно было пропускать не заданные параметры фильтрации / сортировку?

Stanislav
24.07.2018
11:57:51
я конечно не жавист но разве там не все апи это одно сплошное Criteria API ?

Rostyslav
24.07.2018
11:58:44
Всем привет народ подскажите для каких целей использовать куки? ?

guga
24.07.2018
11:59:18

Rostyslav
24.07.2018
12:01:23
тоисть если я накакомто ресурсе смотрел какойто товар система автоматом мне запихнет куки с инфо о просмотреном товаре? потем гдето на сайте где есть джаваскрипт которий достает с реквеста куки и смотрит что я смотрел и подсунет мне с етим рекламу,
или я ошибася с процесом
как я понимаю куки не могут с каждим запросом отправляться

guga
24.07.2018
12:03:35
это была шутка, с долей правды, на самом деле куки юзаются для хранения состояния на клиенте
почитай вики что ли

Rostyslav
24.07.2018
12:04:24
да смотрел про версию 1 и чтото кроме того что ід сесии туда засунуть ничего больше не понял

guga
24.07.2018
12:06:15
ну все что тебе вздумается, только учти, если у тебя есть европейские пользователи, ты им должен пояснить, зойчем ты что-то о них хранишь

guga
24.07.2018
12:06:32
посмотри например about.gitlab.com там много чего в куках хранится

Rostyslav
24.07.2018
12:07:03
оо спосибо пошел изучать)

Роман
24.07.2018
12:13:06
сейчас правда лучше буду юзать какую-нибудь markdown wiki нежели стандартную

guga
24.07.2018
12:13:52
ну если на серваке нету возможности хранить локаль, тайм зону и прочие прелести, можно делать это в куках

Диоген
24.07.2018
12:14:27

Митко Соловец?
24.07.2018
12:14:43

Rostyslav
24.07.2018
12:15:29

Google

Gregory
24.07.2018
12:35:48
Кто что использует для документирования API? Как автоматизируете процесс создания документации?

Rostyslav
24.07.2018
12:36:51

guga
24.07.2018
12:45:13
если у тебя спринг головного мозга — рестдокс

Rostyslav
24.07.2018
12:45:53

Admin
ERROR: S client not available

guga
24.07.2018
12:46:10

Gregory
24.07.2018
12:46:13

guga
24.07.2018
12:46:23
свагер

Gregory
24.07.2018
12:46:46
Ну сами файлики сваггера (да, там не только же в json их можно делать).

guga
24.07.2018
12:46:54
но он как-то плохо умеет в json view

Митко Соловец?
24.07.2018
12:46:56

guga
24.07.2018
12:47:14
так что скорее всего будет плохо с энтити, если ты их юзаешь
можешь посмотреть пример спринг фокса, уних там есть стандартный petclinic

Aleksey
24.07.2018
12:48:38
О, какая интересная, тема, а вот схожий вопрос - должен ли джавовый микросервис предоставлять клиент к себе или достаточно описания?
С одной стороны клиенты это вообще нарушение концепции микросервисов, с другой стороны это удобно.
Кто чем пользуется обычно?

guga
24.07.2018
12:51:48

Aleksey
24.07.2018
12:57:21
То есть бест практиса как такого нет? как удобнее так и делается?
Я сейчас скорее про REST клиенты

Dmitriy
24.07.2018
13:01:17
Привет всем. Где можно опубликовать вакансию?Спасибо)

Google

Sergey
24.07.2018
13:02:16

guga
24.07.2018
13:02:19

Alexey
24.07.2018
13:07:08
Жук это джава дсл для скл, смотри лимит и оффсет
Это понятно. А если нужна фильтрация по одному из параметров, которые optional, например поиск по {status, startDate, endDate...}. Просто в Criteria API со спецификациями я бы обощелся множеством if'ов с проверкой на null. В DSL для JOOQ - там есть возможность типа andPropertyNameOrSkipIfNull для fluent API?

Vladimir
24.07.2018
13:11:24

Mikhail
24.07.2018
13:14:35

Alexey
24.07.2018
13:17:48
Как это должно выглядеть в SQL?
поскольку в where clause нельзя встраивать switch-case / if, то это будет простой SQL-query. Надо будет поискать сторонние библиотечки для JOOQ, скорее хочется закопать JPA с их Criteria API.

Vladimir
24.07.2018
13:23:58
Похоже, я понял, что требуется: есть какие-то условия на входе, по ним надо состряпать запрос.
Я беру DSL.trueCondition() и в отдельных if'ах (под каждое условие) через .and() накидываю туда фильтры, а потом в запрос кладу этот объект в where().

Artjom
24.07.2018
13:28:56
тк спрингдата на уровне джава апи не умеет жсонб запросы
Хотел спросить, а ты инджектил objectMapper в тот самый класс в котором оверайдил nullSafeSet и nullSafeGet, я попытался через конструктор инджекшен, но похоже хибер где-то через рефлекшен создает инстанс класса и по-этому эпично завалилось... сейчас попробую через @Autowired но как-то это смелллллз
Блин, не на то сообщение зареплаил :(

Митко Соловец?
24.07.2018
13:31:10

Artjom
24.07.2018
13:32:05
Через @Autowired тоже работает )
Хотя возможно в этом случае создание через new в конструкторе тоже норм, я так понимаю инстанс типа создается только 1 раз и кидается в BasicTypeRegistry а потом оттуда и реюзается

Alexey
24.07.2018
13:39:09