阅读更多

5顶
1踩

企业架构

原创新闻 bbossgroups-2.0-RC1 发布

2010-08-09 10:09 by 正式记者 yin_bp 评论(9) 有3727人浏览
AOP
bbossgroups project contain follow subprojects:
1.bboss-aop, an aop framework.(ioc ,rpc[jms,mina,jgroups,cxf webservice,rmi,netty,rest,组播,多播],
    bean component,cxf webservice component framworkset,jms components frameworkset,plugin security components and so on).
2.bboss-persistent, a persistent framework().
a.灵活的事务管理(声明式事务管理,可编程事务管理,java注解事务管理,jdbctemplate事务管理,五种经典的事务类型,支持事务嵌套,支持多数据库分布式事务)
b.灵活的访问数据库的接口(普通sql操作,预编译sql操作,普通/预编译批处理操作,存储过程,函数)
c.一套经典的数据库操作标签库(增删改查,普通sql操作,预编译sql操作,普通/预编译批处理操作)
d.经典的多数据库连接池配置管理和使用方法(所有的数据库操作接口可以直接指定连接池的名称,方便地实现对不同数据库的操作)
3.bboss-taglib, a web layer taglib framework(list tag,pageine list tag,detail tag ,logic tag,tree tag,tabpane tag,dbutil tag).
4.bboss-event, an event framework(local event,remote distribute event framework base aop rpc framework).
5.bboss-util, an utility framework.
6.antbuildall, ant build project that build up projects.可以运行antbuildall下的run.bat命令编译所有的子项目,并且更新相应工程的依赖jars。
7.bbossevent-client, an event remote client test project.
8.bboss-client, an rpc client test project.(jms,mina,jgroups,cxf webservice,rmi,netty,rest).
9.bboss-ws, bboss webserive framework test project.
10.文档 目录包含framework 开发文档和bboss aop框架的技术使用文档

bboss group project blog:
http://blog.csdn.net/yin_bp
http://yin-bp.iteye.com/

bboss group project sourceforge site url:
http://sourceforge.net/projects/bboss/files/

release version : bbossgroups-2.0-RC1
http://sourceforge.net/projects/bboss/files/bbossgroups-2.0-RC1/bbossgroups-2.0-RC1.zip/download
release date: 2010/08/06
release files:Contain all sub projects source files,distribute files,All projects dependended jars,So the file size is some bigger,do not warry,every sub project can be downloaded alone.
release futures:

----------------------------------------
bboss-persistent - 2010-08-03
----------------------------------------
o 多数据库事务完善:
如果存在两个连接池bspf和mq上的一个事务,如果mq实际引用了bspf做为外部数据源,那么mq的对应子事务和bspf的子事务合并也就是说实际上
mq直接使用bspf的事务。
o 外部数据源监控信息完善,源数据加载完善,配置信息精简
<datasource external="true">

    <dbname>mq</dbname>
    <externaljndiName>jdbc/mysql-ds</externaljndiName>
<showsql>false</showsql>

  </datasource>
  <datasource external="true">
    <dbname>kettle</dbname>
  
    <externaljndiName>jdbc/mysql-ds</externaljndiName>
<showsql>false</showsql>
  </datasource>
 
 
----------------------------------------
bboss-persistent - 2010-07-23
----------------------------------------


o 增加to_char函数的适配,to_date函数适配,目前修改的有oracle,mysql
----------------------------------------
bboss-persistent - 2010-07-22
----------------------------------------
o 扩展db适配器数据库日期转换函数,增加指定转换日期格式参数方法
o 优化/bboss-persistent/src/com/frameworkset/common/poolman/management/BaseTableManager.java中加载tableinfo信息,uuid和sequence时无需计算表的最大值
o mysql 数据库适配器bug修改


------------------------------------------------------------------
bboss-aop 2010-07-26
------------------------------------------------------------------
o jgroups 加密和认证机制完善
o 增加在服务组件方法中获取客服端请求参数方法,增加RequestContext上下文处理类,用来获取客服端传递的系统参数
使用方法:
    public Object getParameter()
{
String value = RequestContext.getRequestContext().getStringParameter("parameterKey");
System.out.println("value:" + value);
return value;
}

