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层的更多相关文章

  1. JavaWeb项目开发案例精粹-第4章博客网站系统-006View层

    1.showAllArticle.jsp <%@ page language="java" contentType="text/html; charset=gb23 ...

  2. JavaWeb项目开发案例精粹-第4章博客网站系统-005action层

    1. package com.sanqing.action; import java.util.Date; import java.util.Map; import com.opensymphony. ...

  3. JavaWeb项目开发案例精粹-第4章博客网站系统-003Dao层

    1. package com.sanqing.dao; import java.util.List; import com.sanqing.fenye.Page; import com.sanqing ...

  4. JavaWeb项目开发案例精粹-第4章博客网站系统-002辅助类及配置文件

    1. <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5&qu ...

  5. JavaWeb项目开发案例精粹-第4章博客网站系统-001设计

    1. 2. 3. # MySQL-Front 5.0 (Build 1.0) /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE */; /*!40101 SET SQL_MO ...

  6. JavaWeb项目开发案例精粹-第6章报价管理系统-05Action层

    0. <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC &quo ...

  7. JavaWeb项目开发案例精粹-第6章报价管理系统-002辅助类及配置文件

    1. <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www ...

  8. JavaWeb项目开发案例精粹-第3章在线考试系统-007View层

    0.login.jsp <%@ page language="java" import="java.util.*" pageEncoding=" ...

  9. JavaWeb项目开发案例精粹-第2章投票系统-001设计

    1.项目结构 2.数据库设计 # MySQL-Front 5.0 (Build 1.0) /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE */; /*!40101 SET ...

随机推荐

  1. ios 唯一标示符

    大家知道苹果每部 iOS 设备都有一个 UDID,它就像设备的身份证一样,记录着设备的名称.类型甚至一些关于用户的私人信息.通常情况下,UDID 的一个最大功能就是帮助广告发布商向特定用户推送定向广告 ...

  2. Kinect帮助文档翻译之一 入门

    最近在玩Kinect,使用的是Unity,发现网上好像没有什么教程.自己就只有抱着英文版帮助文档啃,真是苦逼 本人英语也不好,大家将就着看吧 Kinect入门帮助 如何运行示例 1       下载并 ...

  3. hibernate 超级牛x的公共类

    想法,能支持in查询和 =查询的 公共方法,类似下面实现 用 泛型 实现 参数 getList(String[] params,Object[] values){} for(int i=0;i< ...

  4. 程序调试手段之gdb, vxworks shell

    调试一个程序主要用到的功能: 启动程序 设置函数断点 设置数据断点 单步执行 查看内存值 修改内存值 linux下的gdb,和vxworks下的shell 虽然使用方式和调试命令略有不同,但是都能满足 ...

  5. 转载:JS快速获取图片宽高的方法

    快速获取图片的宽高其实是为了预先做好排版样式布局做准备,通过快速获取图片宽高的方法比onload方法要节省很多时间,甚至一分钟以上都有可能,并且这种方法适用主流浏览器包括IE低版本浏览器. 我们一步一 ...

  6. JS 学习笔记--7---正则表达式

    正则表达式中的内容很多,也很深,下面只是一些基本的知识点,练习中使用的浏览器是IE10,若有不当处请各位朋友指正,我会在第一时间修改错误之处. 匹配的概念:是包含的意思,不是相等的意思 1.正则表达式 ...

  7. 设计模式之状态模式(State)

    状态模式原理:随着状态的变化,对象的行为也发生变化 代码如下: #include <iostream> #include <string> #include <list& ...

  8. 【BZOJ】【1087】【SCOI2005】互不侵犯King

    状压DP 我写的太水了……64ms才过,估计还有更好的做法,希望各位神犇不吝赐教>_<. 嗯这题很明显每一行都可以用一个2进制数表示放置方式的,(1表示放,0表示不放).然后预处理一下所有 ...

  9. The Brain as a Universal Learning Machine

    The Brain as a Universal Learning Machine This article presents an emerging architectural hypothesis ...

  10. YARN的 AM与RM通信,申请资源分配过程

    AppMaster向RM请求资源 MRAppMaster :serviceinit // service to allocate containers from RM (if non-uber) or ...