1.

 package com.sanqing.dao;

 import java.util.List;

 import com.sanqing.fenye.Page;
import com.sanqing.po.Article; public interface ArticleDAO {
//定义一个add方法,用来保存博客文章
public void add(Article article); //定义一个queryUserAll,用来取出用户的所有文章
public List<Article> queryUserAll(String username); //获得用户文章总记录数
public int queryUserAllCount(String username); //按分页信息查询用户的记录
public List<Article> queryByPage(String username,Page page); //获得所有文章的总记录数
public int queryAllCount(); //按分页信息查询记录
public List<Article> queryAllByPage(Page page); //按ID查询文章
public Article queryById(int id);
}

2.

 package com.sanqing.dao;

 import java.sql.SQLException;
import java.util.List; import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.sanqing.fenye.Page;
import com.sanqing.po.Article; public class ArticleDAOImpl extends HibernateDaoSupport implements ArticleDAO { //实现add方法
public void add(Article article) {
this.getHibernateTemplate().saveOrUpdate(article);
} public List<Article> queryUserAll(String username) {
List find = this.getHibernateTemplate().find("select art from Article art where art.username = ?", username);
List<Article> list = find;
return list;
} public int queryUserAllCount(String username) {
List find = this.getHibernateTemplate().find("select count(*) from Article art where art.username = ?",username);
return ((Long)find.get(0)).intValue();
} public List<Article> queryByPage(final String username, final Page page) {
return this.getHibernateTemplate().executeFind(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query query = session.createQuery("select art from Article art where art.username = ?");
//设置参数
query.setParameter(0, username);
//设置每页显示多少个,设置多大结果。
query.setMaxResults(page.getEveryPage());
//设置起点
query.setFirstResult(page.getBeginIndex());
return query.list();
} });
} public List<Article> queryAllByPage(final Page page) {
return this.getHibernateTemplate().executeFind(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query query = session.createQuery("select art from Article art order by art.date desc");
//设置每页显示多少个,设置多大结果。
query.setMaxResults(page.getEveryPage());
//设置起点
query.setFirstResult(page.getBeginIndex());
return query.list();
} });
} public int queryAllCount() {
List find = this.getHibernateTemplate().find("select count(*) from Article art");
return ((Long)find.get(0)).intValue();
} public Article queryById(int id) {
List find = this.getHibernateTemplate().find("select art from Article art where art.id = ?", id);
return (Article) find.get(0);
} }

3.

 package com.sanqing.dao;

 import com.sanqing.po.BlogInfo;

 public interface BlogInfoDAO {
//设置个性化内容
public void save(BlogInfo info);
//获得
public BlogInfo get(String username);
}

4.

 package com.sanqing.dao;

 import java.util.List;

 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

 import com.sanqing.po.BlogInfo;

 public class BlogInfoDAOImpl extends HibernateDaoSupport implements BlogInfoDAO{

     public BlogInfo get(String username) {
List list = this.getHibernateTemplate().find("select bloginfo from BlogInfo bloginfo where bloginfo.username=?", username);
if(list.size() == 0) {
return null;
} else {
return (BlogInfo) list.get(0);
}
} public void save(BlogInfo info) {
this.getHibernateTemplate().saveOrUpdate(info);
} }

5.

 package com.sanqing.dao;

 import java.util.List;

 import com.sanqing.fenye.Page;
import com.sanqing.po.Critique; public interface CritiqueDAO {
//添加评论
public void addCritique(Critique critique); //获得指定文章的评论数
public int queryCritiqueCount(int AId); //根据Page来查询指定文章的评论
public List<Critique> queryByPage(int AId,Page page);
}

6.

 package com.sanqing.dao;

 import java.sql.SQLException;
