`

bbscs6

阅读更多

net.sf.hibernate.id包,自定义数据库底层id生成器
 TableCustomGenerator同时实现PersistentIdentifierGenerator, Configurable
 TableID通过自增,到达最大添加INCREASE方法生成。共有25个TableID静态对象
====================================================================================
bbscs.xml是社区配置文件,可以修改,com.laoer.bbscs.sys包中的SysInfo则是控制此文件的类
====================================================================================
applicationContext.xml:
 一个TimerFactoryBean管理着5个TimerTask:
  1,boardsCountTask每隔一个小时没有延迟检查帖子和主题数
  2,onlineClearTask每隔一个小时延迟一个小时检查在线用户
  3,advloadTask每隔半个小时检查广告
  4,subscibeSendTask每隔5分钟延迟5分钟[检查是否需要通知搂主]
  5,voteUserClearTask每隔24小时没有延迟[todo]
 有两个触发器:
  1,onlineStatJobCronTrigger每天24小时都触发,检查在线的人
  2,sysNumStatJobCronTrigger每天1点触发,检查系统参数
 其次,friendService管理好友,voteService管理投票
 最后,mySessionFactory载入所有的*.hbm.xml;数据库连接池使用dbcp,里面的配置参数由init.properties文件取得。
=====================================================================================
com.laoer.bbscs.sys:系统配置
 >>advloadTask:加载广告的TimerTask
 >>AppContext存储整个应用程序的ApplicationContext(ClassPathXmlApplicationContext)
 >>过滤器(正规表达式):以支持UBB代码
  FilterBuilder接口
   RegFilterBuilder使用JDK中的java.util.regex实现
  Filter接口
   RegexFilter由RegFilterBuilder生成
    AutoFilter能在生成实例的同时进行过滤
    IMGFilter对“[IMG]”的过滤
  其中FilterDirector生成FilterBuilder的各种实现
 >>BoardLoadThread加载boardlist的线程[todo]
 >>BoardLoadTimerTask加载boardlist的TimerTask
   BoardsCountTimerTask计算帖子和主题数量的TimerTask
   SubscibeSendTimerTask有人回复时用站内消息或邮件通知的TimerTask
   UserOnlineClearTimerTask:在线用户清除TimerTask
   VoteUserClearTimerTask:?[todo]
 >>缓存使用oscache
  ICache接口
   SysOSCache中生成GeneralCacheAdministrator(oscache)进行缓存管理
  CacheManager:有4个静态对象,每个里面有一个SysOSCache,由CacheFactory用反射生成
  
  BoardsCache版面缓存
  PostFileCache帖子缓存[todo]
  UserCache用户缓存[todo]
  UserFileInPostCache用户上传文件缓存
  UserInfoCache用户信息缓存
  
 >>BoardsComparator根据主题数来对版面排序
 
 >>CheckAdminUser管理超级用户的信息,存储在adminiinfo.properties里面
 >>Constant常量
 >>Forbid封禁的IP以及词组,存储在forbid.xml中
 >>IndexTimerTask检索首页的TimerTask
 >>NewPost管理最新的帖子,在file/include/newpost.js中存储
 >>OnlineStatJob管理在线人数(用户和游客)的QuartzJobBean
 >>分页
  PageList包装好的分页列表
  Pages是一个多功能分页类,能传入文件名(地址)对多种内容进行分页。另外有4种style:
   1,首页 上一页 下一页 尾页
   2,首页 上一页 下一页 尾页 共 {0} 条 第 {1}/{2} 页
   3,首页 上一页 下一页 尾页 共 {0} 条 第 {1}/{2} 页 (与2的参数名不同)
   4,首页 上一页 下一页 尾页 共 {0} 条 第 {1}/{2} 页 到?页

 >>Queue模拟队列(线程同步)
 >>Result结果?[todo]
 >>RunTimConstant一个提交队列[todo]
 
 >>SysInfo系统配置
 >>SysNumStatJob的QuartzJobBean,包括社区人数,主题数,帖子总数,前一天的统计数据并记录到数据库
 >>SysStat记录在file/include下面的sysstat.properties文件中的统计数据,包括帖子数,最新注册过户,最高在线用户数,发生时间,主题数,所有用户数
 >>SysUtil有关系统的工具类,n多工具方法
 >>UserLevel用户级别
===================================================================================
com.laoer.bbscs.lucene:全文检索[todo:补课!]
 DeleteFiles删除文件
 FileDocument读文件
 HTMLDocument读HTML文件
 IndexFiles写索引
 IndexHTML
 SearchFiles
com.laoer.bbscs.lucene.html:
 Entities
 HTMLParserConstants
 HTMLParser
 人间悲剧,完全看不懂
===================================================================================
com.laoer.bbscs.dao:全是DAO接口
===================================================================================
com.laoer.bbscs.dao.hibernate:
 DAO实现类,继承org.springframework.orm.hibernate.support.HibernateDaoSupport,使用getHibernateTemplate方法取得HibernateTemplate,里面包装了各种hibernate的方法。
 回调:
 getHibernateTemplate().executeFind(new HibernateCallback() {
      public Object doInHibernate(Session s) throws HibernateException, SQLException {

        Query query = s.createQuery(LOAD_BU);
        query.setShort(0, atSite);
        query.setLong(1, atBoard);
        query.setLong(2, atBoards);
        query.setFirstResult(firstResult);
        query.setMaxResults(maxResults);

      List list = query.list();
        return list;
      }
    })
===============================================================================
com.laoer.bbscs.business:业务逻辑接口
===============================================================================
com.laoer.bbscs.business.service:业务逻辑实现类,大多数调用DAO
===============================================================================
com.laoer.bbscs.bean:与数据库对应的实体类
===============================================================================
com.laoer.bbscs.web.servlet:
 AuthImg生成认证码图片,使用common包里面的Util生成4位认证码,并生成cookie
 SysLoadServlet初始化加载所有版面
 SysListener监听器,当生成context时,schedule BoardLoadTimerTask和IndexTimerTask[todo]
 UserCheck[todo]
================================================================================
web.xml
<error-page>
    <exception-type>java.lang.NullPointerException</exception-type>
    <location>/npe.htm</location>
</error-page>
================================================================================
关于认证码图片:JSP中使用<img src="authimg">而/authimg映射到AuthImg Servlet,在servlet中生成图片并从response中输出。并把认证码放进cookie。在LoginAction中从cookie中取得认证码和form中的比较。
================================================================================
社区广播标题写在file/include/bull.html中,其中链接指向bulllist.bbscs
<action input="/error.jsp" name="bullForm" path="/bulllist" scope="request" type="com.laoer.bbscs.web.action.Bull" validate="true">
      <forward name="bulllist" path="/bulllist.jsp" />
</action>
从首页点进去的时候虽然没有bullForm,但由于这里配置了bullForm还是会生成bullForm的实例
=================================================================================

分享到:
评论

相关推荐

    bbs-cs 天乙社区 v6.0.1(含源码)

    将bbscs6目录COPY直Tomcat/webapps/下,即Tomcat/webapps/bbscs6 修改Tomcat/webapps/bbscs6/WEB-INF/classes/init.properties文件 主要修改 datasource.url=jdbc:mysql://localhost:3306/bbscs6?useUnicode=true&...

    讨论区BBS网站

    将BBS目录COPY直Tomcat/webapps/下,即Tomcat/webapps/BBS 修改Tomcat/webapps/bbscs6/WEB-INF/resources/config.properties文件 主要修改 server=jdbc:mysql://127.0.0.1/LearnJSP?useUnicode=true&...

    在线网上书店

    将ECommerce目录COPY直Tomcat/webapps/下,即Tomcat/webapps/ECommerce 修改Tomcat/webapps/bbscs6/WEB-INF/resources/config.properties文件 主要修改 server=jdbc:mysql://127.0.0.1/LearnJSP?...

    bbscs711.part4.rar

    bbscs711.part1.rar

    ebookproj.rar

    MYSQL安装 将安装包解压缩,运行ebookcopy.bat,然后用ebook.... 将ECommerce目录COPY直Tomcat/webapps/下,即Tomcat/webapps/ECommerce 修改Tomcat/webapps/bbscs6/WEB-INF/resources/config.properties文件

    BBSCS_8_0_1.part3.rar

    这是一个J2EE的项目,写的是一个论坛,包含全部源码,其中运用struts、hibernate、spring、ajax等多种框架,由于工程大,所以分5个部分上传。 BBSCS_8_0_1.part3.rar

    BBSCS_8_0_1.part1.rar

    这是一个J2EE的项目,写的是一个论坛,包含全部源码,其中运用struts、hibernate、spring、ajax等多种框架,由于工程大,所以分5个部分上传。

    BBSCS_8_0_1.part2.rar

    这是一个J2EE的项目,写的是一个论坛,包含全部源码,其中运用struts、hibernate、spring、ajax等多种框架,由于工程大,所以分5个部分上传。

    bbscs祥設

    NULL 博文链接:https://guidao.iteye.com/blog/356240

    [论坛社区]天乙社区修改版_bbscs7.zip

    前几年的JavaJsp应用源码Demo,主要面向的是学生毕业设计学习。

    BBSCS_5_3_1.rar_javaBean mysql_oracle

    一套Web式网络社区软件,天乙社区采用JSP+JavaBean构架,后台可以使用MYSQL、Oracle、SQL Server等多种数据库,适用于Linux/UNIX、Windows等多种操作系统,具有界面简洁、功能强大、操作方便等特点

    对天乙社区bbscs8实现的详细分析一(附文档下载)

    所有四篇文档 博文链接:https://sgwood.iteye.com/blog/123113

    BBSCS_5_3_1.rar_bbs struts_bbs系统_jsp bbs down_天乙社区_虚拟社区

    BBS-CS 天乙社区 是采用JSP+JavaBean+Servlet、Struts的MVC框架开发的一套网络虚拟社区系统。文件解压缩后有详细文件说明。

    bbs数据库设计典范

    bbscs开源项目的数据库设计,设计的很好,值得学习

    bbs论坛(SSH)

    该项目是一个完整的例子,只需导入数据库(mysql)脚本bbscs7.sql和ssh的相关jar包即可运行! 声明:任何版权纠纷与本人无关!

    完整java论坛

    一个完整的java论坛,基本功能都实现了。直接导入myeclipse 找到src下面的bbscs8.sql创建数据库,修改init.properties里面的数据库连接 用tomcat启动就行了

    毕业设计_bbs_java_mysql

    安装条件: JDK1.5以上(必须) Mysql5以上,Oracle10g ...http://localhost:8080/login.bbscs?action=admin 用户:webmaster 密码:12345 前台用户用例 用户:test 密码:test 执行sql,访问即可。

    天乙社区论坛源码,适合初级SSH向中等水平的进阶学习资料--lib1.rar

    本源码是在天乙社区论坛基础上的二次开发,实战型项目的源码,适合初级SSH开发的进阶...bbscs7.rar源代码包(天乙社区论坛源码,适合初级SSH向中等水平的进阶学习资料--源代码) lib1.rar和lib.rar是项目需要的jar包。

Global site tag (gtag.js) - Google Analytics