亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? elantopicdaoimpl.java

?? struts+hibernate BBS mysql數據庫 功能基本齊全
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package com.elan.forum.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import com.elan.db.ElHbnDB;
import com.elan.forum.dao.TopicDAO;
import com.elan.forum.model.ForumTopic;
import com.elan.forum.model.Forumpiece;
import com.elan.forum.model.Forumtopicreply;
import com.elan.forum.model.Forumtopictype;
import com.elan.forum.model.Forummodule;
import com.elan.forum.model.view.Forumnewtopic;
import com.elan.forum.util.Constents;

public class ElanTopicDAOImpl implements TopicDAO {
	private static ElanTopicDAOImpl elanTopicDAOImpl = null;

	private ElanTopicDAOImpl() {
	}

	static {
		elanTopicDAOImpl = new ElanTopicDAOImpl();
	}

	public static ElanTopicDAOImpl newInstance() {
		return elanTopicDAOImpl;
	}

	public int addForumtopic(ForumTopic forumtopic) {
		return 0;
	}

	public int deleteForumtopic(int id) {
		return 0;
	}

	public int deleteForumtopic(ForumTopic forumtopic) {
		return 0;
	}

	public List<ForumTopic> getAllTopic() {
		List<ForumTopic> aList = null;
		Session session = ElHbnDB.getSession();
		Query query = session.createQuery("from Forumtopic");
		aList = query.list();
		return aList;
	}

	public int modifyForumtopic(int id) {
		// TODO Auto-generated method stub
		return 0;
	}

	public int modifyForumtopic(ForumTopic forumtopic) {
		// TODO Auto-generated method stub
		return 0;
	}

	public ForumTopic findForumtopic(int id) {
		// TODO Auto-generated method stub
		return null;
	}

	/*
	 * 發表新文章 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#postTopic(com.elan.forum.model.Forumtopic)
	 */
	public int postTopic(ForumTopic topic) {
		Session session = ElHbnDB.getSession();
		session.save(topic);
		session.flush();
		return Constents.CURRENT_OPERATION_SUCCESS;
	}

	public Object[] getTopicById(int id) {
		Session session = ElHbnDB.getSession();
		Query query = session
				.createQuery("select id, title, text, createTime, click, reply, topicType, moduleId, moduleName, pieceId, pieceName, author from Forumtopic where id = "
						+ id);
		return (Object[]) query.list().get(0);
	}

	public List<Forumtopictype> getAllTopicType() {
		Session session = ElHbnDB.getSession();
		Query query = session.createQuery("from Forumtopictype");
		return query.list();
	}

	public List<Forummodule> getForumModule() {
		Session session = ElHbnDB.getSession();
		String sql = "from Forummodule";
		Query query = session.createQuery(sql);
		return query.list();
	}

	/*
	 * 獲取Module信息,方法內部自己處理事物,專門用于jsp 中直接調用 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#getForumModuleByTransaction()
	 */
	public List<Forummodule> getForumModuleByTransaction() {
		Session session = ElHbnDB.getSession();
		Transaction tx = session.beginTransaction();
		Query query;
		try {
			String sql = "from Forummodule";
			query = session.createQuery(sql);
			tx.commit();
		} catch (RuntimeException re) {
			// do something
			tx.rollback();
			return null;
		} finally {
			ElHbnDB.closeSession();
		}
		return query.list();
	}

	/*
	 * 獲取module文章,首頁不建議,因為他是返回很多個文章對象應該采用getForumnewtopic方法獲取 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#getForumModuleTopic(java.util.HashMap)
	 */
	@SuppressWarnings("unchecked")
	public HashMap getForumModuleTopic(HashMap fmaMap) {
		Session session = ElHbnDB.getSession();
		Transaction tx = session.beginTransaction();
		List<Forummodule> mlist;
		try {
			String msql = "from Forummodule";
			String asql = "from Forummodule where id = ?";
			mlist = session.createQuery(msql).list();// m list
			for (int m = 0; m < mlist.size(); m++) {
				for (int i = 0; i < mlist.size(); i++) {
					Query query = session.createQuery(asql);
					query.setParameter(0, ((Forummodule) mlist.get(i)).getId());
					fmaMap.put(((Forummodule) mlist.get(m)).getName(), query
							.list());
				}
			}
		} catch (RuntimeException re) {
			// do something
			tx.rollback();
		} finally {
			ElHbnDB.closeSession();
		}
		return fmaMap;
	}

