Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки
Сотрудничество: @bape_ads
Прайс: @bape_media
РКН: https://clck.ru/3GHfTK
Реклама на бирже: https://telega.in/c/java_tg
Post #1968
4.01K
JA @java_tg
Showing posts older than #1970 · Back to latest

@Controller и @RestController@Controller и @RestController, разберём их различия и приведём примеры использования.@Controller и @RestController.@Controller@Controller
public class MyController {
@RequestMapping("/hello")
public String hello(Model model) {
model.addAttribute("message", "Hello, Spring MVC");
return "hello";
}
}
В этом примере метод hello() обрабатывает запрос на URL /hello и возвращает имя представления (hello), которое будет отображаться пользователю как ответ.
@RestController@RestController появилась в Spring 4.0 и объединяет в себе две аннотации — @Controller и @ResponseBody. Это означает, что она не только помечает класс как Spring MVC Controller, но и автоматически преобразует возвращаемые данные в формат JSON или XML:@RestController
public class MyRestController {
@RequestMapping("/hello")
public String hello() {
return "Hello, Spring REST";
}
}
В этом случае, когда метод hello() обрабатывает запрос на URL /hello, он возвращает строку «Hello, Spring REST», которая автоматически преобразуется в формат JSON и отправляется в ответе на запрос.
@Controller и @RestController заключается в том, что @Controller используется для обработки веб-страниц, а @RestController — для создания RESTful веб-сервисов, которые возвращают данные в формате JSON или XML.@Controller может быть использована и для Web MVC, и для REST приложений, но в случае REST приложений к каждому методу контроллера придется добавлять аннотацию @ResponseBody для автоматического преобразования ответа в формат JSON или XML. Определить, MVC это приложение или REST, можно по наличию или отсутствию аннотации @ResponseBody в методах контроллера.System.out::println?
Character.isLetter() — метод, который проверяет, является ли символ буквой. Он возвращает значение true, если символ является буквой, и false в противном случае. Character.isDigit() — метод, который проверяет, является ли символ цифрой. Он возвращает значение true, если символ является цифрой, и false в противном случае.



@Value в Spring (Часть 2)@Value и как её обычно используют 80% разработчиков.@Value.@Value("123abc-234...")
private String token;
@Value("${bot.token:some default token}")
private String token;
bot.versions=1, 2, 3
@Value("${bot.versions}")
private int[] versions;
@Value, Spring по умолчанию ищет свойства в файле application.properties, но мы можем указать другой файл с помощью аннотации @PropertySource:@Configuration
@PropertySource("classpath:another.properties")
public class Config {
@Value("${bot.name}")
private String name;
@Value("${bot.token}")
private String token;
}
@PropertySource используется для указания источника свойств, а @Value — для внедрения значений свойств.
@Value в Spring (Часть 1)@Value — где её использовать, как её использовать и примеры использования.@Value позволяет внедрять значения свойств в поля, конструкторы или параметры методов Spring-компонентов. С её помощью мы можем легко получать значения из различных источников: properties-файлы, системные переменные, переменные окружения и т.д.application.properties со следующими значениями:bot.name=example_bot
bot.token=123abc-234...
token и bot и пометим их аннотацией @Value:@Value("${bot.name}")
private String name;
@Value("${bot.token}")
private String token;application.properties. Это была основа основ, но на этом возможности @Value не заканчиваются — в следующей части мы рассмотрим ещё несколько крутейших фишек этой аннотации.
x, верните true, если x является палиндромом, и false в противном случае.x = 121true121 читается как 121 слева направо и справа налево.x = -121falseСлева направо читается -121. Справа налево становится 121-. Следовательно, это не палиндром.x = 10falseЧитается 01 справа налево. Следовательно, это не палиндром.
