Перейти к основному содержимому

125 записей с тегом "Spring MVC"

Посмотреть все теги

· 3 мин. чтения

1. Обзор

В этой короткой статье мы увидим, как должны создаваться исключения в наших контроллерах и как тестировать эти исключения с помощью Spring MockMvc.

2. Генерация исключений в контроллерах

Давайте начнем изучать , как запустить исключение из контроллера .

Мы можем думать о службах, которые мы предоставляем из контроллера, так же, как если бы они были обычными функциями Java:

· 4 мин. чтения

1. Введение

Velocity — это механизм шаблонов от Apache Software Foundation, который может работать с обычными текстовыми файлами, кодом SQL, XML, Java и многими другими типами.

В этой статье мы сосредоточимся на использовании Velocity с типичным веб-приложением Spring MVC.

2. Зависимости Maven

Начнем с включения поддержки Velocity со следующими зависимостями:

· 6 мин. чтения

1. Обзор

В этом руководстве мы узнаем о кэшировании HTTP. Мы также рассмотрим различные способы реализации этого механизма между клиентом и приложением Spring MVC.

2. Представляем HTTP-кеширование

Когда мы открываем веб-страницу в браузере, она обычно загружает много ресурсов с веб-сервера:

./8fe5cfd190b94c0521aa96c76fd79fae.jpg

· 6 мин. чтения

1. Введение

В этой статье мы покажем, как загружать файлы Excel и отображать их содержимое на веб-странице с помощью среды Spring MVC .

2. Загрузка файлов Excel

Чтобы иметь возможность загружать файлы, мы сначала создадим сопоставление контроллера, которое получает MultipartFile и сохраняет его в текущем местоположении:

private String fileLocation;

@PostMapping("/uploadExcelFile")
public String uploadFile(Model model, MultipartFile file) throws IOException {
InputStream in = file.getInputStream();
File currDir = new File(".");
String path = currDir.getAbsolutePath();
fileLocation = path.substring(0, path.length() - 1) + file.getOriginalFilename();
FileOutputStream f = new FileOutputStream(fileLocation);
int ch = 0;
while ((ch = in.read()) != -1) {
f.write(ch);
}
f.flush();
f.close();
model.addAttribute("message", "File: " + file.getOriginalFilename()
+ " has been uploaded successfully!");
return "excel";
}

· 6 мин. чтения

1. Обзор

В этом руководстве мы покажем, как возвращать изображения и другие медиаданные с помощью среды Spring MVC.

Мы обсудим несколько подходов, начиная с прямого манипулирования HttpServletResponse и заканчивая подходами, которые выигрывают от преобразования сообщений , согласования содержимого и абстракции ресурсов Spring . Мы подробно рассмотрим каждый из них и обсудим их преимущества и недостатки.

2. Использование HttpServletResponse

Самый простой подход к загрузке изображения заключается в том, чтобы напрямую работать с объектом ответа и имитировать чистую реализацию сервлета , и это продемонстрировано с помощью следующего фрагмента:

· 4 мин. чтения

1. Обзор

В этом руководстве мы собираемся показать, как получить доступ к объектам Spring MVC в представлениях Thymeleaf, которые содержат код JavaScript. В наших примерах мы будем использовать Spring Boot и механизм шаблонов Thymeleaf, но эта идея работает и для других механизмов шаблонов.

Мы собираемся описать два случая: когда код JavaScript встроен или находится внутри веб-страницы, сгенерированной движком, и когда он является внешним по отношению к странице — например, в отдельном файле JavaScript.

2. Настройка

Предположим, что мы уже настроили веб-приложение Spring Boot, использующее механизм шаблонов Thymeleaf. В противном случае вам могут пригодиться следующие руководства:

· 3 мин. чтения

1. Обзор

В этом кратком руководстве мы обсудим распространенную проблему при работе с Spring MVC — при использовании Spring @PathVariable с @RequestMapping для сопоставления конца URI запроса, содержащего точку, мы получим частичное значение. в нашей переменной, усеченной до последней точки.

В следующих разделах мы сосредоточимся на том, почему это происходит и как изменить это поведение.

Введение в Spring MVC можно найти в этой статье .

2. Нежелательная помощь Spring

· 3 мин. чтения

1. Обзор

Эта короткая статья продемонстрирует несколько способов возврата пользовательских кодов состояния HTTP из контроллеров Spring MVC .

Это часто важно для более четкого выражения результата запроса клиенту и использования полной богатой семантики протокола HTTP. Например, если что-то пойдет не так с запросом, отправка определенного кода ошибки для каждого типа возможной проблемы позволит клиенту отобразить пользователю соответствующее сообщение об ошибке.

Настройка базового проекта Spring MVC выходит за рамки этой статьи, но вы можете найти дополнительную информацию здесь .

2. Возврат пользовательских кодов состояния

· 3 мин. чтения

1. Обзор

Apache Tiles — это бесплатная платформа шаблонов с открытым исходным кодом, полностью построенная на шаблоне проектирования Composite.

Составной шаблон проектирования — это тип структурного шаблона, который объединяет объекты в древовидные структуры для представления иерархий целых частей, и этот шаблон обрабатывает отдельные объекты и композицию объектов единообразно. Другими словами, в плитках страница создается путем сборки композиции вложенных представлений, называемых плитками.

Преимущества этого фреймворка перед другими фреймворками:

  • возможность повторного использования
  • простота в настройке
  • низкая производительность

В этой статье мы сосредоточимся на интеграции Apache Tiles со Spring MVC .

· 6 мин. чтения

1. Обзор

При разработке веб-приложения ключевым компонентом является его внешний вид или тема . Это влияет на удобство использования и доступность нашего приложения и может еще больше укрепить бренд нашей компании.

В этом руководстве мы рассмотрим шаги, необходимые для настройки тем в приложении Spring MVC .

2. Варианты использования

Проще говоря, темы — это набор статических ресурсов, обычно таблиц стилей и изображений, которые влияют на визуальный стиль нашего веб-приложения.