	/*
	 * 獲取mudule文章,只返回最新發表的文章 (non-Javadoc) 這里自己處理事物
	 * 
	 * @see com.elan.forum.dao.TopicDAO#getForumnewtopic()
	 */
	@SuppressWarnings("unchecked")
	public List<Forumnewtopic> getForumnewtopic() {
		Session session = ElHbnDB.getSession();
		Transaction tx = session.beginTransaction();
		try {
			String sql = "from Forumnewtopic";
			Query query = session.createQuery(sql);
			tx.commit();
			return query.list();
		} catch (RuntimeException re) {
			tx.rollback();
		} finally {
			ElHbnDB.closeSession();
		}
		return null;// error
	}

	public List<ForumTopic> findPiece(Integer pieceId) {
		List<ForumTopic> list = null;
		Session session = ElHbnDB.getSession();
		try {
			String hql = "from ForumTopic where pieceId = ?  and essence = 0 and top = 0 and locked = 0 order by id desc";
			Query query = session.createQuery(hql);
			query.setParameter(0, pieceId);
			list = query.list();
		} catch (RuntimeException re) {
			// to do
			re.printStackTrace();
		}
		return list;
	}

	public ForumTopic findPieceTopic(Integer topicId) {
		Session session = ElHbnDB.getSession();
		ForumTopic fa = null;
		try {
			String hql = "from ForumTopic where id = ? and locked = 0";
			Query query = session.createQuery(hql);
			query.setParameter(0, topicId);
			query.uniqueResult();
			fa = (ForumTopic) query.list().get(0);
			return fa;
		} catch (RuntimeException re) {
			re.printStackTrace();
		}
		return fa;
	}

	public List<Forumtopicreply> findTopicRegly(Integer topicId) {
		Session session = ElHbnDB.getSession();
		List<Forumtopicreply> list = null;
		try {
			String hql = "from Forumtopicreply where topicId = ? and locked = 0";
			Query query = session.createQuery(hql);
			query.setParameter(0, topicId);
			list = query.list();
			if (list == null) {
			}
			return list;
		} catch (RuntimeException re) {
			// to do
			re.printStackTrace();
		}
		return list;
	}

	/*
	 * 獲取最后回復的帖子 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#getLastTopicReplyById(java.lang.Integer)
	 */
	public Forumtopicreply getLastTopicReplyById(Integer topicReplyId) {
		Session session = ElHbnDB.getSession();
		List<Forumtopicreply> list = null;
		String hql = "select MAX(id) from Forumtopicreply where topicId = "
				+ topicReplyId + " and locked = 0";
		Integer id = (Integer) session.createQuery(hql).uniqueResult();
		Query query = session
				.createQuery("from Forumtopicreply where topicId = ? and id = ? and locked = 0");
		query.setParameter(0, topicReplyId);
		query.setParameter(1, id);
		list = (List<Forumtopicreply>) query.list();
		if (list.size() == 0) {
			return null;
		}
		return (Forumtopicreply) query.list().get(0);
	}

	/*
	 * 保存回復的帖子 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#replyTopic(com.elan.forum.model.Forumtopicreply)
	 */
	public boolean replyTopic(Forumtopicreply forumTopicReply) {
		Session session = ElHbnDB.getSession();
		try {
			session.save(forumTopicReply);
		} catch (RuntimeException re) {
			re.printStackTrace();
			return false;
		}
		return true;
	}

	/*
	 * 根據TopicReplyId查找回復帖子 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#findTopicReplyById(java.lang.Integer)
	 */

	public Forumtopicreply findTopicReplyById(Integer topicReplyId) {
		Session session = ElHbnDB.getSession();
		String hql = "from Forumtopicreply where id = ? and locked = 0";
		Query query = session.createQuery(hql);
		query.setParameter(0, topicReplyId);
		List<Forumtopicreply> list = query.list();
		if (list.size() > 0) {
			return list.get(0);
		}
		return null;
	}