------------------------------------------------------------------
bboss-aop 2010-07-23
------------------------------------------------------------------
o 修复严重错误,该问题表现为,对一个单实例的远程服务组件并发发起多个方法调用时会出现以下现象:
     请求响应结果丢失,一个rpc请求接收其他请求的结果,导致不可以预料的错误,比如类型转换错误
    

o 修改SQLUtil组件,增加变量替换功能
详细使用方法参考测试用例:org.frameworkset.spi.persistent.SQLUtilTest

o 修改cglib堆栈溢出bug
采用cglib ioc机制时,当组件配置了声明式事务,在执行的时候将报堆栈溢出错误。

o 新增/bbossaop/src/org/frameworkset/persitent/util/SQLUtil.java类
作用是可以管理sql语句,可以加载不同的配置sql文件,并提取其中的sql语句

-----------------------------------------------------------------
bboss-taglib 2010-07-31
------------------------------------------------------------------
o 增加右键菜单项禁用的提示功能
------------------------------------------------------------------

各子项目新增功能和修改功能清单请参考每个项目中的readme.txt文件。
5
1
评论 共 9 条 请登录后发表评论
9 楼 yin_bp 2010-09-02 10:45
javamonkey 写道
yin_bp 写道
javamonkey 写道
。。。。。。
真这么复杂,那项目肯定也就采用应用服务器来解决这些问题了


bbossgroups持久层框架提供事务管理非常灵活和使用,而且支持嵌套事务,这是事务都是应用层面的数据库事务,不涉及应用服务器,也就是说不依赖任何应用服务器来管理事务,因此应用的部署非常方便。


实现了类似JTS这样的规范吧,挺好的,我还一直想学习怎么实现JTS。
另外嵌套事务实际使用情况应该不如扁平事务广泛吧,为什么想提供嵌套事务呢?

呵呵,应该是类似的,但是实现比较简单。
应该说嵌套事务的使用应该还是比较广泛的,可以看一下两个场景。
场景一:
方法handleWithTX和方法 otherhandleWithTX中都使用了事务,单独调用每个方法都受自身事务控制,这个没有任何问题

场景二:

还是方法方法handleWithTX和方法 otherhandleWithTX,都使用了事务。这次我们换种调用模式,在方法handleWithTX中调用otherhandleWithTX,
就出现了事务嵌套的情况,bbossgroups会将handleWithTX和otherhandleWithTX两个事务合并为一个事务,也就是说将方法otherhandleWithTX的事务合并到
handleWithTX方法的事务中,这样事务的一致性就会得到保证。

8 楼 javamonkey 2010-09-02 09:32
yin_bp 写道
javamonkey 写道
。。。。。。
真这么复杂,那项目肯定也就采用应用服务器来解决这些问题了


bbossgroups持久层框架提供事务管理非常灵活和使用,而且支持嵌套事务,这是事务都是应用层面的数据库事务,不涉及应用服务器,也就是说不依赖任何应用服务器来管理事务,因此应用的部署非常方便。


实现了类似JTS这样的规范吧,挺好的,我还一直想学习怎么实现JTS。
另外嵌套事务实际使用情况应该不如扁平事务广泛吧,为什么想提供嵌套事务呢?
7 楼 yin_bp 2010-08-25 10:40
javamonkey 写道
。。。。。。
真这么复杂,那项目肯定也就采用应用服务器来解决这些问题了


bbossgroups持久层框架提供事务管理非常灵活和使用,而且支持嵌套事务,这是事务都是应用层面的数据库事务,不涉及应用服务器,也就是说不依赖任何应用服务器来管理事务,因此应用的部署非常方便。
6 楼 yin_bp 2010-08-24 13:01
javamonkey 写道
有多少系统用到这么复杂的事务系统啊? 多个数据源,还有MQ。

真这么复杂,那项目肯定也就采用应用服务器来解决这些问题了

