`

chx 学习jForum笔记五-参数表的操作

阅读更多

2010.12.7 继续查找关键字MostUsersEverOnline

仍然是在net.jforum.repository/ForumRepository.java中

    public static MostUsersEverOnline getMostUsersEverOnline()
    {
        MostUsersEverOnline online = (MostUsersEverOnline)cache.get(FQN, MOST_USERS_ONLINE);  //从缓存中取峰值人数
        if (online == null) { //缓存中没有
            online = instance.loadMostUsersEverOnline (DataAccessDriver.getInstance().newConfigDAO()); //从数据表读取峰值人数信息
        }
        return online;
    }

 

    private synchronized MostUsersEverOnline loadMostUsersEverOnline(ConfigDAO cm) //从数据表读取峰值人数信息
    {
        Config config = cm.selectByName (ConfigKeys.MOST_USERS_EVER_ONLINE); //从数据表读取同时在线人数
        MostUsersEverOnline mostUsersEverOnline = new MostUsersEverOnline();
        if (config != null) {
            mostUsersEverOnline.setTotal(Integer.parseInt(config.getValue ())); //设置峰值人数
            // We're assuming that, if we have one key, the another one
            // will always exist
            config = cm.selectByName (ConfigKeys.MOST_USER_EVER_ONLINE_DATE);  //从数据表读取峰值时间
            mostUsersEverOnline.setTimeInMillis(Long.parseLong(config.getValue ())); //设置峰值时间
        }
        cache.add(FQN, MOST_USERS_ONLINE, mostUsersEverOnline); //将峰值人数及时间写入缓存
        return mostUsersEverOnline;
    }

 

所以从以上句子中得知,程序用到了一个配置数据表。用法应该是这样滴:

ConfigDAO cm = DataAccessDriver.getInstance().newConfigDAO();
Config config = cm.selectByName("参数名称")
值 = config.getValue()
 

 

下面继续看如何设置这个峰值人数

 

    public static void updateMostUsersEverOnline(MostUsersEverOnline m) //设置峰值人数
    {
        ConfigDAO cm = DataAccessDriver.getInstance().newConfigDAO();  //取参数表
        Config config = cm.selectByName(ConfigKeys.MOST_USERS_EVER_ONLINE); //取参数
        if (config == null) { //参数表中未取到参数
            // Total 参数〔峰值人数〕操作
            config = new Config();
            config.setName(ConfigKeys.MOST_USERS_EVER_ONLINE); //设置参数名称
            config.setValue(Integer.toString(m.getTotal()));   //设置参数值
            cm.insert(config); //将参数记入表中
            // Date  参数〔峰值发生时间〕操作
            config.setName(ConfigKeys.MOST_USER_EVER_ONLINE_DATE);//设置参数名称
            config.setValue(Long.toString(m.getTimeInMillis())); //设置参数值
            cm.insert(config); //将参数记入表中
        }
        else {
            // Total 参数〔峰值人数〕操作
            config.setValue(Integer.toString(m.getTotal())); //设置参数值
            cm.update(config); //将参数记入表中
            // Date 参数〔峰值发生时间〕操作
            config.setName(ConfigKeys.MOST_USER_EVER_ONLINE_DATE); //取参数
            config.setValue(Long.toString(m.getTimeInMillis())); //设置参数值
            cm.update(config); //将参数记入表中
        }
       
        cache.add(FQN, MOST_USERS_ONLINE, m); //修改缓存中的值
    }

所以设置是这样

ConfigDAO cm = DataAccessDriver.getInstance().newConfigDAO();
Config config = cm.selectByName("参数名称")
        if (config == null) { //参数表中未取到参数
            config = new Config();
            config.setName("参数名称"); //设置参数名称
            config.setValue(值)
            cm.insert(config); //将参数记入表中
         }
         else {
            config.setValue(值)
            cm.update(config); //将参数记入表中
         }
 

 

分享到:
评论

相关推荐

    chx 学习jForum笔记十八 jForum与ms sqlserver

    《jForum与MS SQLServer整合学习笔记》 jForum是一款基于Java的开源论坛系统,它以其高度可定制性、灵活性和强大的功能深受开发者喜爱。在本文中,我们将深入探讨如何将jForum与Microsoft SQL Server(简称MS SQL...

    北大计算机系高级计算机系统结构课件chx14-arch03-ilp1

    6. **旁路(Bypassing)**:为了避免回写延迟导致单周期整数操作变慢,处理器使用旁路技术,允许运算结果在完成计算后直接传递给后续指令,跳过写回和重新读取的步骤。 7. **控制相关(Control Dependences)**:...

    CHX-I防火墙官方教程-附带翻译终稿.pdf

    CHX-I防火墙官方教程-附带翻译终稿.pdf

    北大计算机系高级计算机系统结构课件chx14-arch06-vliw1

    VLIW架构是将多个操作打包在一个指令中,每个操作槽对应一个固定的函数。这样做的好处是可以确保在同一时钟周期内执行多个操作,从而实现指令级并行。VLIW设计强调了指令间的并行性,减少了指令检查(如RAW检查,即...

    北大计算机系高级计算机系统结构课件chx14-arch07-MT1

    为了解决这个问题,一种方法是采用指令交错执行(interleave execution),即从不同的线程中选取指令,在同一流水线上交替执行,确保每个线程的前一条指令完成写回操作后再执行下一条指令,以避免寄存器文件的读写...

    北大计算机系高级计算机系统结构课件chx14-arch08-mm1

    随着计算机技术的飞速发展,计算机系统中的处理器与主存...通过深入学习和理解主存系统的延迟问题、性能优化策略以及SRAM的工作原理,我们可以更好地掌握计算机系统架构的精髓,为未来的技术创新和发展奠定坚实的基础。

    北大计算机系高级计算机系统结构课件chx14-arch04-Tomasulo1

    每个功能单元可能有九个字段,包括忙碌状态(Busy)、操作(Op)、目的寄存器(Fi)、源寄存器编号(Fj, Fk)、生产源寄存器的功能单元(Qj, Qk)以及源寄存器准备就绪的标志(Rj, Rk)。这些信息用于管理指令的执行...

    HA-SoftEther-CHX虚拟专网

    HA-SoftEther-CHX虚拟专网HA-SoftEther-CHX虚拟专网HA-SoftEther-CHX虚拟专网HA-SoftEther-CHX虚拟专网

    北大计算机系高级计算机系统结构课件chx14-arch05-ilp1

    在第五讲中,讲师程旭探讨了如何通过更复杂的流水线和动态调度来挖掘指令级并行性,以提高处理器性能。 首先,讲解了乱序执行(Out-of-Order Execution)的概念,这是为了实现指令级并行而采取的一种策略。乱序执行...

    CHX(x=0-4在Y-Al2O3(ll0D)表面吸附的密度泛函研究 (2007年)

    使用基于密度泛函理论(DFT)的Cast叩量子力学计算程序模块,对CHX(X=0-4)在Y-AI2O3(ll0D)表面吸附的位置,空间结构和能量进行了理论计算。计算结果表明.CHx=(x=0-3)与表面形成强的相互作用。CH3,CH2物种处于表面八面体...

    北大计算机系高级计算机系统结构课件chx14-arch02-cache1

    随着集成电路工艺的不断进步,如从250纳米技术到180纳米技术的转换,电路尺寸缩小,晶体管数量增多,逻辑门的电容减小,工作电压降低,kn和kp参数增大,这些都使得时钟频率得以提升,进一步优化了缓存的性能。...

    北大计算机系高级计算机系统结构课件chx14-arch09-multiproc1

    "高级计算机系统结构-多处理器系统" 本资源是北京大学计算机科学技术系计算机系统结构教研室高等计算机系统结构(第九讲)的课件,讲解多处理器系统的相关知识内容。 多处理器系统的发展 多处理器系统的发展可以...

    CHX-I防火墙官方教程-附带翻译借鉴.pdf

    CHX-I防火墙官方教程-附带翻译借鉴.pdf

    CHX TNF JNK之间的关系

    标题与描述中的关键词“CHX TNF JNK”揭示了在细胞凋亡机制中的相互作用,尤其是关于人类肝癌细胞对肿瘤坏死因子α(TNFα)诱导的凋亡反应。这一研究聚焦于理解CHX(环己亚胺)、TNFα以及JNK(c-Jun N端激酶)三者...

    chx2095中文 英文资料

    根据给定的文件信息,我们可以提炼出以下关于CHX2095的详细IT知识: ### CHX2095概述 **CHX2095**是一款由United Monolithic Semiconductors S.A.S.制造的频率倍增器集成电路(IC),其工作频率范围在7.5至30GHz...

    chx99个人主页源码_chx99.zip

    【标题】"chx99个人主页源码_chx99.zip" 提供的是一个名为 chx99 的个人主页的源代码。源码通常包含了网站设计、布局、功能实现等核心部分,对于开发者而言是了解网站工作原理、学习前端技术或者进行二次开发的重要...

    \HA-SoftEther-CHX虚拟网卡及教程

    使得系统把此软件识别成一块网卡,有了这个东西,只要可以访问外网,都可以连接到虚拟HUB上与其他电脑组成局域网,在此虚拟的局域网上能进行所有物理存在的局域网上的操作,可以相互访问,可以联网玩游戏。...

    CHX-3大手臂大法兰.SLDDRW

    CHX-3大手臂大法兰.SLDDRW

    CHX Hyper eXpressor-开源

    通过深入研究`chx-0.0.2`中的文件,开发者可以全面了解CHX的工作方式,并将其应用于自己的Web开发项目中。同时,参与开源社区,与全球的开发者交流,共同推动CHX Hyper eXpressor 的发展,也是提升自身技能和影响力...

Global site tag (gtag.js) - Google Analytics