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

📄 jahiasitespersistance.java

📁 java 写的一个新闻发布系统
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
            } else {                sqlQuery.append(0);            }            sqlQuery.append(",");            sqlQuery.append(site.getAclID());            sqlQuery.append(",'");            sqlQuery.append(JahiaTools.quote(site.getDescr()));            sqlQuery.append("')");            executeQueryNoResultSet(sqlQuery.toString());            JahiaConsole.println("JahiaSitesPersistance.dbAddSite", sqlQuery.toString());            site.setID(id);        } catch (JahiaException je) {            String errorMsg = "Error in dbAddSite(JahiaSite site) : " + je.getMessage();            JahiaConsole.println( "JahiaSitesPersistance", errorMsg + " -> BAILING OUT" );            throw new JahiaException(   "Cannot add site in the database",                                        errorMsg, JahiaException.DATABASE_ERROR, JahiaException.CRITICAL );        }    }    //--------------------------------------------------------------------------    /**     * remove a site     *     * @param int the site id     */    public void dbRemoveSite( int id ) throws JahiaException{        try {            String sqlQuery = "DELETE FROM jahia_sites WHERE id_jahia_sites=" + id;            executeQueryNoResultSet(sqlQuery);        } catch (JahiaException je) {            String errorMsg = "Error in dbRemoveSite(int id) : " + je.getMessage();            JahiaConsole.println( "JahiaSitesPersistance", errorMsg + " -> BAILING OUT" );            throw new JahiaException(   "Cannot remove site in the database",                                        errorMsg, JahiaException.DATABASE_ERROR, JahiaException.CRITICAL );        }    }    //--------------------------------------------------------------------------    /**     * Update a JahiaSite definition     *     * @param JahiaSite the site bean object     */    public void dbUpdateSite( JahiaSite site ) throws JahiaException {        try {            StringBuffer sqlQuery = new StringBuffer("UPDATE jahia_sites SET ");            sqlQuery.append("id_jahia_sites=");            sqlQuery.append(site.getID());            sqlQuery.append(", title_jahia_sites='");            sqlQuery.append(JahiaTools.quote(site.getTitle()));            sqlQuery.append("', servername_jahia_sites='");            sqlQuery.append(JahiaTools.quote(site.getServerName()));            sqlQuery.append("', key_jahia_sites='");            sqlQuery.append(JahiaTools.quote(site.getSiteKey()));            sqlQuery.append("', active_jahia_sites=");            if ( site.isActive() ){                sqlQuery.append(1);            } else {                sqlQuery.append(0);            }            sqlQuery.append(", defaultpageid_jahia_sites=");            sqlQuery.append(site.getHomePageID());            sqlQuery.append(", defaulttemplateid_jahia_sites=");            sqlQuery.append(site.getDefaultTemplateID());            sqlQuery.append(", tpl_deploymode_jahia_sites=");            if ( site.getTemplatesAutoDeployMode() ){                sqlQuery.append(1);            } else {                sqlQuery.append(0);            }            sqlQuery.append(", webapps_deploymode_jahia_sites=");            if ( site.getWebAppsAutoDeployMode() ){                sqlQuery.append(1);            } else {                sqlQuery.append(0);            }            sqlQuery.append(", rights_jahia_sites=");            sqlQuery.append(site.getAclID());            sqlQuery.append(", descr_jahia_sites='");            sqlQuery.append(JahiaTools.quote(site.getDescr()));            sqlQuery.append("' where id_jahia_sites=");            sqlQuery.append(site.getID());            executeQueryNoResultSet(sqlQuery.toString());        } catch (JahiaException je) {            String errorMsg = "Error in dbUpdateSite( JahiaSite site ) : " + je.getMessage();            JahiaConsole.println( "JahiaSitesPersistance", errorMsg + " -> BAILING OUT" );            throw new JahiaException(   "Cannot update site in the database",                                        errorMsg, JahiaException.DATABASE_ERROR, JahiaException.CRITICAL );        }    }    //--------------------------------------------------------------------------    /**     * Build a JahiaSite bean from a result set     *     * @return JahiaSite the site bean     */    protected JahiaSite getJahiaSiteFromResultSet(ResultSet rs) throws JahiaException {        JahiaSite site 	= null;        if ( rs != null ){            int id 					= 0;            String title 			= "";            String serverName 		= "";            String siteKey			= "";            boolean isActive 		= false;            int defaultPageID 		= -1;            int defaultTemplateID 	= -1;            boolean templatesAutoDeployMode = true;            boolean webAppsAutoDeployMode = true;            String descr 			= "";            int aclID				= 0;            try {                id 						= rs.getInt("id_jahia_sites");                title 					= rs.getString("title_jahia_sites");                serverName 				= rs.getString("servername_jahia_sites");                siteKey					= rs.getString("key_jahia_sites");                isActive 				= (rs.getInt("active_jahia_sites")==1);                defaultPageID 			= rs.getInt("defaultpageid_jahia_sites");                defaultTemplateID 		= rs.getInt("defaulttemplateid_jahia_sites");                templatesAutoDeployMode	= (rs.getInt("tpl_deploymode_jahia_sites")==1);                webAppsAutoDeployMode	= (rs.getInt("webapps_deploymode_jahia_sites")==1);                aclID 					= rs.getInt("rights_jahia_sites");                descr 					= rs.getString("descr_jahia_sites");            }catch ( SQLException se ){                String errorMsg = "Error in getJahiaSiteFromResultSet(rs) : " + se.getMessage();                JahiaConsole.println( "JahiaSitesPersistance", errorMsg + " -> BAILING OUT" );                throw new JahiaException(   "Cannot read data from resultset",                                        errorMsg, JahiaException.DATABASE_ERROR, JahiaException.CRITICAL );            }            JahiaBaseACL acl = null;            try {                acl = new JahiaBaseACL();                acl.load(aclID);            } catch ( JahiaException je ){                String errorMsg = "Error site acl not found : " + je.getMessage();                JahiaConsole.println( "JahiaSitesPersistance.getSiteFromResultset", errorMsg);                acl = null;            }            site = new JahiaSite(                                    id,                                    title,                                    serverName,                                    siteKey,                                    isActive,                                    defaultPageID,                                    descr,                                    acl,                                    null                                );            site.setDefaultTemplateID(defaultTemplateID);            site.setTemplatesAutoDeployMode(templatesAutoDeployMode);            site.setWebAppsAutoDeployMode(webAppsAutoDeployMode);        }        return site;    }    //--------------------------------------------------------------------------    /**     * generate the order sql condition     *     */    private String getOrderCond (int orderType){        // default order        String orderCond = " ORDER BY title_jahia_sites ";        switch (orderType) {            case ORDER_BY_SERVER_NAME :                orderCond = " ORDER BY servername_jahia_sites ";                break;        }        return orderCond;    }    //-------------------------------------------------------------------------    // FH   2 May 2001    /** Return the amount of sites in the database.     *     * @return     *      The amount of sites.     */    public synchronized int getNbSites ()        throws  JahiaDatabaseException    {        int counter = -1;        Connection dbConn = getDBConnection ();        if (dbConn != null)        {            StringBuffer query = new StringBuffer ();            Statement statement = null;            try {                query.append("SELECT COUNT(");                query.append(FIELD_KEY_SITES);                query.append(") as nbItems FROM ");                query.append(JAHIA_SITES);                statement = dbConn.createStatement();                if (statement != null) {                    ResultSet rs = ServicesRegistry.getInstance().getDBPoolService().executeQuery (statement,query.toString());                    if (rs != null) {                        if (rs.next()) {                            counter = rs.getInt ("nbItems");                        }                    }                    rs = null;                }            }            catch (SQLException ex) {                throw new JahiaDatabaseException ("Database error.", ex,                    JahiaDatabaseException.ERROR);            }            finally {                query = null;                closeDBConnection (dbConn);                closeStatement (statement);            }        }        return counter;    }    //--------------------------------------------------------------------------    /**     * Returns a properties as a String.     *     * @param int siteid     * @param String the property name     */    String getProperty( int siteID , String key )    throws JahiaException {        Connection dbConn = null;        Statement statement = null;        String value = null;        if ( (key == null) || (key.trim().equals("")) )            return null;        try {            StringBuffer buff =            new StringBuffer("SELECT value_jahia_site_prop FROM jahia_site_prop WHERE id_jahia_site=");            buff.append(siteID);            buff.append(" AND name_jahia_site_prop='");            buff.append(JahiaTools.quote(key));            buff.append("'");            dbConn = getDBConnection();            statement = dbConn.createStatement();            if (statement != null) {                ResultSet rs = ServicesRegistry.getInstance().getDBPoolService().executeQuery( statement,buff.toString() );                if (rs != null) {                    if ( rs.next() ){                        value = rs.getString("value_jahia_site_prop");                    }                }            }        } catch (SQLException se) {            JahiaConsole.println( CLASS_NAME+".getProperty(siteID,key)", se.getMessage() );            throw new JahiaException( CLASS_NAME+".getProperty(siteID,key)",                                      "Cannot load site's prop from the database"                                      + se.getMessage(),                                      JahiaException.DATABASE_ERROR,                                      JahiaException.CRITICAL );        } finally {            closeDBConnection (dbConn);            closeStatement (statement);        }        return value;

⌨️ 快捷键说明

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