呵呵,bbossgroups中持久层框架提供数据库库事务管理功能,可能是及简单又实用,而且提供不同的事务管理方法,用户可以根据自己的喜好自由选择,楼下的是觉得bbossgroups提供了事务控制的方法太多所以就觉得复杂吧。不错提供这么多种方法,实现起来肯定非常复杂,但是面向上层应用的开发接口缺非常的简单,如果大家感兴趣的话可以看看bboss-persistent结合bboss-aop实现注解事务这篇文章:
http://yin-bp.javaeye.com/admin/blogs/725921

另外,楼下所说的mq不知是指的什么呢,本文中所提及的mq只是我们在实践项目中采用的使用的一个datasource的名称而已,这个datasource不是个物理的datasource他是指向另外一个物理datasource 【bspf】的引用呢:
<datasource external="true">

    <dbname>mq</dbname>
    <externaljndiName>jdbc/mysql-ds</externaljndiName>
<showsql>false</showsql>

  </datasource>
5 楼 javamonkey 2010-08-24 12:23
有多少系统用到这么复杂的事务系统啊? 多个数据源,还有MQ。

真这么复杂,那项目肯定也就采用应用服务器来解决这些问题了
4 楼 yin_bp 2010-08-10 12:14
Simple is beautiful,It is bbossgroups's best feature.
简单就是美,这是bbossgroups项目的最大特点。
3 楼 Wingel 2010-08-10 11:33
听起来跟spring有重复。能说一下跟spring的差异或者优缺点吗?
2 楼 yin_bp 2010-08-09 14:26
lkj107 写道
太复杂了,想涵盖所有的功能,实用性不强

