Java Portal | Программирование
12.7K subscribers
1.26K photos
105 videos
38 files
1.22K links
Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика

Связь: @devmangx

РКН: https://clck.ru/3H4WUg
Download Telegram
Spring Boot: @AutoConfigureMockMvc позволяет тестировать контроллеры, не поднимая сервер. Она говорит Spring Boot автоматически сконфигурировать экземпляр MockMvc в тестовом контексте.

@SpringBootTest
@AutoConfigureMockMvc
class UserControllerTest {

@Autowired
private MockMvc mockMvc;

@Test
void shouldReturnUser() throws Exception {
mockMvc.perform(get("/users/1"))
.andExpect(status().isOk())
.andExpect(jsonPath("$.id").value(1));
}
}


1. @SpringBootTest поднимает полный application context.
2. @AutoConfigureMockMvc настраивает MockMvc.
3. Никакого Tomcat (и других встроенных серверов).
4. Запросы выполняются внутри через DispatcherServlet от Spring.


👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Видел интересное видео от CTO Zerodha про то, как они масштабировали Postgres с 7+ млн таблиц.
Технология просто выносит мозг, а если копнуть глубже, становится еще веселее:

- синхронщина? не масштабируется, значит выкидываем.
- все в async. тяжелую генерацию отчетов ставим в очередь.
- независимый middleware, которому все равно на базу и на приложение.
- собрали “DungBeetle” на Go: обобщенные, независимые от СУБД HTTP API, чтобы тянуть отчеты из любой базы.
- результаты сливаем в отдельную Results DB, а приложение читает уже оттуда.

Вот так выглядит настоящий масштаб.

Смотреть видео

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯2
Java tip: Начиная с Java 12 можно использовать String.indent(n), чтобы красиво форматировать многострочные строки, добавляя нужный отступ.

n > 0: добавляет n пробелов в начале каждой строки.
n < 0: удаляет до n ведущих пробелов из каждой строки.

Добавление пробелов:

String text = "Text\ncontent";
System.out.println(text.indent(0));
System.out.println(text.indent(4));
System.out.println(text.indent(0));


Удаление пробелов:

String text = "    Text\n    content";
System.out.println(text.indent(-4));



👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Скачал Java, написал код, запустил - работает. Можно выдохнуть? 😎

Спойлер: нет.
Потому что завтра нужно будет написать что-то свое, без туториала. И тут выяснится, что public static void main - это для тебя просто магический ритуал, а не код.

Копировать с экрана - не значит понимать.
Выучить 10 уроков на YouTube - не значит стать разработчиком.

❇️ Ребята из Merion Academy (того самого YouTube-канала про IT) на бесплатных вводных уроках по Java разбирают код построчно, чтобы ты не просто копировал, а понимал, что пишешь.

Что внутри:
✔️ Что такое Java и с чем ее едят
✔️ Как настроить среду без боли (чтобы все взлетело с первого раза)
✔️ Разбор синтаксиса построчно - никакой магии
✔️ Как написать свое первое REST API (да, сразу)

➡️ Запишись на бесплатные вводные уроки

Разберись, как Java работает на самом деле.
😁4
This media is not supported in your browser
VIEW IN TELEGRAM
5 часто задаваемых вопросов на собеседованиях по Java Generics.

На сколько из них ты сможешь ответить?

1. В чем разница между Object<?> и Object в Java?

2. В чем разница между List<?> и List<Object>?

3. В чем разница между List<? extends Number> и List<? super Number>?

4. Можно ли добавлять элементы в List<?>?

5. Чем T отличается от ? в дженериках?

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯6