JavaWeb项目开发案例精粹-第4章博客网站系统-004Service层
1.
package com.sanqing.service; import java.util.List; import com.sanqing.fenye.Page;
import com.sanqing.fenye.Result;
import com.sanqing.po.Article; public interface ArticleService {
//进行文章的保存
public void addArticle(Article article); //取出用户所有的文章
public List<Article> showUserAllArticle(String username); //分页显示用户文章
public Result showUserArticleByPage(String username,Page page); //分页显示全部文章
public Result showArticleByPage(Page page); //显示文章
public Article showArticle(int id); //获得评论数
public int getCritiqueCount(int AId);
}
2.
package com.sanqing.service; import java.util.List; import com.sanqing.dao.ArticleDAO;
import com.sanqing.dao.CritiqueDAO;
import com.sanqing.fenye.Page;
import com.sanqing.fenye.PageUtil;
import com.sanqing.fenye.Result;
import com.sanqing.po.Article; public class ArticleServiceImpl implements ArticleService {
private ArticleDAO articleDAO;
private CritiqueDAO critiqueDAO; public CritiqueDAO getCritiqueDAO() {
return critiqueDAO;
} public void setCritiqueDAO(CritiqueDAO critiqueDAO) {
this.critiqueDAO = critiqueDAO;
} public ArticleDAO getArticleDAO() {
return articleDAO;
} public void setArticleDAO(ArticleDAO articleDAO) {
this.articleDAO = articleDAO;
} public void addArticle(Article article) {
articleDAO.add(article);
} public List<Article> showUserAllArticle(String username) {
System.out.println(articleDAO.queryUserAllCount(username));
return articleDAO.queryUserAll(username);
} public Result showUserArticleByPage(String username, Page page) {
page = PageUtil.createPage(page,articleDAO.queryUserAllCount(username));
List<Article> all = articleDAO.queryByPage(username, page);
Result result = new Result();
result.setPage(page);
result.setList(all);
return result;
} public Result showArticleByPage(Page page) {
page = PageUtil.createPage(page,articleDAO.queryAllCount());
List<Article> all = articleDAO.queryAllByPage(page);
Result result = new Result();
result.setPage(page);
result.setList(all);
return result;
} public Article showArticle(int id) {
return articleDAO.queryById(id);
} public int getCritiqueCount(int AId) {
return critiqueDAO.queryCritiqueCount(AId);
} }
3.
package com.sanqing.service;
import com.sanqing.po.BlogInfo;
public interface BlogInfoService {
//设置博客个性化内容
public void setBlogInfo(BlogInfo blogInfo);
//获得博客个性化内容
public BlogInfo getBlogInfo(String name);
}
4.
package com.sanqing.service; import com.sanqing.dao.BlogInfoDAO;
import com.sanqing.po.BlogInfo; public class BlogInfoServiceImpl implements BlogInfoService {
private BlogInfoDAO blogInfoDAO; public BlogInfo getBlogInfo(String username) {
return blogInfoDAO.get(username);
} public BlogInfoDAO getBlogInfoDAO() {
return blogInfoDAO;
} public void setBlogInfoDAO(BlogInfoDAO blogInfoDAO) {
this.blogInfoDAO = blogInfoDAO;
} public void setBlogInfo(BlogInfo blogInfo) {
//通过调用DAO组件来完成
blogInfoDAO.save(blogInfo);
} }
5.
package com.sanqing.service; import com.sanqing.fenye.Page;
import com.sanqing.fenye.Result;
import com.sanqing.po.Critique; public interface CritiqueService {
//添加评论
public void addCritique(Critique critique); //分页显示评论
public Result showCritiqueByPage(int AId,Page page); //获得指定文章的评论数
public int getCritiqueCount(int AId);
}
6.
package com.sanqing.service; import java.util.List; import com.sanqing.dao.CritiqueDAO;
import com.sanqing.fenye.Page;
import com.sanqing.fenye.PageUtil;
import com.sanqing.fenye.Result;
import com.sanqing.po.Article;
import com.sanqing.po.Critique; public class CritiqueServiceImpl implements CritiqueService {
private CritiqueDAO critiqueDAO; public CritiqueDAO getCritiqueDAO() {
return critiqueDAO;
} public void setCritiqueDAO(CritiqueDAO critiqueDAO) {
this.critiqueDAO = critiqueDAO;
} public void addCritique(Critique critique) {
critiqueDAO.addCritique(critique);
} public Result showCritiqueByPage(int AId, Page page) {
page = PageUtil.createPage(page,critiqueDAO.queryCritiqueCount(AId));
List<Critique> all = critiqueDAO.queryByPage(AId, page);
Result result = new Result();
result.setPage(page);
result.setList(all);
return result;
} public int getCritiqueCount(int AId) {
return critiqueDAO.queryCritiqueCount(AId);
}
}
7.
package com.sanqing.service;
import java.util.Date;
public interface DianjiliangService {
//ÅжÏÊÇ·ñµã»÷¹ý
public boolean isVistor(int AId,String IP,Date time);
}
8.
package com.sanqing.service; import java.util.Date; import com.sanqing.dao.DianjiliangDAO;
import com.sanqing.po.Dianjiliang; public class DianjiliangServiceImpl implements DianjiliangService{
private DianjiliangDAO dianjiliangDAO; public DianjiliangDAO getDianjiliangDAO() {
return dianjiliangDAO;
} public void setDianjiliangDAO(DianjiliangDAO dianjiliangDAO) {
this.dianjiliangDAO = dianjiliangDAO;
} public boolean isVistor(int AId, String IP, Date time) {
if(dianjiliangDAO.queryByAId(AId, IP, time).size() != 0) {
System.out.println("该IP今天点击过了");
//表示用户已经点击过了。
return true;
} else {
System.out.println("该IP今天没有点击过");
//表示用户没有点击过
Dianjiliang djl = new Dianjiliang();
djl.setAId(AId);
djl.setIp(IP);
djl.setTime(time);
//保存记录
dianjiliangDAO.addJilu(djl);
return false;
}
} }
9.
package com.sanqing.service;
import com.sanqing.po.User;
public interface UserService {
//用户注册
public boolean registerUser(User user);
//用户登陆
public boolean loginUser(User user);
}
10.
package com.sanqing.service; import com.sanqing.dao.UserDAO;
import com.sanqing.po.User; public class UserServiceImpl implements UserService {
private UserDAO userDAO; public boolean registerUser(User user) {
//判断用户是否存在
if(userDAO.queryByID(user.getUsername()) != null) {
return false;
}else {
userDAO.add(user);
return true;
}
} public UserDAO getUserDAO() {
return userDAO;
} public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
} public boolean loginUser(User user) {
//判断用户是否存在
if(userDAO.queryByID(user.getUsername()) == null) {
return false;
} else {
User queryUser = userDAO.queryByID(user.getUsername());
if(queryUser.getPassword().equals(user.getPassword())) {
return true;
} else {
return false;
}
}
} }
11.
JavaWeb项目开发案例精粹-第4章博客网站系统-004Service层的更多相关文章
- JavaWeb项目开发案例精粹-第4章博客网站系统-006View层
1.showAllArticle.jsp <%@ page language="java" contentType="text/html; charset=gb23 ...
- JavaWeb项目开发案例精粹-第4章博客网站系统-005action层
1. package com.sanqing.action; import java.util.Date; import java.util.Map; import com.opensymphony. ...
- JavaWeb项目开发案例精粹-第4章博客网站系统-003Dao层
1. package com.sanqing.dao; import java.util.List; import com.sanqing.fenye.Page; import com.sanqing ...
- JavaWeb项目开发案例精粹-第4章博客网站系统-002辅助类及配置文件
1. <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5&qu ...
- JavaWeb项目开发案例精粹-第4章博客网站系统-001设计
1. 2. 3. # MySQL-Front 5.0 (Build 1.0) /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE */; /*!40101 SET SQL_MO ...
- JavaWeb项目开发案例精粹-第6章报价管理系统-05Action层
0. <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC &quo ...
- JavaWeb项目开发案例精粹-第6章报价管理系统-002辅助类及配置文件
1. <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www ...
- JavaWeb项目开发案例精粹-第3章在线考试系统-007View层
0.login.jsp <%@ page language="java" import="java.util.*" pageEncoding=" ...
- JavaWeb项目开发案例精粹-第2章投票系统-001设计
1.项目结构 2.数据库设计 # MySQL-Front 5.0 (Build 1.0) /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE */; /*!40101 SET ...
随机推荐
- python 安装scrapy
1. 首先你先得安装PYTHON...还是推荐2.7吧,之前装了3.3似乎和这个世界格格不入...先装个2.7. 并将python加入系统的环境变量. 2. 去scrapy 官网下载最新版本的scra ...
- ABAP文本编辑框操作
* 1.创建文本框 DATA: g_container TYPE REF TO cl_gui_custom_container, g_editor TYPE REF TO cl_gui_textedi ...
- sql总结
sql总结 sql总结 where字句中使用的运算符 定义外键 定义主键 多表联合查询 统计函数 数据类型 sql语句格式 转换函数 null函数 运算符 日期 求某天是星期几 日期天数差 next_ ...
- cocos2dx中导演的职责有哪些?
1.一个游戏里面只有一个导演,因此采用了单例的设计模式,用getInstance方法来获得 2.游戏中导演负责openGL ES的初始化,场景的切换,游戏的暂停继续(相当于拍电影的ka),节点坐标与世 ...
- VS2013中如何更改主题颜色(深色)和恢复默认的窗口布局
1.通常情况下,我们会根据个人爱好更改VS2013的主题颜色,一开始我喜欢白色,后来我偏爱深色. 依次选择:工具->选项->常规->主题->深色->确定,ok 2.我们在 ...
- 基于.net mvc的校友录(三、实体模型实现)
实体模型设计 由于是实际开发,而且是时间比较紧的,所以,在开发实现过程中,总有一些对原计划的改动: AlumniBookModel数据库实体模型 这是主数据实体类,EF会根据此实体生成数据库,它的每一 ...
- mysql 5.7 64位 解压版安装
64位操作系统最好安装64位的mysql数据库,充分利用内存的寻址能力,对于windows而言,mysql官网只提供了32位的MSI安装程序,因为在windows下安装64位的mysql,选择解压版安 ...
- C3P0连接池详解及配置
C3P0连接池详解及配置 本人使用的C3P0的jar包是:c3p0-0.9.1.jar <bean id = "dataSource" class = "com.m ...
- BZOJ 4500: 矩阵 差分约束
题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=4500 题解: 从行向列建边,代表一个格子a[i][j],对每个顶点的所有操作可以合并在一 ...
- BZOJ 3143 HNOI2013 游走 高斯消元 期望
这道题是我第一次使用高斯消元解决期望类的问题,首发A了,感觉爽爽的.... 不过笔者在做完后发现了一些问题,在原文的后面进行了说明. 中文题目,就不翻大意了,直接给原题: 一个无向连通图,顶点从1编号 ...