我通过Java Spring Boot和thymleaf表达式从数据库中读取了许多URL。如果URL有“?”它会自动更改为“%3F”,例如URL:www.myserver.de?id=3将是www.myserver.de%3Fid = 3我认为我无法使用此解决方案链接,因为这些URL是从DB读取的使用Params
答案 0 :(得分:0)
您的URL在数据库中为url encoded,因此?
表示为%3F
。如果您想从编码的网址中获取原始网址,则需要url decode it,例如通过这样做:
String result = java.net.URLDecoder.decode(url, StandardCharsets.UTF_8);
答案 1 :(得分:0)
答案 2 :(得分:0)
如果您只是直接从数据库中读取完整的URL,则不应使用Thymeleaf标准url语法(因为它旨在转义URL参数)。您应该做类似的事情:
<a th:href="|//${link}|" target="_blank">For more information click here</a>