spring.jpa.hibernate.ddl-auto=create-drop
resources/static/css/style.css
<link href="css/style.css" type="text/css" rel="stylesheet"/>.
<link th:href="@{/css/style.css}" type="text/css" rel="stylesheet"/>.
List<String> assetTemplateIds = rights.stream().flatMap(rightsList -> rightsList.getAssetTemplateIds().stream()).collect(Collectors.toList());
List<String> taskTemplatesIds = rights.stream().flatMap(taskTemplatesList -> taskTemplatesList.getTaskTemplatesIds().stream()).collect(Collectors.toList());
ClassCastException: java.lang.String cannot be cast to com.example.deeplom.domain.TableGames
Я так понимаю так же нужно настраивать Thymeleaf?
<img th:src="${image}" alt="Картинка"/>
Вот эту часть кода по логике надо писать в модели прям над названием класса?
Теперь когда я хочу найти компании с паспортом работника, по логике я могу вызвать этот query и вызывать я его должен в классе Cервиса верно?
Так же возникает вопрос, если мы используем HQL и нам нужно написать какой то один непопулярный запрос, который допустим будет использован всего один раз во всем проекте.
Because OSIV creates a Session at the beginning of the request, the transactional proxy uses the current available Session instead of creating a brand new one.
not-null property references a null or transient value : com.SchoolJournal.SpringHibernate.model.Pupil.name
@Column(name = '"`name`", nullable = false)
@Getter
@Setter
private String name;
У меня есть бд блога на локалхосте я туда успешно гружу всю информацию для поста (название, дату , текст и картинку)
postAddArticle(@AuthenticationPrincipal User user, Date timeArticle, @RequestParam String title, String author,
@RequestParam String anons, @RequestParam String text,
@RequestParam("file") MultipartFile file, Model model)
<img src="data:image/jpeg;base64,[тут_код_картинки_в_base64]">
byte[] encodeBase64 = Base64.encode(repository.getImage());
String base64Encoded = new String(encodeBase64, "UTF-8");
model.addObject("image", base64Encoded );
<img src="data:image/jpeg;base64,${image}" />
Вообще мне кажется у вас архитектурно не очень придумано.
Лучше бы сделать отдельно пользователей и отдельно роли.
Converter<S, T>
)enctype="multipart/form-data"
<link href="${pageContext.request.contextPath}/templates/bootstrap/plugins/fontawesome-free/css/all.min.css" rel="stylesheet">
<script th:src="@{/bootstrap/plugins/bootstrap/js/bootstrap.bundle.min.js}"></script>
@ControllerAdvice
@ControllerAdvice
public class GlobalControllerAdvice {
// Текущий авторизованный пользователь
@ModelAttribute("user")
public User getUserProfile(
@AuthenticationPrincipal UserDetails currentUser
) {
if(
SecurityContextHolder.getContext().getAuthentication() != null &&
SecurityContextHolder.getContext().getAuthentication().isAuthenticated() &&
!(SecurityContextHolder.getContext().getAuthentication() instanceof AnonymousAuthenticationToken)
) {
return (User) userService.findUserByEmail(currentUser.getUsername());
} else {
return null;
}
}
}
if(user != null){
model.addAttribute("user", user.getUsername());
return "/index";
} else {
model.addAttribute("user", "Аноним");
return "/index";
}
@PostMapping("/order")
public void pay(@AuthenticationPrincipal AuthorizedUser user) {
...
}
@PostMapping("/order")
public void pay(@RequestParam(value = "consumer-id") Integer consumerId,
@RequestParam(value = "consumer-region-code") Integer regionCode) {
...
}
@PostMapping("/order")
public void pay(
@AuthenticationPrincipal AuthorizedUser user,
@RequestParam(value = "consumer-id", required = false) Integer consumerId,
@RequestParam(value = "consumer-region-code", required = false) Integer regionCode
) {
...
}
/clients/{clientId}
/clients/6
@PathVariable Integer
Optional client = null;
try {
client = clientRepository.findById(clientId);
model.addAttribute("allowDelete", false);
} catch (Exception ex) {
model.addAttribute("errorMessage", ex.getMessage());
}
model.addAttribute("client", client);
@GetMapping(value = "/clients/{clientId}")
public String clientDetails(Model model, @PathVariable Integer clientId) {
Optional client = clientRepository.findById(clientId).orElseThrow(ClientNotFoundException::new);
model.addAttribute("client", client);
return "client-details";
}
{{#clients}}
{{#client}}