Size: a a a

Java/Kotlin and more

2021 April 02

AA

Artur Allayarov in Java/Kotlin and more
Михаил
Можно тогда разрулить на уровне ConditionalOnClass / ConditionalOnMissingClass
Спасибо большое, помогло!
источник

РК

Роман Кукин... in Java/Kotlin and more
В idea создаются сразу три модуля на проект. Наверное не просто так.

В чём преимущество раздельных модулей для main и test?
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Роман Кукин
В idea создаются сразу три модуля на проект. Наверное не просто так.

В чём преимущество раздельных модулей для main и test?
Это что то странное, build.gradle должен быть в корне. Откуда такая структура?
источник

РК

Роман Кукин... in Java/Kotlin and more
Alexandr Emelyanov
Это что то странное, build.gradle должен быть в корне. Откуда такая структура?
Я сделал empty project в котором хочу работать с разными другими проектами, как с модулями.

Idea импортировала модуль как на скрине

Но я создавал проект и обычным способом:
File > New > Project > Gradle, Java

Создаётся такая же структура
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Роман Кукин
Я сделал empty project в котором хочу работать с разными другими проектами, как с модулями.

Idea импортировала модуль как на скрине

Но я создавал проект и обычным способом:
File > New > Project > Gradle, Java

Создаётся такая же структура
Что то не то с визардом похоже

Спросите в @gradle
источник

РК

Роман Кукин... in Java/Kotlin and more
Alexandr Emelyanov
Что то не то с визардом похоже

Спросите в @gradle
спасибо за ссылку, спрошу
источник
2021 April 03

I

Ivan in Java/Kotlin and more
Здравствуйте, а не дадите совет. У меня есть метод, который на get запрос возвращает по id юзера,  если он есть в базе все ок, а что следует возвращать если, юзера с таким id нет? Null не стоит наверное
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Ivan
Здравствуйте, а не дадите совет. У меня есть метод, который на get запрос возвращает по id юзера,  если он есть в базе все ок, а что следует возвращать если, юзера с таким id нет? Null не стоит наверное
Апи должно вернуть код 404, внутри логику можно по разному сделать, через null/Optional/exceptions
источник

ЮЮ

Юрий Юрий in Java/Kotlin and more
Здравствуйте.
Играюсь с пересылкой файла.
HttpEntity entity = MultipartEntityBuilder.create()
               .addPart("file", new FileBody(file))
.addTextBody(...
.addTextBody(...
.build()
Это понятно.
Но что если вместо файла массив байт?
Пробовал
       InputStream inputStream = new ByteArrayInputStream(bytes);
       HttpEntity entity = MultipartEntityBuilder.create()
               .addBinaryBody("file", inputStream)

На сервере Spring boot и он не видит этот параметр
Так как ловит @RequestParam MultipartFile file

Вопрос, как послать массив байт и как его словить и получить файл, учитывая что в запросе есть еще  параметры (.addTextBody(...) ?
источник

AS

Anatoly Shirokov in Java/Kotlin and more
Юрий Юрий
Здравствуйте.
Играюсь с пересылкой файла.
HttpEntity entity = MultipartEntityBuilder.create()
               .addPart("file", new FileBody(file))
.addTextBody(...
.addTextBody(...
.build()
Это понятно.
Но что если вместо файла массив байт?
Пробовал
       InputStream inputStream = new ByteArrayInputStream(bytes);
       HttpEntity entity = MultipartEntityBuilder.create()
               .addBinaryBody("file", inputStream)

На сервере Spring boot и он не видит этот параметр
Так как ловит @RequestParam MultipartFile file

Вопрос, как послать массив байт и как его словить и получить файл, учитывая что в запросе есть еще  параметры (.addTextBody(...) ?
лови как поименованный параметр
@RequestParam("file") MultipartFile file
источник
2021 April 04

ЮЮ

Юрий Юрий in Java/Kotlin and more
Вот нашел решение
       ContentBody fileBody = new InputStreamBody(inputStream, ContentType.DEFAULT_BINARY, "file");

       HttpEntity entity = MultipartEntityBuilder.create()
               .addPart(FormBodyPartBuilder.create("file", fileBody).build())
источник

Э

Эд in Java/Kotlin and more
Переслано от Эд
Можно ли врапнуть RestTemplate, чтоб использовать его в Spring WebFlux? Правильно я понял, что есть проблемы с интеграцией этого WebFlux с либами? И поэтому есть риски в выборе этой технологии в то время, как другие node.js/ go имеют поддержку либ и всё ок с concurrency?
источник

Э

Эд in Java/Kotlin and more
https://youtu.be/rB5Q3y73FTo?t=1142 Вот здесь объясняется, как интегрировать различные Futures в либах с coroutines. Но можно ли как-то так же врапнуть какой-нибудь блокирующий клиент в CompletableFuture/ Mono/ Flux (я пока мало знаком с этим)?
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Эд
Переслано от Эд
Можно ли врапнуть RestTemplate, чтоб использовать его в Spring WebFlux? Правильно я понял, что есть проблемы с интеграцией этого WebFlux с либами? И поэтому есть риски в выборе этой технологии в то время, как другие node.js/ go имеют поддержку либ и всё ок с concurrency?
В spring есть WebClient, его используйте
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Он для реактивных запросов, с корутинами тоже он
источник

Э

Эд in Java/Kotlin and more
Alexandr Emelyanov
В spring есть WebClient, его используйте
я знаю. Я написал для примера. Вот есть либа с блокирующем клиентом
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Эд
я знаю. Я написал для примера. Вот есть либа с блокирующем клиентом
Ищите её неблокирующий аналог, либо оборачиваете вызовы всех её методов с блокирующими вызывает в отдельный пул
источник

Э

Эд in Java/Kotlin and more
Alexandr Emelyanov
Ищите её неблокирующий аналог, либо оборачиваете вызовы всех её методов с блокирующими вызывает в отдельный пул
Спасибо, есть статейка, где почитать об этом? О тред пуле отдельном
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Эд
Спасибо, есть статейка, где почитать об этом? О тред пуле отдельном
Искать надо, так что сам поищи как оборачивать блокирующие вызовы в webflux/coroutine
источник

TS

Tech Support in Java/Kotlin and more
Всем привет, есть вопрос по валидации Spring. Использую в контроллере конструкцию
@Valid @ModelAttribute("user") User user

В сущность User добавил полям подобные аннотации
@NotBlank
@Size(min = 5, message = "Не менее 5 знаков")

Но ошибок в BindingResult нет никаких. Что я делаю не так?
источник