import java.util.List; import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.sanqing.fenye.Page;
import com.sanqing.po.Critique; public class CritiqueDAOImpl extends HibernateDaoSupport implements CritiqueDAO { public void addCritique(Critique critique) {
this.getHibernateTemplate().save(critique);
} public List<Critique> queryByPage(final int AId, final Page page) {
return this.getHibernateTemplate().executeFind(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query query = session.createQuery("select cri from Critique cri where cri.AId = ?");
query.setParameter(0, AId);
//设置每页显示多少个,设置多大结果。
query.setMaxResults(page.getEveryPage());
//设置起点
query.setFirstResult(page.getBeginIndex());
return query.list();
} });
} public int queryCritiqueCount(int AId) {
List find = this.getHibernateTemplate().find("select count(*) from Critique cri where cri.AId = ?",AId);
return ((Long)find.get(0)).intValue();
} }

7.

 package com.sanqing.dao;

 import java.util.Date;
import java.util.List; import com.sanqing.po.Dianjiliang; public interface DianjiliangDAO { //返回该文章,该IP,该时间的访问记录
public List queryByAId(int AId,String IP,Date time); //添加访问记录
public void addJilu(Dianjiliang dianjiliang);
}

8.

 package com.sanqing.dao;

 import java.sql.SQLException;
import java.util.Date;
import java.util.List; import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.sanqing.po.Dianjiliang; public class DianjiliangDAOImpl extends HibernateDaoSupport implements
DianjiliangDAO { public void addJilu(Dianjiliang dianjiliang) {
this.getHibernateTemplate().save(dianjiliang);
} public List queryByAId(final int AId, final String IP, final Date time) {
return this.getHibernateTemplate().executeFind(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query query = session.createQuery("select djl from Dianjiliang djl where djl.AId = ? and djl.ip = ? and djl.time = ?");
//设置参数
query.setParameter(0, AId);
query.setParameter(1, IP);
query.setParameter(2, time);
return query.list();
} });
} }

9.

 package com.sanqing.dao;

 import java.util.List;

 import com.sanqing.po.User;

 public interface UserDAO {
//添加用户
public void add(User user); //删除用户
public void delete(User user); //更新用户
public void update(User user); //查询所有用户
public List queryAll(); //按id查询用户
public User queryByID(String username);
}

10.

 package com.sanqing.dao;

 import java.util.List;

 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

 import com.sanqing.po.User;

 public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {

     public void add(User user) {
this.getHibernateTemplate().save(user);
} public void delete(User user) { } public List queryAll() {
return null;
} public User queryByID(String username) {
List list = this.getHibernateTemplate().find("select user from User user where user.username = '" + username + "'"); if(list.size() == 0) {
return null;
} else {
return (User)list.get(0);
}
} public void update(User user) { } }

最新文章

  1. web项目总结——通过jsp+servlet实现对oracle的增删改查功能
  2. Html技巧 语义化你的代码
  3. Flex Builder读书笔记(一)
  4. linux增加根分区大小
  5. hive搭建配置
  6. 佛山Uber优步司机奖励政策(2月1日~2月7日)
  7. VS快捷方式小技巧
  8. PICC国际标准ISO14443下载
  9. Struts2-2.了解struts.xml的查找顺序
  10. [BZOJ1002] [FJOI2007] 轮状病毒 (数学)
  11. apache-jmeter-3.3的简单压力测试使用方法
  12. JDK源码分析(12)之 ConcurrentHashMap 详解
  13. PHP 无限极分类下拉列表实现
  14. Ubuntu 远程使用ssh 开启服务器终端的方法
  15. 《mysql必知必会》学习_第17章_20180807_欢
  16. 【逆向工具】IDA使用3-全局变量、数组、结构体
  17. 面试题:编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 &quot;&quot;。(c++实现)
  18. 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe
  19. 获取select值及判断是否是数字
  20. NetBeans 启动时出现 Invalid jdkhome specified提示

热门文章

  1. Pintos修改优先级捐赠、嵌套捐赠、锁的获得与释放、信号量及PV操作
  2. 格式化输出[parts/iomanip]
  3. 四则运算2+psp0级表格
  4. java基础学习之对象转型
  5. shell中的比较语句
  6. 4.C#基础篇--&gt;变量
  7. Codeforces Round #353 (Div. 2) C Money Transfers
  8. Ext通过后台校验字段是否重复
  9. MyEclipse 关闭拼写检查、JavaScript的检查Build、xml、JSP的Bulid检查
  10. 03.Hibernate一对多关联