Как сканировать и проверять загруженные изображения в Java
В этой статьи я продемонстрирую два простых бесплатных решения, которые могут помочь в сканировании на вирусы и проверке загружаемых файлов изображений до того, как они попадут в облачное хранилище. В обоих случаях можно эффективно использовать дополнительные, готовые к выполнению примеры кода Java для структурирования вызовов API. Эти API выполняют следующие функции соответственно:
Сканировать файлы изображений на наличие вирусов
Проверить файлы изображений
Используемые в сочетании друг с другом, оба API могут помочь гарантировать, что загружаемые изображения действительны и не содержат вирусов и вредоносных программ, что значительно снижает риски, связанные с прямой загрузкой файлов изображений.
https://dzone.com/articles/how-to-scan-and-validate-image-uploads-in-java
В этой статьи я продемонстрирую два простых бесплатных решения, которые могут помочь в сканировании на вирусы и проверке загружаемых файлов изображений до того, как они попадут в облачное хранилище. В обоих случаях можно эффективно использовать дополнительные, готовые к выполнению примеры кода Java для структурирования вызовов API. Эти API выполняют следующие функции соответственно:
Сканировать файлы изображений на наличие вирусов
Проверить файлы изображений
Используемые в сочетании друг с другом, оба API могут помочь гарантировать, что загружаемые изображения действительны и не содержат вирусов и вредоносных программ, что значительно снижает риски, связанные с прямой загрузкой файлов изображений.
https://dzone.com/articles/how-to-scan-and-validate-image-uploads-in-java
DZone
How To Scan and Validate Image Uploads in Java
This article discusses the dangers of image file uploads and presents two solutions for virus scanning and validating image files respectively.
👍3
Каково состояние экосистемы Java в 2023 году?
Язык программирования Java продолжает оставаться одной из наиболее широко используемых технологий для разработки приложений.
https://www.itprotoday.com/programming-languages/what-state-java-ecosystem-2023
Параллелизм с Kafka и Spring Boot
В этой статье вы узнаете, как настроить параллелизм для потребителей Kafka с помощью Spring Boot и Spring для Kafka. Параллелизм в Spring для Kafka тесно связан с разделами и группами потребителей Kafka. Каждый потребитель в группе потребителей может получать сообщения из нескольких разделов. В то время как потребитель внутри группы использует один поток, группа потребителей использует несколько потоков для обработки сообщений. Хотя каждый потребитель является однопоточным, обработка записей может использовать несколько потоков. Мы разберем, как этого добиться с помощью Spring Boot и Spring для Kafka.
https://piotrminkowski.com/2023/04/30/concurrency-with-kafka-and-spring-boot/
Язык программирования Java продолжает оставаться одной из наиболее широко используемых технологий для разработки приложений.
https://www.itprotoday.com/programming-languages/what-state-java-ecosystem-2023
Параллелизм с Kafka и Spring Boot
В этой статье вы узнаете, как настроить параллелизм для потребителей Kafka с помощью Spring Boot и Spring для Kafka. Параллелизм в Spring для Kafka тесно связан с разделами и группами потребителей Kafka. Каждый потребитель в группе потребителей может получать сообщения из нескольких разделов. В то время как потребитель внутри группы использует один поток, группа потребителей использует несколько потоков для обработки сообщений. Хотя каждый потребитель является однопоточным, обработка записей может использовать несколько потоков. Мы разберем, как этого добиться с помощью Spring Boot и Spring для Kafka.
https://piotrminkowski.com/2023/04/30/concurrency-with-kafka-and-spring-boot/
Piotr's TechBlog
Concurrency with Kafka and Spring Boot - Piotr's TechBlog
This article will teach you how to configure concurrency for Kafka consumers with Spring Boot and Spring for Kafka
👍2
Дайте крудошлепа
Я устроился в небольшую компанию, которая сделал круд‑приложуху на 20 таблиц типа «заметки» и активно ее продавала госорганам за невменяемый бабос.
У нас был 3(три) Т‑Р-И статуса юзера. Anonym→Logined→Phone_Confirmed. Молодой талант до меня увидел в этом граф, и написал класс на 200+ строк, реализующий алгоритм Флойда‑Уоршелла, прикрутил стейт‑машину и не найдя интересных задач, c блеском прошел собес в Яндекс и свалил.
Меня наняли сеньором, и я каюсь ничерта не понял, алгоритм прекрасно работал на первой ступени, на второй давал сбои, тоскливо погуглил этот алгоритм, стер все к черту и написал: if(status==Logined & phone!=null){status=Phone_Confirmed}.
Один коллега посмотрел на меня с немой благодарностью, а начальник офигел и сказал, что код нерасширяем и захардкожен, а тот алгоритм мог пройти за время логN через тысячу вершин и по истечению испытательного урока меня уволили нах, так как мой технический уровень не соответствовал их высоким требованиям, впрочем выдали три зарплаты и я благодарен этим людям. Мой код оставили, тот так и не смогли починить.
https://habr.com/ru/articles/733400/
Я устроился в небольшую компанию, которая сделал круд‑приложуху на 20 таблиц типа «заметки» и активно ее продавала госорганам за невменяемый бабос.
У нас был 3(три) Т‑Р-И статуса юзера. Anonym→Logined→Phone_Confirmed. Молодой талант до меня увидел в этом граф, и написал класс на 200+ строк, реализующий алгоритм Флойда‑Уоршелла, прикрутил стейт‑машину и не найдя интересных задач, c блеском прошел собес в Яндекс и свалил.
Меня наняли сеньором, и я каюсь ничерта не понял, алгоритм прекрасно работал на первой ступени, на второй давал сбои, тоскливо погуглил этот алгоритм, стер все к черту и написал: if(status==Logined & phone!=null){status=Phone_Confirmed}.
Один коллега посмотрел на меня с немой благодарностью, а начальник офигел и сказал, что код нерасширяем и захардкожен, а тот алгоритм мог пройти за время логN через тысячу вершин и по истечению испытательного урока меня уволили нах, так как мой технический уровень не соответствовал их высоким требованиям, впрочем выдали три зарплаты и я благодарен этим людям. Мой код оставили, тот так и не смогли починить.
https://habr.com/ru/articles/733400/
Хабр
Дайте крудошлепа
Я устроился в небольшую компанию, которая сделал круд‑приложуху на 20 таблиц типа «заметки» и активно ее продавала госорганам за невменяемый бабос. У нас был 3(три) Т‑Р-И...
❤6💩4
Как создавать адаптивные веб-приложения с помощью Spring Boot и React: пошаговое руководство
В этой статье мы рассмотрим, почему Spring Boot и ReactJs могут быть идеальным дуэтом для создания полнофункциональных веб-приложений, а также рассмотрим процесс создания серверного приложения Spring Boot и его интеграции с интерфейсным приложением React.
https://reflectoring.io/build-responsive-web-apps-with-springboot-and-react-tutorial/
В этой статье мы рассмотрим, почему Spring Boot и ReactJs могут быть идеальным дуэтом для создания полнофункциональных веб-приложений, а также рассмотрим процесс создания серверного приложения Spring Boot и его интеграции с интерфейсным приложением React.
https://reflectoring.io/build-responsive-web-apps-with-springboot-and-react-tutorial/
👍3
Понимание GraalVM, AOT и JIT
Вы можете использовать это руководство, чтобы понять, что такое GraalVM, как он работает и чем компиляция Just-In-Time (JIT) сравнивается с компиляцией Ahead-Of-Time (AOT).
https://www.marcobehler.com/guides/graalvm-aot-jit
Вы можете использовать это руководство, чтобы понять, что такое GraalVM, как он работает и чем компиляция Just-In-Time (JIT) сравнивается с компиляцией Ahead-Of-Time (AOT).
https://www.marcobehler.com/guides/graalvm-aot-jit
Marcobehler
Understanding GraalVM, AOT & JIT
You can use this guide to understand what GraalVM is, how it works and how Just-In-Time (JIT) compilation compares to Ahead-Of-Time (AOT) compilation).
Рабочий стол Podman для Java-разработки
Установите Podman Desktop для управления контейнерами и узнайте, как использовать его для разработки Java (Spring Boot, Quarkus, Testcontainers, Buildpacks).
https://www.thomasvitale.com/podman-desktop-for-java-development/
Установите Podman Desktop для управления контейнерами и узнайте, как использовать его для разработки Java (Spring Boot, Quarkus, Testcontainers, Buildpacks).
https://www.thomasvitale.com/podman-desktop-for-java-development/
👍1
Настройка Java-приложений для низкой задержки в Linux
этой статье мы представим некоторые подходы, которые можно использовать, когда мы хотим, чтобы наши приложения использовали системные ресурсы наиболее эффективно.
https://foojay.io/today/tuning-java-applications-for-low-latency-on-linux/
этой статье мы представим некоторые подходы, которые можно использовать, когда мы хотим, чтобы наши приложения использовали системные ресурсы наиболее эффективно.
https://foojay.io/today/tuning-java-applications-for-low-latency-on-linux/
foojay
Tuning Java Applications for Low Latency on Linux | Foojay.io
An introduction to some approaches that can be taken when we want to have our applications utilise system resources most effectively.
Spring Boot 3.1 только что был выпущен🎉
https://github.com/spring-projects/spring-boot/releases/tag/v3.1.0
https://github.com/spring-projects/spring-boot/releases/tag/v3.1.0
GitHub
Release v3.1.0 · spring-projects/spring-boot
⭐ New Features
Result from SpringApplication.from(...) may need to provide access to more details in the future #35451
Ensure that Flyway uses SLF4J by default and provide a configuration property...
Result from SpringApplication.from(...) may need to provide access to more details in the future #35451
Ensure that Flyway uses SLF4J by default and provide a configuration property...
👏2
Нюансы перегрузки и переопределения в Java
Я программирую на Java уже более полувека и думал, что освоил все аспекты перегрузки и переопределения. Только когда я начал придумывать и записывать следующие крайние случаи, я понял, что знаю их не так хорошо, как мне казалось.
В попытке придать этим нюансам игровой характер, я перечислил их ниже в виде серии головоломок. Похвально, если вы разгадаете их все, не подглядывая в ответы.
https://software.rajivprab.com/2019/08/14/nuances-of-overloading-and-overriding-in-java/
Я программирую на Java уже более полувека и думал, что освоил все аспекты перегрузки и переопределения. Только когда я начал придумывать и записывать следующие крайние случаи, я понял, что знаю их не так хорошо, как мне казалось.
В попытке придать этим нюансам игровой характер, я перечислил их ниже в виде серии головоломок. Похвально, если вы разгадаете их все, не подглядывая в ответы.
https://software.rajivprab.com/2019/08/14/nuances-of-overloading-and-overriding-in-java/
❤1👎1💩1
Как использовать BlockingQueue в Java? Учебное пособие по примерам ArrayBlockingQueue и LinkedBlockingQueue
https://javarevisited.blogspot.com/2012/12/blocking-queue-in-java-example-ArrayBlockingQueue-LinkedBlockingQueue.html#axzz6iYmMFnsA
https://javarevisited.blogspot.com/2012/12/blocking-queue-in-java-example-ArrayBlockingQueue-LinkedBlockingQueue.html#axzz6iYmMFnsA
Blogspot
How to use BlockingQueue in Java? ArrayBlockingQueue and LinkedBlockingQueue Example Tutorial
Though BlockingQueue was introduced in Java 1.5 a decade ago, not every Java programmer is familiar with it. It come with two implementation ArrayBlockingQueue and LinkedBlockingQueue. You can use them to easily implement producer consumer pattern in Java.
Узнайте, как создать безопасное приложение CRUD с помощью Spring Boot и Angular. Вы будете использовать Auth0 для аутентификации и авторизации, а Cypress — для проверки того, что все работает.
https://auth0.com/blog/spring-boot-angular-crud/
https://auth0.com/blog/spring-boot-angular-crud/
Auth0 - Blog
Build a Beautiful CRUD App with Spring Boot and Angular
Learn how to build a secure CRUD app with Spring Boot and Angular. You'll use Auth0 for authentication and authorization and Cypress to verify it all works.
Дженерики в Java и их реализация
В программировании на Java в J2SE 5 введены языковые дженерики для работы с объектами, безопасными для типов. Он обнаруживает ошибки во время компиляции, благодаря чему код становится стабильным. Любой тип объекта может быть сохранен в коллекции до общего введения. Теперь, после общего введения в язык программирования Java , программисты вынуждены хранить определенные типы объектов.
https://dzone.com/articles/generics-in-java-and-their-implementation
В программировании на Java в J2SE 5 введены языковые дженерики для работы с объектами, безопасными для типов. Он обнаруживает ошибки во время компиляции, благодаря чему код становится стабильным. Любой тип объекта может быть сохранен в коллекции до общего введения. Теперь, после общего введения в язык программирования Java , программисты вынуждены хранить определенные типы объектов.
https://dzone.com/articles/generics-in-java-and-their-implementation
DZone
Generics in Java and Their Implementation
In Java programming language, generics are introduced in J2SE 5 for dealing with type-safe objects. Read more.
👍2
Spring Cleaning: обзор новых инструментов в экосистеме Spring
Когда был выпущен Spring Cloud AWS 3.0, я решил посвятить больше места экосистеме Spring и некоторым ее новым инструментам: Ostara, just и Modulith.As Spring Cloud AWS 3.0
https://vived.substack.com/p/spring-cleaning-a-review-of-new-tools
Когда был выпущен Spring Cloud AWS 3.0, я решил посвятить больше места экосистеме Spring и некоторым ее новым инструментам: Ostara, just и Modulith.As Spring Cloud AWS 3.0
https://vived.substack.com/p/spring-cleaning-a-review-of-new-tools
Substack
Spring Cleaning: A review of new tools in the Spring ecosystem - JVM Weekly vol. 44
As Spring Cloud AWS 3.0 was released, I was inspired me to devote more space to the Spring ecosystem and some of its new tools: Ostara, just and Modulith.
Java против PHP
Java и PHP — два популярных языка программирования, используемых для создания веб-страниц. веб-приложений и веб-разработки в целом. Несмотря на эту общую цель, они значительно различаются в ряде областей, включая синтаксис, функции и варианты использования. В этом руководстве по программированию мы рассмотрим фундаментальные различия между Java и PHP, чтобы помочь командам разработчиков программного обеспечения выбрать, какой язык больше подходит для их проектов. https://www.developer.com/java/java-vs-php/
Java и PHP — два популярных языка программирования, используемых для создания веб-страниц. веб-приложений и веб-разработки в целом. Несмотря на эту общую цель, они значительно различаются в ряде областей, включая синтаксис, функции и варианты использования. В этом руководстве по программированию мы рассмотрим фундаментальные различия между Java и PHP, чтобы помочь командам разработчиков программного обеспечения выбрать, какой язык больше подходит для их проектов. https://www.developer.com/java/java-vs-php/
Developer.com
Java versus PHP | Developer.com
A comparison of Java and PHP. Learn how the two programming languages differ syntactically and in terms of usage.
Категоризированный список всех функций Java и JVM, начиная с JDK 8–18.
С момента выпуска версии 8 и вплоть до версии 18 Java формировалась с помощью 203 предложений по улучшению JDK (JEP) и многих других небольших обновлений, каждое из которых вносит некоторые улучшения в платформу. Эта страница представляет собой классифицированный и тщательно отобранный список наиболее важных улучшений. https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-18/
С момента выпуска версии 8 и вплоть до версии 18 Java формировалась с помощью 203 предложений по улучшению JDK (JEP) и многих других небольших обновлений, каждое из которых вносит некоторые улучшения в платформу. Эта страница представляет собой классифицированный и тщательно отобранный список наиболее важных улучшений. https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-18/
advancedweb.hu
A categorized list of all Java and JVM features since JDK 8 to 21
From Java 8 to 21
Режим разработки Spring Boot с тестовыми контейнерами и Docker
В этой статье вы узнаете, как использовать встроенную поддержку Spring Boot для Testcontainers и Docker Compose для запуска внешних служб в режиме разработки. Spring Boot представляет эти функции в последней версии 3.1 . https://piotrminkowski.com/2023/05/26/spring-boot-development-mode-with-testcontainers-and-docker/
В этой статье вы узнаете, как использовать встроенную поддержку Spring Boot для Testcontainers и Docker Compose для запуска внешних служб в режиме разработки. Spring Boot представляет эти функции в последней версии 3.1 . https://piotrminkowski.com/2023/05/26/spring-boot-development-mode-with-testcontainers-and-docker/
Piotr's TechBlog
Spring Boot Development Mode with Testcontainers and Docker
Learn how to use Spring Boot built-in support for Testcontainers and Docker Compose to run external services in development mode.
В 2017 году я начал изучать Java. И, чтобы как-то визуализировать результат трудов, я решил сделать десктопное приложение.
Поразмыслив, чего мне не хватает, я захотел создать свой новостной агрегатор. Конечно, такие программы на тот момент уже были: и десктопные, и веб, но они мне показались сложными, а хотелось получать нужные новости по одному клику, да и лучшего варианта для изучения я не придумал.
Под катом — история создания приложения, туториалы по получению на него патента и включению его в реестр российского ПО, а также моя собственная коллекция граблей, собранная на этом пути. https://habr.com/ru/companies/sportmaster_lab/articles/723068/
Поразмыслив, чего мне не хватает, я захотел создать свой новостной агрегатор. Конечно, такие программы на тот момент уже были: и десктопные, и веб, но они мне показались сложными, а хотелось получать нужные новости по одному клику, да и лучшего варианта для изучения я не придумал.
Под катом — история создания приложения, туториалы по получению на него патента и включению его в реестр российского ПО, а также моя собственная коллекция граблей, собранная на этом пути. https://habr.com/ru/companies/sportmaster_lab/articles/723068/
Хабр
От «Hello World» до включения программы в реестр российского ПО
В 2017 году я начал изучать Java. И, чтобы как-то визуализировать результат трудов, я решил сделать десктопное приложение (функционал продублирован в Telegram боте ). Поразмыслив, чего мне не хватает,...
💩1
Что такое абстрактные классы и методы в Java
Абстрагирование – это процесс, в ходе которого от пользователя скрываются многие детали реализации, а предоставляются только те детали, которые действительно важны. Так удаётся сфокусироваться на том, что делает объект, а не как он это делает.
В Java абстрактные классы и методы – это основные инструменты для реализации абстракций. Абстрактные классы служат шаблонами для создания субклассов, а абстрактные методы можно сравнить с чертежами, описывающими поведение этих субклассов. https://habr.com/ru/companies/piter/articles/738508/
Абстрагирование – это процесс, в ходе которого от пользователя скрываются многие детали реализации, а предоставляются только те детали, которые действительно важны. Так удаётся сфокусироваться на том, что делает объект, а не как он это делает.
В Java абстрактные классы и методы – это основные инструменты для реализации абстракций. Абстрактные классы служат шаблонами для создания субклассов, а абстрактные методы можно сравнить с чертежами, описывающими поведение этих субклассов. https://habr.com/ru/companies/piter/articles/738508/
Хабр
Что такое абстрактные классы и методы в Java
Абстрагирование – это процесс, в ходе которого от пользователя скрываются многие детали реализации, а предоставляются только те детали, которые действительно важны. Так удаётся сфокусироваться на том,...
☕️Преобразование JSON в XML в Java
JSON и XML — два популярных формата для обмена данными. В реальных приложениях нам часто нужно конвертировать между ними.
В этом руководстве мы рассмотрим различные способы преобразования JSON в XML в Java. https://www.baeldung.com/java-convert-json-to-xml
☕️Преобразование Hashmap в объект JSON в Java
В этом руководстве мы рассмотрим три способа преобразования карты в формат JSON.
https://www.baeldung.com/java-convert-hashmap-to-json-object
☕️Java в коде Visual Studio — май 2023 г.
Всем привет! Добро пожаловать в наше майское обновление для Visual Studio Code Java! В блоге этого месяца у нас есть множество новых функций, касающихся повышения производительности, взаимодействия с пользователем, а также интеграции Spring Boot, так что давайте начнем. https://devblogs.microsoft.com/java/java-on-visual-studio-code-may-2023/
JSON и XML — два популярных формата для обмена данными. В реальных приложениях нам часто нужно конвертировать между ними.
В этом руководстве мы рассмотрим различные способы преобразования JSON в XML в Java. https://www.baeldung.com/java-convert-json-to-xml
☕️Преобразование Hashmap в объект JSON в Java
В этом руководстве мы рассмотрим три способа преобразования карты в формат JSON.
https://www.baeldung.com/java-convert-hashmap-to-json-object
☕️Java в коде Visual Studio — май 2023 г.
Всем привет! Добро пожаловать в наше майское обновление для Visual Studio Code Java! В блоге этого месяца у нас есть множество новых функций, касающихся повышения производительности, взаимодействия с пользователем, а также интеграции Spring Boot, так что давайте начнем. https://devblogs.microsoft.com/java/java-on-visual-studio-code-may-2023/
Baeldung
Converting JSON to XML in Java | Baeldung
Learn how to convert JSON to XML in Java.
Forwarded from Daily Dev Jokes. Юмор.
This media is not supported in your browser
VIEW IN TELEGRAM
Java-разработчики после первой попытки Spring Boot.
😁8