⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 storageaction.java

📁 tbuy1.1.5是在netbeans环境下用JSF技术编写的一个论坛tbuy1.1.5是在netbeans环境下用JSF技术编写的一个论坛
💻 JAVA
字号:
/* * 作者: 胡李青 * qq: 31703299 * Copyright (c) 2007 huliqing * 主页 http://www.tbuy.biz/ * 你可以免费使用该软件,未经许可请勿作用于任何商业目的,如有技术问题请与本人联系! */package biz.tbuy.bbs;import biz.tbuy.bbs.bean.BaseBean;import biz.tbuy.common.logs.Elog;import biz.tbuy.common.pool.ProxyConn;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;/** * @author huliqing * <p><b>qq:</b>31703299 * <p><b>E-mail:</b> * <a href="mailto:huliqing.cn@gmail.com">huliqing.cn@gmail.com</a> * <p><b>Homepage:</b> * <a href="http://www.tbuy.biz/">http://www.tbuy.biz/</a> */public class StorageAction extends BaseBean{        public StorageAction() {}        /**     * 添加Storage进数据库     * @param storage 需要被添加进数据库的StorageModel     * @return true 如果添加成功, 否则false;     */     public static boolean addStorage(StorageModel storage) {        boolean isOk = false;        String sql = "insert into storage (" +                "s_byTopic, " +                "s_title, " +                "s_byUser, " +                "s_beRevoke) " +                "values (?, ?, ?, ?)";        ProxyConn myConn = getConn();        try {            PreparedStatement ps = myConn.prepareStatement(sql);            ps.setInt(1, storage.getByTopic());            ps.setString(2, storage.getTitle());            ps.setString(3, storage.getByUser());            ps.setBoolean(4, storage.getBeRevoke());            isOk = ps.executeUpdate() > 0;        } catch (SQLException sqle) {            Elog.log("StorageAction:addStorage:" + sqle.getMessage());        } finally {            myConn.close();        }        return isOk;    }    /**     * 获取特定用户的文章收藏列表,主要用于分页     * @param userId 用户的id     * @param startRow 开始行     * @param pageSize 要搜索的最多条数     * @return storages StorageModel的ArrayList集合     */    public static List<StorageModel> getStoragesByUser(String userId, int startRow, int pageSize) {        List<StorageModel> storages = new ArrayList<StorageModel>();        String sql = "select * from storage where s_byUser=? " +                "order by s_num desc " +                "limit ?, ?";        ProxyConn myConn = getConn();        try {            PreparedStatement ps = myConn.prepareStatement(sql);            ps.setString(1, userId);            ps.setInt(2, startRow);            ps.setInt(3, pageSize);            ResultSet rs = ps.executeQuery();            while (rs.next()) {                storages.add(getStorage(rs));            }        } catch (SQLException sqle) {            Elog.log("StorageAction:getStoragesByUser:" + sqle.getMessage());        } finally {            myConn.close();        }        return storages;    }    /**     * 获取特定用户的收藏列表的条数     * @param userId 收藏者的id     * @return total 该收藏者收藏的总记录数,没有则返回0     */     public static int getTotalByUser(String userId) {        int total = 0;        String sql = "select * from storage where s_byUser=?";        ProxyConn myConn = getConn();        try {            PreparedStatement ps = myConn.prepareStatement(sql);            ps.setString(1, userId);            ResultSet rs = ps.executeQuery();            rs.last();            total = rs.getRow();        } catch (SQLException sqle) {            Elog.log("StorageAction:getTotalByUser:" + sqle.getMessage());        } finally {            myConn.close();        }        return total;    }        /**     * 判断特定用户是否已经收藏了主题     * @param id 被收藏的主题的id     * @param byUser 收藏者的id     * @return true 如果该用户已经收藏了该主题,否则false     */     public static boolean isExistStorage(int id, String byUser) {        boolean exist = false;        String sql = "select * from storage where s_byUser=? and s_byTopic=?";        ProxyConn myConn = getConn();        try {            PreparedStatement ps = myConn.prepareStatement(sql);            ps.setString(1, byUser);            ps.setInt(2, id);            exist = ps.executeQuery().next();        } catch (SQLException sqle) {            Elog.log("SQLException:StorageAction:isExistStorage:" + sqle.getMessage());        } finally {            myConn.close();        }        return exist;    }    /**     * 通过StorageModel的id 删除该Storage,该方法将彻底删除该收藏信息     * @param id StorageModel的id(即s_num)     * @return true 如果删除成功, 否则false;     */     public static boolean deleteStorage(int id) {        boolean isOk = false;        String sql = "delete from storage where s_num=?";        ProxyConn myConn = getConn();        try {            PreparedStatement ps = myConn.prepareStatement(sql);            ps.setInt(1, id);            isOk = ps.executeUpdate() > 0;        } catch (SQLException sqle) {            Elog.log("SQLException:StorageAction:deleteStorage:" + sqle.getMessage());        } finally {            myConn.close();        }        return isOk;    }        /**     * 同时删除多个StorageModel,彻底除出数据库     * @param storages StorageModel的ArrayList集合     */     public static void deleteStorages(List<StorageModel> storages) {        String sql = "delete from storage where s_num=?";        ProxyConn myConn = getConn();        try {            PreparedStatement ps = myConn.prepareStatement(sql);            for (StorageModel storage : storages) {                ps.setInt(1, storage.getNum());                ps.executeUpdate();            }        } catch (SQLException sqle) {            Elog.log("SQLException:StorageAction:deleteStorages:" + sqle.getMessage());        } finally {            myConn.close();        }    }        /**     * 通过ResultSet获得StorageModel     * @param rs     * @return storage     */     public static StorageModel getStorage(ResultSet rs) {        StorageModel storage = new StorageModel();        try {            storage.setBeRevoke(rs.getBoolean("s_beRevoke"));            storage.setByTopic(rs.getInt("s_byTopic"));            storage.setByUser(rs.getString("s_byUser"));            storage.setNum(rs.getInt("s_num"));            storage.setTitle(rs.getString("s_title"));        } catch (Exception e) {            Elog.log("Exception:StorageAction:getStorage:" + e.getMessage());        }        return storage;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -