zoukankan      html  css  js  c++  java
  • JavaWeb项目开发案例精粹-第4章博客网站系统-003Dao层

    1.

     1 package com.sanqing.dao;
     2 
     3 import java.util.List;
     4 
     5 import com.sanqing.fenye.Page;
     6 import com.sanqing.po.Article;
     7 
     8 public interface ArticleDAO {
     9     //定义一个add方法,用来保存博客文章
    10     public void add(Article article);
    11     
    12     //定义一个queryUserAll,用来取出用户的所有文章
    13     public List<Article> queryUserAll(String username);
    14     
    15     //获得用户文章总记录数
    16     public int queryUserAllCount(String username);
    17     
    18     //按分页信息查询用户的记录
    19     public List<Article> queryByPage(String username,Page page);
    20     
    21     //获得所有文章的总记录数
    22     public int queryAllCount();
    23     
    24     //按分页信息查询记录
    25     public List<Article> queryAllByPage(Page page);
    26     
    27     //按ID查询文章
    28     public Article queryById(int id);
    29 }

    2.

     1 package com.sanqing.dao;
     2 
     3 import java.sql.SQLException;
     4 import java.util.List;
     5 
     6 import org.hibernate.HibernateException;
     7 import org.hibernate.Query;
     8 import org.hibernate.Session;
     9 import org.springframework.orm.hibernate3.HibernateCallback;
    10 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
    11 
    12 import com.sanqing.fenye.Page;
    13 import com.sanqing.po.Article;
    14 
    15 public class ArticleDAOImpl extends HibernateDaoSupport implements ArticleDAO {
    16 
    17     //实现add方法
    18     public void add(Article article) {
    19         this.getHibernateTemplate().saveOrUpdate(article);
    20     }
    21 
    22     public List<Article> queryUserAll(String username) {
    23         List find = this.getHibernateTemplate().find("select art from Article art where art.username = ?", username);
    24         List<Article> list = find;
    25         return list;
    26     }
    27 
    28     public int queryUserAllCount(String username) {
    29         List find = this.getHibernateTemplate().find("select count(*) from Article art where art.username = ?",username);
    30         return ((Long)find.get(0)).intValue();
    31     }
    32 
    33     public List<Article> queryByPage(final String username, final Page page) {
    34         return this.getHibernateTemplate().executeFind(new HibernateCallback() {
    35             public Object doInHibernate(Session session)
    36                     throws HibernateException, SQLException {
    37                 Query query = session.createQuery("select art from Article art where art.username = ?");
    38                 //设置参数
    39                 query.setParameter(0, username);
    40                 //设置每页显示多少个,设置多大结果。
    41                 query.setMaxResults(page.getEveryPage());
    42                 //设置起点
    43                 query.setFirstResult(page.getBeginIndex());
    44                 return query.list();
    45             }
    46             
    47         });
    48     }
    49 
    50     public List<Article> queryAllByPage(final Page page) {
    51         return this.getHibernateTemplate().executeFind(new HibernateCallback() {
    52             public Object doInHibernate(Session session)
    53                     throws HibernateException, SQLException {
    54                 Query query = session.createQuery("select art from Article art order by art.date desc");
    55                 //设置每页显示多少个,设置多大结果。
    56                 query.setMaxResults(page.getEveryPage());
    57                 //设置起点
    58                 query.setFirstResult(page.getBeginIndex());
    59                 return query.list();
    60             }
    61             
    62         });
    63     }
    64 
    65     public int queryAllCount() {
    66         List find = this.getHibernateTemplate().find("select count(*) from Article art");
    67         return ((Long)find.get(0)).intValue();
    68     }
    69 
    70     public Article queryById(int id) {
    71         List find = this.getHibernateTemplate().find("select art from Article art where art.id = ?", id);
    72         return (Article) find.get(0);
    73     }
    74 
    75 }

    3.

     1 package com.sanqing.dao;
     2 
     3 import com.sanqing.po.BlogInfo;
     4 
     5 public interface BlogInfoDAO {
     6     //设置个性化内容
     7     public void save(BlogInfo info);
     8     //获得
     9     public BlogInfo get(String username);
    10 }

    4.

     1 package com.sanqing.dao;
     2 
     3 import java.util.List;
     4 
     5 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
     6 
     7 import com.sanqing.po.BlogInfo;
     8 
     9 public class BlogInfoDAOImpl extends HibernateDaoSupport implements BlogInfoDAO{
    10 
    11     public BlogInfo get(String username) {
    12         List list = this.getHibernateTemplate().find("select bloginfo from BlogInfo bloginfo where bloginfo.username=?", username);
    13         if(list.size() == 0) {
    14             return null;
    15         } else {
    16             return (BlogInfo) list.get(0);
    17         }
    18     }
    19 
    20     public void save(BlogInfo info) {
    21         this.getHibernateTemplate().saveOrUpdate(info);
    22     }
    23     
    24 }

    5.

     1 package com.sanqing.dao;
     2 
     3 import java.util.List;
     4 
     5 import com.sanqing.fenye.Page;
     6 import com.sanqing.po.Critique;
     7 
     8 public interface CritiqueDAO {
     9     //添加评论
    10     public void addCritique(Critique critique);
    11     
    12     //获得指定文章的评论数
    13     public int queryCritiqueCount(int AId);
    14     
    15     //根据Page来查询指定文章的评论
    16     public List<Critique> queryByPage(int AId,Page page);
    17 }

    6.

     1 package com.sanqing.dao;
     2 
     3 import java.sql.SQLException;
     4 import java.util.List;
     5 
     6 import org.hibernate.HibernateException;
     7 import org.hibernate.Query;
     8 import org.hibernate.Session;
     9 import org.springframework.orm.hibernate3.HibernateCallback;
    10 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
    11 
    12 import com.sanqing.fenye.Page;
    13 import com.sanqing.po.Critique;
    14 
    15 public class CritiqueDAOImpl extends HibernateDaoSupport implements CritiqueDAO {
    16 
    17     public void addCritique(Critique critique) {
    18         this.getHibernateTemplate().save(critique);
    19     }
    20 
    21     public List<Critique> queryByPage(final int AId, final Page page) {
    22         return this.getHibernateTemplate().executeFind(new HibernateCallback() {
    23             public Object doInHibernate(Session session)
    24                     throws HibernateException, SQLException {
    25                 Query query = session.createQuery("select cri from Critique cri where cri.AId = ?");
    26                 query.setParameter(0, AId);
    27                 //设置每页显示多少个,设置多大结果。
    28                 query.setMaxResults(page.getEveryPage());
    29                 //设置起点
    30                 query.setFirstResult(page.getBeginIndex());
    31                 return query.list();
    32             }
    33             
    34         });
    35     }
    36 
    37     public int queryCritiqueCount(int AId) {
    38         List find = this.getHibernateTemplate().find("select count(*) from Critique cri where cri.AId = ?",AId);
    39         return ((Long)find.get(0)).intValue();
    40     }
    41 
    42 }

    7.

     1 package com.sanqing.dao;
     2 
     3 import java.util.Date;
     4 import java.util.List;
     5 
     6 import com.sanqing.po.Dianjiliang;
     7 
     8 public interface DianjiliangDAO {
     9     
    10     //返回该文章,该IP,该时间的访问记录
    11     public List queryByAId(int AId,String IP,Date time);
    12     
    13     //添加访问记录
    14     public void addJilu(Dianjiliang dianjiliang);
    15 }

    8.

     1 package com.sanqing.dao;
     2 
     3 import java.sql.SQLException;
     4 import java.util.Date;
     5 import java.util.List;
     6 
     7 import org.hibernate.HibernateException;
     8 import org.hibernate.Query;
     9 import org.hibernate.Session;
    10 import org.springframework.orm.hibernate3.HibernateCallback;
    11 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
    12 
    13 import com.sanqing.po.Dianjiliang;
    14 
    15 public class DianjiliangDAOImpl extends HibernateDaoSupport implements
    16         DianjiliangDAO {
    17 
    18     public void addJilu(Dianjiliang dianjiliang) {
    19         this.getHibernateTemplate().save(dianjiliang);
    20     }
    21 
    22     public List queryByAId(final int AId, final String IP, final Date time) {
    23         return this.getHibernateTemplate().executeFind(new HibernateCallback() {
    24             public Object doInHibernate(Session session)
    25                     throws HibernateException, SQLException {
    26                 Query query = session.createQuery("select djl from Dianjiliang djl where djl.AId = ? and djl.ip = ? and djl.time = ?");
    27                 //设置参数
    28                 query.setParameter(0, AId);
    29                 query.setParameter(1, IP);
    30                 query.setParameter(2, time);
    31                 return query.list();
    32             }
    33             
    34         });
    35     }
    36 
    37 }

    9.

     1 package com.sanqing.dao;
     2 
     3 import java.util.List;
     4 
     5 import com.sanqing.po.User;
     6 
     7 public interface UserDAO {
     8     //添加用户
     9     public void add(User user);
    10     
    11     //删除用户
    12     public void delete(User user);
    13     
    14     //更新用户
    15     public void update(User user);
    16     
    17     //查询所有用户
    18     public List queryAll();
    19     
    20     //按id查询用户
    21     public User queryByID(String username);
    22 }

    10.

     1 package com.sanqing.dao;
     2 
     3 import java.util.List;
     4 
     5 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
     6 
     7 import com.sanqing.po.User;
     8 
     9 public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {
    10 
    11     public void add(User user) {
    12         this.getHibernateTemplate().save(user);
    13     }
    14 
    15     public void delete(User user) {
    16 
    17     }
    18 
    19     public List queryAll() {
    20         return null;
    21     }
    22 
    23     public User queryByID(String username) {
    24         List list = this.getHibernateTemplate().find("select user from User user where user.username = '" + username + "'");
    25         
    26         if(list.size() == 0) {
    27             return null;
    28         } else {
    29             return (User)list.get(0);
    30         }
    31     }
    32 
    33     public void update(User user) {
    34 
    35     }
    36 
    37 }
  • 相关阅读:
    乱写
    C# 实现水印
    C# Json转对象
    C#自定义控件的创建
    C# 调用WebService服务
    C# 标准的MD5加密32位
    C# DataGridview用NPOI导出Excel文件
    手机屏幕分辨率和浏览器分辨率
    Java学习之Iterator(迭代器)的一般用法 (转)
    nginx的RTMP协议服务器
  • 原文地址:https://www.cnblogs.com/shamgod/p/5323298.html
Copyright © 2011-2022 走看看