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

📄 configoper.java

📁 tbuy1.1.5是在netbeans环境下用JSF技术编写的一个论坛tbuy1.1.5是在netbeans环境下用JSF技术编写的一个论坛
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* * 作者: 胡李青 * qq: 31703299 * Copyright (c) 2007 huliqing * 主页 http://www.tbuy.biz/ * 你可以免费使用该软件,未经许可请勿作用于任何商业目的,如有技术问题请与本人联系! * * 用于操作全局的appConfig.xml文件 */package biz.tbuy.common;import biz.tbuy.common.logs.Elog;import biz.tbuy.share.XmlOper;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.NodeList;import org.w3c.dom.Text;/** * @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 ConfigOper {        public ConfigOper() {}        /***************************************************************************     * 关于系统全局“开关”信息的装载, 全局的配置信息包括以下各项:<br>     * displays.get("register") <br>     * displays.get("login") <br>     * displays.get("emailRegister") <br>     * displays.get("validateRegister") <br>     * displays.get("validateLogin") <br>     * displays.get("upload") <br>     * @return displays     **************************************************************************/    public Map<String, Boolean> loadDisplay() {        Map<String, Boolean> displays = new HashMap<String, Boolean>(6);        try {            Document doc = XmlOper.getDocument(getAppConfig());            Element root = doc.getDocumentElement();            Element display = (Element) root.                    getElementsByTagName("display").item(0);            Boolean register = Boolean.valueOf(display.                    getElementsByTagName("register").item(0).getTextContent().trim());            Boolean login = Boolean.valueOf(display.                    getElementsByTagName("login").item(0).getTextContent().trim());            Boolean emailRegister = Boolean.valueOf(display.                    getElementsByTagName("email-register").item(0).getTextContent().trim());            Boolean validateRegister = Boolean.valueOf(display.                    getElementsByTagName("validate-register").item(0).getTextContent().trim());            Boolean validateLogin = Boolean.valueOf(display.                    getElementsByTagName("validate-login").item(0).getTextContent().trim());            Boolean upload = Boolean.valueOf(display.                    getElementsByTagName("upload").item(0).getTextContent().trim());            displays.put("register", register);            displays.put("login", login);            displays.put("emailRegister", emailRegister);            displays.put("validateRegister", validateRegister);            displays.put("validateLogin", validateLogin);            displays.put("upload", upload);        } catch (Exception e) {            Elog.log("Exception:ConfigOper:loadDisplay:" + e.getMessage());        }        return displays;    }        /**     * 更新系统全局“开关”信息!参数displays的keys应该是这些<br>     * register|login|emailRegister|     * validateRegister|validateLogin|upload     * @param displays Map类型     */     public void updateDisplay(Map<String, Boolean> displays) {        Boolean register = displays.get("register");        Boolean login = displays.get("login");        Boolean emailRegister = displays.get("emailRegister");        Boolean validateRegister = displays.get("validateRegister");        Boolean validateLogin = displays.get("validateLogin");        Boolean upload = displays.get("upload");        try {            Document doc = XmlOper.getDocument(getAppConfig());            Element root = doc.getDocumentElement();            Element dis = (Element)root.getElementsByTagName("display").item(0);            if (register != null) dis.getElementsByTagName("register").                    item(0).setTextContent(String.valueOf(register));            if (login != null) dis.getElementsByTagName("login").                    item(0).setTextContent(String.valueOf(login));            if (emailRegister != null) dis.getElementsByTagName("email-register").                    item(0).setTextContent(String.valueOf(emailRegister));            if (validateRegister != null) dis.getElementsByTagName("validate-register").                    item(0).setTextContent(String.valueOf(validateRegister));            if (validateLogin != null) dis.getElementsByTagName("validate-login").                    item(0).setTextContent(String.valueOf(validateLogin));            if (upload != null) dis.getElementsByTagName("upload").                    item(0).setTextContent(String.valueOf(upload));            XmlOper.saveDocument(doc, getAppConfig());        } catch (Exception e) {            Elog.log("Exception:ConfigOper:updateDisplay:" + e.getMessage());        }    }        /**************************************************************************     * 关于Email邮件功能配置初始化的初始化<br>     * 载入email的配置信息,当开启emailRegister时,会在用户注册完id后发送一封帐号     * 激活邮件至用户所指定的邮箱中,只有用户点击该激活链接,帐号才能正式开启使用!     * 如果系统关闭了emailRegister,那么用户在未激活的情况下也可登录,同时id自动激活!     * 注意:该配置同时影响用户的密码取回功能,密码的取回需要邮件功能!     * 获取Email的配置信息,包含各项以下属性信息<br>     * .serverType -> email服务器类型,如:pop3<br>     * .serverSend -> 如:smtp.gmail.com<br>     * .serverReceive -> 如:pop.gmail.com<br>     * .portSmtp -> smtp端口,默认为:25<br>     * .portPop -> pop端口,默认:110<br>     * .isSSLSmtp -> 是否需要安全连接(smtp)默认:false<br>     * .isSSLPop -> 是否需要安全连接(pop)默认:false<br>     * .portSSLSmtp -> smtp安全连接端口,默认:465<br>     * .portSSLPop -> pop安全连接端口,默认:995<br>     * .address -> 完整的电子邮件地址:<br>     * .user -> 连接服务器时的用户名:<br>     * .password -> 连接服务器时的密码:<br>     * @return emailConfig     **************************************************************************/    public Map<String, String> loadEmailConfig() {        Map<String, String> emailConfig = new HashMap<String, String>(12);        try {            Document doc = XmlOper.getDocument(getAppConfig());            Element root = doc.getDocumentElement();            Element email = (Element) root.getElementsByTagName("email-config").                    item(0);            String serverType = email.getElementsByTagName("server-type").                    item(0).getTextContent().trim();            String serverSend = email.getElementsByTagName("server-send").                    item(0).getTextContent().trim();            String serverReceive = email.getElementsByTagName("server-receive").                    item(0).getTextContent().trim();            String portSmtp = email.getElementsByTagName("port-smtp").                    item(0).getTextContent().trim();            String portPop = email.getElementsByTagName("port-pop").                    item(0).getTextContent().trim();            String isSSLSmtp = email.getElementsByTagName("is-ssl-smtp").                    item(0).getTextContent().trim();            String isSSLPop = email.getElementsByTagName("is-ssl-pop").                    item(0).getTextContent().trim();            String portSSLSmtp = email.getElementsByTagName("port-ssl-smtp").                    item(0).getTextContent().trim();            String portSSLPop = email.getElementsByTagName("port-ssl-pop").                    item(0).getTextContent().trim();            String address = email.getElementsByTagName("address").                    item(0).getTextContent().trim();            String user = email.getElementsByTagName("user").                    item(0).getTextContent().trim();            String password = email.getElementsByTagName("password").                    item(0).getTextContent().trim();            emailConfig.put("serverType", serverType);            emailConfig.put("serverSend", serverSend);            emailConfig.put("serverReceive", serverReceive);            emailConfig.put("portSmtp", portSmtp);            emailConfig.put("portPop", portPop);            emailConfig.put("isSSLSmtp", isSSLSmtp);            emailConfig.put("isSSLPop", isSSLPop);            emailConfig.put("portSSLSmtp", portSSLSmtp);            emailConfig.put("portSSLPop", portSSLPop);            emailConfig.put("address", address);            emailConfig.put("user", user);            emailConfig.put("password", password);        } catch (Exception e) {            Elog.log("Exception:ConfigOper:loadEmailConfig:" + e.getMessage());        }        return emailConfig;    }        /**     * 更新email配置信息,configs keys像以下这样:<br>     * serverType|serverSend|serverReceive|portSmtp|portPop|     * isSSLSmtp|isSSLPop|portSSLSmtp|portSSLPop|address|     * user|password     * @param configs      */    public void updateEmailConfig(Map<String, String> configs) {        String serverType = configs.get("serverType");        String serverSend = configs.get("serverSend");        String serverReceive = configs.get("serverReceive");        String portSmtp = configs.get("portSmtp");        String portPop = configs.get("portPop");        String isSSLSmtp = configs.get("isSSLSmtp");        String isSSLPop = configs.get("isSSLPop");        String portSSLSmtp = configs.get("portSSLSmtp");        String portSSLPop = configs.get("portSSLPop");        String address = configs.get("address");        String user = configs.get("user");        String password = configs.get("password");        try {            Document doc = XmlOper.getDocument(getAppConfig());            Element root = doc.getDocumentElement();            Element email = (Element)root.getElementsByTagName("email-config").item(0);            if (serverType != null) email.getElementsByTagName("server-type").item(0).                    setTextContent(serverType);            if (serverSend != null) email.getElementsByTagName("server-send").item(0).                    setTextContent(serverSend);            if (serverReceive != null) email.getElementsByTagName("server-receive").item(0).                    setTextContent(serverReceive);            if (portSmtp != null) email.getElementsByTagName("port-smtp").item(0).                    setTextContent(portSmtp);            if (portPop != null) email.getElementsByTagName("port-pop").item(0).                    setTextContent(portPop);            if (isSSLSmtp != null) email.getElementsByTagName("is-ssl-smtp").item(0).                    setTextContent(isSSLSmtp);            if (isSSLPop != null) email.getElementsByTagName("is-ssl-pop").item(0).                    setTextContent(isSSLPop);            if (portSSLSmtp != null) email.getElementsByTagName("port-ssl-smtp").item(0).                    setTextContent(portSSLSmtp);            if (portSSLPop != null) email.getElementsByTagName("port-ssl-pop").item(0).                    setTextContent(portSSLPop);            if (address != null) email.getElementsByTagName("address").item(0).                    setTextContent(address);            if (user != null) email.getElementsByTagName("user").item(0).                    setTextContent(user);            if (password != null) email.getElementsByTagName("password").item(0).                    setTextContent(password);            XmlOper.saveDocument(doc, getAppConfig());        } catch (Exception e) {            Elog.log("Exception:ConfigOper:updateEmailConfig:" + e.getMessage());        }    }        /***************************************************************************     * 关于总站admin列表的装载,注意admins中的id信息必须是已经注册的用户     * @return admins ArrayList<String>类型的集合,包含admin的id信息。     **************************************************************************/    public List<String> loadAdmins() {        List<String> admins = new ArrayList<String>(2);        try {            Document doc = XmlOper.getDocument(getAppConfig());            Element root = doc.getDocumentElement();            Element adminList = (Element)root.getElementsByTagName("admin-list").item(0);            NodeList ads = adminList.getElementsByTagName("id");            for (int i = 0; i < ads.getLength(); i++) {                String admin = ads.item(i).getTextContent().trim();                admins.add(admin);            }        } catch (Exception e) {            Elog.log("Exception:ConfigOper:loadAdmins:" + e.getMessage());        }        return admins;    }        /***************************************************************************

⌨️ 快捷键说明

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