Получение данных без<p><bold><em> и т. д. из базы данных после сохранения записей в базе данных через ckeditor
Я использую Spring 3.1 MVC и мой проект Maven проекта. Данные, введенные в часть ckeditor, успешно сохраняются в базе данных sqldeveloper. Данные сохраняются в формате HTML, как <p><bold>
и т. д. Однако, когда я пытаюсь получить данные, они отображаются как записанные в базе данных, такие как <p><bol>example</bold></p>
, Как я могу избавиться от этой проблемы? С уважением,
news1 можно получить правильно. Это метод получения контроллера. Это работает, как я объяснил. то есть html коды отображаются.
List <News> newslist= new ArrayList<News>();
newslist.add(news1);
model.addAttribute("newslist", newslist);
В части JSP код ниже:
<table>
<c:forEach items="${newslist}" var="news1" varStatus="status">
<tr>
<td>
<c:out value="${news.field1}" />
</td>
</tr>
<tr>
<td>
<c:out value="${news.field2}" />
</td>
</tr>
</table>
Я решил проблему. В контроллере:
String a = field1.replaceAll("\\s\\s+|\\n|\\r", " ");
a= a.replaceAll("\"", "'");
model.addAttribute("a",a);
в JSP:
<c:out escapeXml="false" value="${a}"></c:out>
Спасибо за вашу заботу,
2 ответа
Для этого вам следует использовать библиотеку Apache Commons Lang и метод для удаления HTML. Скачайте этот jar-файл, добавьте его в свои библиотеки, импортируйте и просто позвоните:
StringEscapeUtils.unescapeHtml(retrivedDataFromDatabase);
Перенос решения с вопроса на ответ:
Я решил проблему. В контроллере:
String a = field1.replaceAll("\\s\\s+|\\n|\\r", " "); a= a.replaceAll("\"", "'"); model.addAttribute("a",a);
в JSP:
<c:out escapeXml="false" value="${a}"></c:out>