|
4.9 开发技巧与难点分析 |
用户回复完文章,系统会将用户回复的信息置顶,并且如果当前回复信息的用户就是文章的作者,在用户信息栏目的用户回复数就会自动加1,在这个过程中页面并没有大刷,而是采用了局部异步刷新,这样就使得用户体验的良好性大大得到了提高。这个逻辑也是文章回复这部分最难懂的地方。下面是具体的实现代码:
回复框区域的HTML代码如下。
代码位置:光盘 \MR\04\WebContent\WEB-INF\jsp\article\singleArticle.jsp
单条回复信息HTML代码模板如下。
代码位置:光盘 \MR\04\WebContent\WEB-INF\jsp\article\singleArticle.jsp
addReply方法的具体代码如下。
代码位置:光盘 \MR\04\WebContent\WEB-INF\jsp\article\singleArticle.jsp
Action调用DAO层代码并且将执行结果以JSON的格式返回给客户端。具体代码如下。
代码位置:光盘 \MR\04\src\com\hrl\action\ReplyAction.java
outJSONInfo是一个用于向客户端输出JSON格式数据的方法,代码如下。
代码位置:光盘 \MR\04\src\com\hrl\util\JSONKit.java
每个系统都应该有一个导航位置,导航位置的设置一般可以分为两种,在页面上设置和通过Action返回设置。本系统采用的是在页面动态设置,即在每个页面加载的时候调用一段JavaScript方法来将所构建的组件渲染到指定的DIV里以完成当前位置导航信息的设置。
存放当前位置的DIV的html代码如下。
代码位置:光盘 \MR\04\WebContent\WEB-INF\jsp\article\search.jsp
下面是导航信息位置和执行方法的代码。
代码位置:光盘 \MR\04\WebContent\js\search.js
到此,PathUtil和路径对象都定义好了,下面是PathUtil类的使用实例。
代码位置:光盘 \MR\04\WebContent\WEB-INF\jsp\article\forum.jsp