接到该论坛的任务,我先用cvs把原项目下载到下来。接着登录公司论坛,分析段落出现格式不整齐,不美观的问题,我想用css控制其样式,用户写好的帖子,是自己空的格,当用户提交发帖或回帖时,应该去掉空格,保留换行和段落标记。
现在着手的事情是找到这个控制所有论坛帖子的css样式表,该样式表放在一个文件中。所有帖子都放在div p中。用户写好的帖子,按用户写好帖子的格式输出到jsp页面,这中间帖子被保存到数据库中。我们现在要做的是使从数据库中查询出帖子的格式和编码问题。例如:一个段落的换行符在jsp中转换成<br/>,每段的首行空两个字符的间距。
问题在于究竟在哪里找到从数据库中查询帖子,然后进行处理。如果从数据库中查询出的帖子的格式放到jsp中样式不变,那么该段就应该不必用css控制,因为它保存在数据库中的空格和换行符相应地都转化为$nbsp;和<br/>。然后是在jsp的哪一模块。经过格式处理后的java代码查询出的帖子在哪些jsp中调用。现在要做的是找出持久层代码,即从表中查询出的帖子是一个对象或List,这个对象的content要经过处理,然后让他以处理后的格式显示在jsp页面中。写一个方法,代码如下:
public static String convertToHtmlStr(String s)
{
if (s == null)
{
return "";
}
return s.replaceAll("<", "<")//转化为后者
.replaceAll(">", ">")
.replaceAll(" ", " ")
.replaceAll("'", "´")
.replaceAll("\"",""'")
.replaceAll("\r\n", "<br/>")
.replaceAll("\n", "<br/>")
;
}