web学习之博客小项目(实现点击数和评论数的显示)
2017-02-08 10:52
381 查看
设计思路:
1、评论数和点击数都是文章的属性之一,在文章pojo类添加这两个属性。
2、新建一个评论pojo类,包含评论内容,评论用户名,评论文章id属性。
3、新建点击pojo类,包含点击文章id、ip、日期属性。
4、一个ip同一日期只能点击一次,多余点击点击数不增加。
评论数和点击数在博客首页与博客首页均有显示
action中代码:
将评论记录到数据库:
文章内容和评论显示:
还有很多不足待改进,欢迎各位提出修改意见!!
1、评论数和点击数都是文章的属性之一,在文章pojo类添加这两个属性。
private Integer hasread; private Integer comment; public Integer getComment() { return comment; } public void setComment(Integer comment) { this.comment = comment; } public Integer getHasread() { return hasread; } public void setHasread(Integer hasread) { this.hasread = hasread; }
2、新建一个评论pojo类,包含评论内容,评论用户名,评论文章id属性。
public class Criticism { private Integer id; private Integer Aid; private String content; private String username; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Integer getAid() { return Aid; } public void setAid(Integer aid) { Aid = aid; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } }
3、新建点击pojo类,包含点击文章id、ip、日期属性。
public class Click { private Integer id; private Integer Aid; private String ip; private Date clickDate; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Integer getAid() { return Aid; } public void setAid(Integer aid) { Aid = aid; } public String getIp() { return ip; } public void setIp(String ip) { this.ip = ip; } public Date getClickDate() { return clickDate; } public void setClickDate(Date clickDate) { this.clickDate = clickDate; } }
4、一个ip同一日期只能点击一次,多余点击点击数不增加。
评论数和点击数在博客首页与博客首页均有显示
action中代码:
public String showArticleCon() throws Exception { HttpServletRequest request = ServletActionContext.getRequest(); Article article = articleService.showArticleCon(id); String ip = request.getRemoteAddr(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String stime = sdf.format(new Date()); Date clickDate = sdf.parse(stime); if(!clickService.queryClick(id, ip, clickDate)) { //点击量增加 article.setHasread(article.getHasread() + 1); } //将更新的Article保存到数据表中 articleService.updateArticle(article); //显示评论 Page page = new Page(); page.setCurrentPage(this.getCurrentPage()); page.setEveryPage(2); Result result = criticismService.pageQueryCriticism(id, page); request.setAttribute("allCriticism", result.getList()); request.setAttribute("page", result.getPage()); request.setAttribute("article", article); return SUCCESS; }
将评论记录到数据库:
public String addCriticism() { Map session = ActionContext.getContext().getSession(); String username = (String) session.get("username"); criticism.setUsername(username); criticism.setAid(id); criticism.setContent(content); this.criticismService.addCriticism(criticism); return SUCCESS; }
文章内容和评论显示:
还有很多不足待改进,欢迎各位提出修改意见!!
相关文章推荐
- web学习之博客小项目(分页显示文章)
- 博客项目实现文章评论功能(重点是评论回复)
- Django博客功能实现—文章评论的显示
- Angular实现类似博客评论的递归显示及获取回复评论的数据
- JAVA_WEB项目之Lucene实现检索结果排序和关键字在索引库中多字段查询结果进行高亮显示
- Spring Boot 学习二、基于SpringBoot + Mybatis实现SpringMVC Web项目
- web学习之博客小项目(添加文章)
- web开发-邮件编写HTML网页正常显示实现方法-学习笔记八
- 博客项目实现文章评论功能(重点是评论回复)
- 博客项目实现文章评论功能(重点是评论回复)
- 博客项目实现文章评论功能(重点是评论回复)
- 博客项目实现文章评论功能
- shiro学习:shiro整合springweb项目实现用户登录和退出
- 一起学习水晶报表之【如何实现Web网页显示水晶报表和绑定数据】(课程1)
- JavaWeb项目实现上传文件动态显示进度百分比
- Angular 实现类似博客评论的递归显示
- node.js学习笔记(3)-node.js结合mysql数据库实现的web项目中常见功能--登录验证、session传值、拦截器、ajax传值等
- 在Label中实现TextBox一样的换行、回车字符显示功能[WEB学习实例]
- Django 学习小组:博客开发实战第五周教程 —— 实现评论功能
- 基于TCP的项目学习历程(一)实现简单的socket请求。瞎扯的,不要评论。