	/**
	 * 獲取全部的piece 下面的topic
	 * 
	 * @param pieceId
	 * @return
	 */
	public List getForumTopicByPieceId(Integer pieceId) {
		List list = null;
		Session session = ElHbnDB.getSession();
		String hql = "from ForumTopic where pieceId = ? and locked = 0";
		Query query = session.createQuery(hql);
		return query.list();
	}

	/**
	 * 根據pageSize獲取page獲取list
	 * 
	 * @param page
	 * @param pageSize
	 * @param pieceId
	 * @return
	 */
	public List<Forumtopicreply> getForumTopicByPieceId(Integer page,
			Integer pageSize, Integer pieceId) {
		List<Forumtopicreply> list = null;
		Session session = ElHbnDB.getSession();
		String hql = "From ForumTopic where pieceId = ? and essence = 0 and top = 0 and locked = 0 order by id desc";
		Query query = session.createQuery(hql);
		query.setParameter(0, pieceId);
		query.setFirstResult((page - 1) * pageSize);
		query.setMaxResults(pageSize);
		return query.list();
	}

	/**
	 * 獲取哪個piece有新帖子,以天為單位來計數時間間隔 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#getForumPieceIsNew()
	 */
	public byte[] getForumPieceIsNew() {
		byte[] isNew = null;
		Session session = ElHbnDB.getSession();
		Transaction tx = session.beginTransaction();
		try {
			Query query = session.createQuery("from Forumpiece ");
			List list = query.list();
			if (list.size() > 0) {
				isNew = new byte[list.size()];
			}
			for (int i = 0; i < list.size(); i++) {
				// isNew[i] = ((Forumpiece) list.get(i)).getIsNewTopic()
				// .booleanValue() ? Byte.valueOf("0").byteValue() :
				// Byte.valueOf("1").byteValue();
				if (((Forumpiece) list.get(i)).getIsNewTopic().booleanValue()) {
					isNew[i] = 1;
				} else {
					isNew[i] = 0;
				}
			}
		} catch (RuntimeException re) {
			tx.rollback();
			re.printStackTrace();
		} finally {
			ElHbnDB.closeSession();
		}
		return isNew;
	}

	/**
	 * 獲取總Topic的記錄 (non-Javadoc)
	 * 
	 * @see com.elan.forum.dao.TopicDAO#getForumTopicCount()
	 */
	public Long getForumTopicCount() {
		Session session = ElHbnDB.getSession();
		String hql = "select Count(*) From ForumTopic and locked = 0";
		Long l = ((Long) session.createQuery(hql).uniqueResult());
		return l;
	}

	/**
	 * 獲取pieceId下面的topic數
	 * 
	 * @param pieceId
	 * @return Long
	 */
	public Long getForumPieceTopicCountById(Integer pieceId) {
		Session session = ElHbnDB.getSession();
		String hql = "select Count(*) From ForumTopic where pieceId = "
				+ pieceId + " and locked = 0";
		Long l = ((Long) session.createQuery(hql).uniqueResult());
		return l;
	}

	/**
	 * 獲取頁數
	 * 
	 * @param pageSize
	 * @return
	 */
	public Long getForumPieceTopicCountById(Long pageSize) {
		Long pageCount = new Long(0);
		Long topicCount = getForumTopicCount();
		if (topicCount % pageSize == 0) {
			pageCount = topicCount / pageSize;
		} else {
			pageCount = (topicCount / pageSize) + 1;
		}
		return pageCount;
	}

	/**
	 * @param topicId
	 * @return Boolean
	 */
	public Boolean isNewReply(Integer topicId) {
		Boolean isNew = Boolean.valueOf(false);
		Session session = ElHbnDB.getSession();
		Forumtopicreply ftr = getLastTopicReplyById(topicId);
		Calendar cld = Calendar.getInstance();
		int theDay = cld.get(Calendar.DATE);
		Timestamp topicReplyDay = ftr.getReplyTime();
		int topicDay = topicReplyDay.getDate();
		if (theDay == topicDay) {
			isNew = Boolean.valueOf(true);
		} else {
			isNew = Boolean.valueOf(false);
		}
		return isNew;
	}