笔者认为bbossgroup使用起来还是比较简单实用的,而且bbossgroups项目的创建人秉承的宗旨就是要简单实用。1楼认为复杂可能是觉得涵盖的面太广而复杂吧,bbossgroups项目完全支持按需所取,你可以只使用bbossgroups中的aop框架,也可以只使用其中的持久层框架,也可以只使用其中的分布式event框架,以及rpc框架,不说多了,要不又搞复杂了。
1 楼 lkj107 2010-08-09 13:38
太复杂了,想涵盖所有的功能,实用性不强

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 为wpf中的DataGrid控件添加鼠标单击事件

    我们知道wpf中的DataGrid控件是没有鼠标单击事件的,使用MouseDown事件比较弱,要先鼠标单击一下,选中某个单元格,再鼠标单击才相应事件,这不是我们想要的 要相应鼠标单击事件的列,我们采用DataGridHyperlinkColumn控件进行代替 下面只贴出DataGrid对应的xaml代码,如下: &lt;Grid &gt; &lt;DataGrid AutoGenerateColumns="False" Height="287" HorizontalAli..

  • c#datagrid的每行的单击事件

    需要一个帮助类 using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using Sys...

  • 捕捉DataGrid的双击事件

    namespace DataGridDoubleClick { using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; public class Form1 : Syst...

  • DataGrid鼠标事件处理

    完成功能是DataGrid的页面选中事件、鼠标事件、双击事件改变TR的色彩。代码很简单,只是一点JS操作。 JS文件:GridControl.js ============================= /*------------ DataGrid鼠标事件处理 ------------ 功能:用于数据梆定后鼠标事件参数说明: obj:对像this fontColor:字体颜色 backCol

  • DataGrid中添加单击或者双击事件

    在网上找到过一些对于DataGrid控件的双击事件的方法,有些是需要刷新页面的,有些则太过于复杂,东搞西搞一头雾水.难啦!还是自己动手做啦,根据需求,需将DataGrid双击后将双击的行内的内容提取出来写入对于的TEXTBOX框内,当然前提是不能刷新页面,因为刷新时又跳出开头了.参考了一下网上大虾的公布的东东,自己修改了一下,现公布出来给大家,资源共享啦:)首先,在DataGrid的ItemD

  • 国内 程序员的十个等级 你属于哪个等级

    转自 http://blog.csdn.net/ice_crazy/article/details/8220599 自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外。当然现在中国的许多程序员们对此可能有许多不同的意见,有些人认为中国的...

  • 梦成真——一个普通学校计算机系学生的出国梦

    2月24 号,周四,正如看手相那个人跟我说的,我这辈子最幸运的日子全和4有关。这一天第一封admit letter到来。至此,我才有勇气去为这一路写一个总结,向自己微笑。。为了这一天,我付出了太多太多。这一路上,帮助...

  • 终于有人把云计算、大数据和 AI 讲明白了【深度好文】

    / 我今天要讲这三个话题,一个是云计算,一个大数据,一个人工智能,我为什么要讲这三个东西呢?因为这三个东西现在非常非常的火,它们之间好像互相有关系,一般谈云计算的时候也会提到大数据,谈人工智能的时候也...

  • 探索分布式服务框架Dubbo2:以RPC为基础的微服务

    为什么说要搞定微服务架构,先搞定RPC框架? 原创:58沈剑架构师之路2016-08-25 第一章聊了【“为什么要进行服务化,服务化究竟解决什么问题”】 ...服务化的一个好处就是,不限定服务的提供方使用什...

  • 【转】如约而至:微信自用的移动端IM网络层跨平台组件库Mars已正式开源

    商业转载请联系作者获得授权,非商业转载请注明出处。1、前言关于微信内部正在使用的网络层封装库Mars开源的消息,1个多月前就已满天飞(参见《微信Mars:微信内部正在使用的网络层封装库,即将开源》),不过微信...

  • DataGrid中实现鼠标双击事件

    定义一个成员变量: public static bool m_bFirstTime = true;  使用DataGrid的如下两个事件:MouseLeftButtonUpSelectionChanged 在两个事件中对m_bFirstTime进行处理,代码如下:private void dg_MouseLeftButtonUp(object send

  • easyUI datagrid请求,使用@ResponseBody将数据转换成json

    spring-mvc.xml中配置:或者 <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.Ma

  • spring mvc 结合easyui datagrid 使用responseBody 注解 返回json 无法绑定

    今天遇到了这个问题,o(︶︿︶)o 唉,究其原因,太长时间不用easyui了。都忘记怎么用了。 使用 easyui datagrid表格,返回的日期要符合 要求的格式。给出一份easyui 官方的demo数据格式:{"total":28,"rows":[ {"productid":"FI-SW-01","unitcost":10.00,"status":"P","listprice":36.

  • Henry手记-Datagrid事件响应(二)

                                            Henry手记 - Datagrid事件响应(二)                                       韩睿  ( 5/6/2003) hi,大家好。对于windows form中的datagrid控件的使用,我已经写了不少文章了,但也不断地收到网友的意见,希望再多写一点。应朋友的要

  • 点评“最好的300款免费软件”

    但所谓三思而后行,本人在转载到善用佳软之前,先考查了一下,发现三个疑问:  ① 真是300个软件?这个问题意义不大,不过,既然有方便的工具,不数一下真是浪费。经计算,实为296个。(如何计算,用过 VIM 7.0的一...

  • 大数据常见面试问题汇总

    10.8 给定一个点、一条线、一个三角形、一个有向无环图,请用java面向对象的思想进行建模 10.9 现场出了一道sql题,让说出sql的优化,优化后效率提升了多少 第11章 HQL场景题 第12章 面试说明 12.1 面试过程最关键...

  • 企业实践开源的动机

    根据企业商业模式与开源软件之间的关系,其实践开源的动机与具体实施的行为会有不小的差别。我认为,直接销售开源软件...当企业逐渐发展以形成复杂的商业模式以后,开源就不仅仅是技术影响力或者协同开发这么纯粹了。

  • 高负载高并发网站架构分析

    由于自己正在做一个高性能大用户量的论坛程序,对高性能高并发服务器架构比较感兴趣,于是在网上收集了不少这方面的资料和大家分享。希望能和大家交流  msn: defender_ios@hotmail.com  ——————————...

  • 一文看清Libra全景(超长22000字,慎点)

    Libra的价值观可以概括为三个词,我们会发现这三个词贯穿了下文会讲到的几乎所有的机制设计,而且一开始便奠定了Libra位于道德的制高点。 a. 开放。是不受任何一个单一主体控制的开放,是储备资产选择的开放,是...

Global site tag (gtag.js) - Google Analytics