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. CentOS安装vsftpd

    版本:vsftpd-3.0.2-9.el7.x86_64(CentOS是64位的). 1.安装vsftpd yum -y install vsftpd 2.配置vsftpd 修改配置前把原始配置文件备 ...

  2. C6011 正在取消对 null 指针的引用

  3. 程序开发心理学阅读笔记——第I篇

    1.软件的任务是为了解决某一特定的问题,而软件开发者的任务却需要解决一系列问题.2.温伯格说,我们不能要求每个人都聪明异常,能够解决所有难题:但是我们必须持续思考,因为只有如此,我们才能明白自己在做什 ...

  4. Careercup - Microsoft面试题 - 5173689888800768

    2014-05-11 05:21 题目链接 原题: Complexity of a function: int func_fibonacci ( int n) { ) { return n; } el ...

  5. 学习JQuery的$.Ready()与OnLoad事件比较

    $(document).Ready()方法 VS OnLoad事件 VS $(window).load()方法接触JQuery一般最先学到的是何时启动事件.在曾经很长一段时间里,在页面载入后引发的事件 ...

  6. Spring MVC mapping[From Spring MVC Beginner's Guide]

    In a Spring MVC application, the URL can logically be divided into five parts (see the following fig ...

  7. python-根据字符串动态生成对象eval

    # -*- coding: utf-8 -*- stock1={ 'stockName':"沈阳机床", ", 'averagePrice_yesterday':34.0 ...

  8. Basic knowledge of javaScript (keep for myself)

    1. 函数表达式 JavaScript 函数可以通过一个表达式定义.eg. var x = function (a, b) {return a * b}; so: var x = function ( ...

  9. 获取任意可序列化对象的Xml字符串,方便在日志中查看任一所感兴趣的对象。

    代码: public static string GetLoggingString(this object obj) { using (var stream = new MemoryStream()) ...

  10. Centos编译安装PHP 5.5笔记

    本篇是在 Centos 6.4 32bit 下编译安装 php 5.5.5 的笔记,接上篇 Centos编译安装Apache 2.4.6笔记.php 5.5.x 和 centos 源里面的 php 5 ...