	/**
	 * @param ..
	 * @param ..
	 * @param ..
	 *            (non-Javadoc)
	 * @see com.elan.forum.dao.TopicDAO#getForumPieceTopic(java.lang.Integer,
	 *      java.lang.Integer, java.lang.Integer)
	 */
	public Map getForumPieceTopic(Integer page, Integer pageSize,
			Integer pieceId) {
		Map map = new HashMap();
		// 設置piece下面的topicCount
		Long topicCount = this.getForumPieceTopicCountById(pieceId);
		Long pageCount = new Long(0);
		map.put("topicCount", topicCount);

		if (0 == topicCount % pageSize) {
			pageCount = topicCount / pageSize;
		} else {
			pageCount = topicCount / pageSize + 1;
		}
		if (page > pageCount) {
			page = pageCount.intValue();
		}
		// 設置pageCount
		map.put("page", page);
		map.put("pageCount", pageCount);
		// 設置piece下面的topic
		List list = this.getForumTopicByPieceId(page, pageSize, pieceId);
		map.put("list", list);
		// 設置是否有新的回復
		Boolean[] isNewReplyArray = new Boolean[list.size()];
		for (int i = 0; i < list.size(); i++) {
			ForumTopic ft = (ForumTopic) list.get(i);
			Forumtopicreply ftr = getLastTopicReplyById(ft.getId());
			if (ftr != null) {
				isNewReplyArray[i] = isNewReply(ftr.getTopicId());
			} else {
				isNewReplyArray[i] = false;
			}

		}
		map.put("isNewReplyArray", isNewReplyArray);
		return map;
	}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久人人超碰精品| 国内精品不卡在线| 日韩视频一区二区在线观看| 老司机精品视频一区二区三区| 精品免费一区二区三区| 热久久免费视频| 国产欧美日韩不卡免费| 99久久婷婷国产| 久久国产精品色婷婷| 日日噜噜夜夜狠狠视频欧美人| 色偷偷成人一区二区三区91 | 4438成人网| 欧美色图在线观看| 国产最新精品免费| 中文字幕一区二区三区在线不卡| 欧美久久一二区| 99久久国产综合精品色伊| 亚洲欧美一区二区三区孕妇| 2023国产精品| 欧美色偷偷大香| 9i看片成人免费高清| 国产欧美一区二区三区网站 | 亚洲欧美色一区| 亚洲欧洲精品天堂一级| 国产日产欧美一区| 亚洲精品国久久99热| 麻豆国产91在线播放| 国产精品1024| 欧美一区二区观看视频| 欧美日韩中文字幕一区| 久久蜜桃av一区二区天堂| 亚洲人xxxx| 精品亚洲免费视频| 91欧美激情一区二区三区成人| 欧美日韩在线三区| 国产精品美女久久久久久2018| 一级特黄大欧美久久久| 久久er精品视频| 欧美日韩黄视频| 久久亚洲二区三区| 久久免费美女视频| 精品国产区一区| 中文子幕无线码一区tr| 亚洲激情六月丁香| 日韩二区三区四区| 99久久精品免费| 日韩一区二区三区免费看 | 日韩一区二区三区在线视频| 中文字幕欧美日本乱码一线二线 | 亚洲男人天堂一区| 免费成人在线观看视频| 色丁香久综合在线久综合在线观看| 久久影院电视剧免费观看| 蜜桃av一区二区三区电影| 日韩三级电影网址| 日韩高清在线观看| 成人高清在线视频| 久久久久久久综合狠狠综合| 亚洲综合色视频| 日本精品一区二区三区四区的功能| 精品国一区二区三区| 日本欧美久久久久免费播放网| 成人app软件下载大全免费| 国产亚洲精品超碰| 精品亚洲aⅴ乱码一区二区三区| 欧美日韩国产综合视频在线观看| 国产精品家庭影院| 成人在线综合网站| 欧美经典三级视频一区二区三区| 精品一区二区三区香蕉蜜桃 | 日本福利一区二区| 日韩一区在线免费观看| 色伊人久久综合中文字幕| 中文字幕日韩欧美一区二区三区| 高清国产一区二区| 精品国产一区二区三区四区四 | 99久久精品免费看国产免费软件| 国产亚洲成av人在线观看导航 | 国产精品日韩成人| 91网站最新地址| 亚洲曰韩产成在线| 欧美精品日日鲁夜夜添| 久久精品99国产精品| 久久久久久久久久电影| 北岛玲一区二区三区四区| 日韩一区在线免费观看| 欧美日韩另类国产亚洲欧美一级| 亚洲午夜电影网| www国产精品av| 欧美艳星brazzers| 精品在线视频一区| 自拍偷拍国产精品| 欧美精品 国产精品| 国产乱一区二区| 亚洲在线观看免费视频| 久久这里只有精品视频网| av综合在线播放| 看片的网站亚洲| 亚洲欧美偷拍三级| 精品播放一区二区| 精品国产3级a| 一本在线高清不卡dvd| 免费成人在线网站| 亚洲国产三级在线| 国产精品人人做人人爽人人添| 在线日韩一区二区| 成人免费黄色在线| 日本美女视频一区二区| 中文字幕亚洲在| 欧美国产一区视频在线观看| 欧美一级黄色录像| 欧美日韩成人激情| av成人老司机| 国产a视频精品免费观看| 天堂va蜜桃一区二区三区| 亚洲女子a中天字幕| 欧美国产欧美综合| 精品福利在线导航| 欧美成人午夜电影| 精品国产一区二区三区四区四| 欧美精品 国产精品| 欧美丰满一区二区免费视频| 在线观看免费亚洲| 欧美日韩精品一区二区| 欧美三级电影在线看| 欧美男生操女生| 在线成人av影院| 欧美刺激午夜性久久久久久久| 91精品视频网| 精品sm捆绑视频| 国产亚洲综合性久久久影院| **性色生活片久久毛片| 久久久久久久久久美女| 国产精品女同互慰在线看| 亚洲视频在线一区| 精品少妇一区二区三区日产乱码| 色哟哟国产精品| 欧美一级片在线看| 欧美成人vps| 国产精品视频第一区| 欧美精品xxxxbbbb| 日韩一区二区不卡| www一区二区| 欧美人狂配大交3d怪物一区| 99热精品一区二区| 国内成人免费视频| 国产麻豆9l精品三级站| 久久国产免费看| 在线观看免费一区| 偷偷要91色婷婷| 久久久精品国产免费观看同学| 国产真实精品久久二三区| 欧美极品aⅴ影院| 欧美美女视频在线观看| 美女诱惑一区二区| 91麻豆精品国产91久久久使用方法 | 在线看日韩精品电影| 欧美mv和日韩mv的网站| 亚洲一区自拍偷拍| 国产乱人伦偷精品视频不卡| 丁香亚洲综合激情啪啪综合| 日本道色综合久久| 日韩精品一区二区三区视频在线观看 | 亚洲精品乱码久久久久久 | 中文字幕日本乱码精品影院| 麻豆国产欧美一区二区三区| 成人av网在线| 国产精品久久777777| 日韩电影免费在线观看网站| 91女神在线视频| 中文字幕一区二区三区av| 国产一区二区免费看| 精品久久99ma| 成人国产精品视频| 一区二区三区四区国产精品| 欧美久久久久久蜜桃| 久久国产尿小便嘘嘘| 91官网在线免费观看| 国产午夜精品一区二区三区四区 | 亚洲人妖av一区二区| 在线免费观看日本欧美| 国精产品一区一区三区mba桃花| 欧美极品xxx| 国产成人激情av| 久久综合一区二区| 国产在线观看一区二区| 国产亚洲人成网站| 日本电影欧美片| 色天使久久综合网天天| 波多野结衣亚洲| 国产精品99久久久| 日韩国产欧美一区二区三区| 中文无字幕一区二区三区| 国产麻豆精品theporn| 日韩美女视频在线| 国产成人亚洲精品青草天美| 国产精品免费久久久久| 91色在线porny| 日韩激情一区二区| 久久网站最新地址|