我正在使用DOB
创建web application
。在我的Spring Boot
中,可能会出现一些controller
。我需要通知我的最终用户有关这些错误的信息。
例如,在数据库中保存数据时可能会有errors
。在这种情况下,我需要显示自定义错误消息。
有时也可能抛出error
,需要报告正确的用户友好错误消息。
我读过有关使用exception
执行此操作的信息。问题在于这种方法,我需要创建不同的视图(html文件,因为我使用ExceptionHandler
)和错误消息。因此,对于每个异常/错误情况,我将需要使用硬编码的错误消息创建单独的HTML文件。
是否可以使用单个error.html页面,并根据Thymeleaf
中出现的确切错误自定义该页面中的错误消息?
答案 0 :(得分:0)
您可以使用Springs MVC
表示Model View Controlling
。因此,在您拥有将数据保存到数据库的html的页面上,您可以创建仅在需要时显示的html。例如,使用tymeleafs
th:switch
或th:if
。 find more...
在您的业务逻辑中,您可以创建一个简单的pojo
,例如ExecptionMessage
,您可以在其中设置您的execption消息。抛出真实的execption时,您可以将特定的execption消息设置为此对象。在您的controller
中,您现在可以将ExecptionMessage
对象设置为您的视图。
model.addAttribute("execptionMessage", new ExecptionMessage("My Custom message"));
此model
现已在view
中提供,您可以自行决定是否显示该消息。因此,无需为每条错误消息创建新的html
。但您可以考虑创建一个thymeleaf template
来创建html一次,并在需要时包含fragment
。 find more...
<div th:include="footer :: copy">...</div>