- 浏览: 117535 次
- 性别:
- 来自: 北京
最新评论
-
lufazhi:
楼主,是否可以将源码分享,谢谢,小弟初次接触nutz不太理解, ...
基于Nutz与ExtJs的快速开发 -
qazxcdews:
jbpm不是使用hibernate吗?你是怎么将Nutz与jb ...
ExtJS+Nutz+JBPM实现一个简单的请假流程 -
kk63643813:
代码很经典,楼主你很强,代码思路也很好,求源码,谢谢17146 ...
使用Nutz+ExtJS+JBPM4.4实现会签 -
qinboss:
...
jbpm4表结构(1) -
han0917:
hello,我想问下我使用XBlink序列化对象为xml的时候 ...
最近的一点计划
文章列表
XBlink在1.0.0版开始编码前,想过究竟怎么才能做成一个比较灵活易于扩展的框架。(毕竟之前的太不灵活)
灵活易于扩展,即是指很多地方可以让用户去决定,给用户更大的选择权。
序列化最终是生成可阅读的文本格式,所以只有在这上面下文章了。
经过几个朋友的讨论与个人思考,确定了至少有两点要做到。
一,对于一个对象转换生成的文字与其格式,用户可以设定。
二,对于一个用户自己定义的文本格式(或是XBlink默认没有支持的格式),用户可以有办法实现。
第一点,生成的文字与格式。
比如日期型,用人需要日月年信息就好,有人还要加上时间,这种个性化需求,就很常见。
...
公告:
由于googlecode的wiki编辑较为复杂,官网文档还需重新整理格式,这里先写一个1.0.0版的使用手册,让大家先了解下具体的使用。
用户API
对于XBlink作为普通用户只需要了解5或8个类即可,其他的都是内部使用,无需关心细节。
必备的:
两个核心类 XBlink.java XBConfig.java
三个注解类 XBlinkAlias.java XBlinkAsAttribute.java XBlinkOmitField.java
XBlink
提供了序列化反序列方法,还有几个特殊的设置项。
PS:以下提及的输出指File,O ...
XBlink1.0.0版发布:更轻更快更好用
简介:
一个轻量级的通用型序列化反序列化工具
特点:
轻 -- 当前版本,无需引入任何第三方jar包,JDK1.5以上适用,大小总共120K。
易 -- 简单易用,基本上只需调用一个方法就能 ...
近半年来,由于实在太懒,博客几乎没有什么更新.....于是,ME刚刚做出一个艰难的决定,准备动手写点什么.....
晚上看了下XBlink的主页,意外的发现1.0.0版的下载数竟达到了1111这个吉祥的数字,超过了之前版本的总和(前6版共521次下载),看来是逐步的有人在用了
简单统计了下Issue(列表+邮件)大概二三十个吧,改过其中的几个,不过代码仅仅提交到了github上,导致某些同学一直觉得没有更新过,这里只能说抱歉了,没通知到
之所以这么久没有大动作的更新代码,一是犯懒,二是ME自己都没在用(目前项目中暂时用不到),三是用的人也不多,就逐步失去了更新的动力
不过 ...
下午跑步的时候,脑子里突然冒出这么个话题,赶紧记录下,以后就想不起来了。
想到这个话题后,先是问了自己两个问题:
1.人是什么?
2.人的本性是什么?
人是什么?
人是动物,是地球上有史以来最高级的动物。
过去的大自然中,几乎所有的动物都有其天敌,偶有几个处于食物琏顶层的也是因为自身素质特别优秀,一般动物无法对其造成影响,而人的各个方面都算不上出色,甚至非常一般。
但是人却在动物界中脱颖而出了,逐步占据了统治地位,这主要是因为人进化了,尤其是大脑。
好久没有更新博客,因为...应该是...懒...这次算是记录下自己的学习成果。
最近的工作重点是做前端的UI开发,花了几天做了个还算过的去的小控件。
主要是测试下js压缩加密混淆的效果,结果压缩加密没问题,混淆后某些事件就响应不了了,不知道是自己代码写的有问题还是压缩工具的问题。。。
不支持IE6,7,8 仅测试了chrome与FireFox,同志们拿去随便玩玩就好了,源码暂时不提供,见谅,理解万岁。
ColorPicker
目前提供三种选择方式
使用手册
初始化模式
$ ...
使用Nutz提供的建表功能。
测试类:
@Table("t_test")
public class ATable {
@Id
private int id;
@Column("nm")
private String name;
@Column("ct")
private Timestamp createTime;
@Column("lm")
private Timestamp lastModified;
}
Nutz生成的建表语句是:
...
记录尝试Win7下引导Ubuntu的过程
- 博客分类:
- ubuntu
刚拿到Acer的4750G,准备做win7+ubuntu11.10,结果遇到n多新问题,记录下。
过去装过双系统,采用了先装win7,再装ubuntu,grub引导写入mbr的方式,这样的做法可以说最简单,也最保险。
开机后会自动进入grub,然后选择要进入的系统。
这样做的坏处是mbr被侵占了,以后如果不想用linux了,或者想换一个(因为ubuntu也是版本帝,更新忒快),就比较麻烦。
所以这一次准备尝试,不写mbr,毕竟win系统换的并不是特别勤,开机自动进win7,然后通过win下的引导启动ubuntu。这样以后重装ubuntu或其它的linux都不会修改 ...
在Window环境下,进行push代码的时候,会报错。
例如:
D:\GitRep\XBlink\git push
Permission denied(publickey)
fatal: The remote end hung up unexpectedly
原因是你是通过cmd命令进入命令行输入界面的。
正确的操作是,在git附带的bash(GitBash可以在开始菜单的git目标里面找到)里面运行命令,就可以一切正常。
这点需要注意,否则要折腾很久。
在将一个对象序列化过程中,引用对象的处理是一个常见问题。
随着新版本XBlink的即将推出,这个老大难问题就需要慎重解决。
在0.7.0版中,引用虽然已经能够正确处理,但是实现方式是采用了对象出现先后顺序为标记,采用数字的方式来实现引用。
例如 A包含B,B包含C,C包含A,C也包含B。生成的XML如下:
<A>
<B>
<C>
<A ref="1"/><!-- A是第一个序列化的对象,ID设置为1 -->
<B ref="2&q ...
正着手XBlink新版本的开发,想着去找XStream取取经的,结果意外发现几乎3年没有更新过的XStream在今年8月份竟然发布了新版本,最新的为1.4.1,已经是一个BugFix版了。
稍微扫了下,发现1.4比起1.3版主要有这么几个改变:
官方表示不再支持JDK1.3了,所以老系统还是继续用1.3.1版吧。
增加了对JDK7与android系统的支持。
XPP3不再是默认的了,由kXML2取代了其位置,简单查了下kXML2,发现它基本是服务于手机系统(像J2ME)的一个XML解析器,优点就是占用内存小,本身个头也比XPP3小一号,所以在明确表示支持android ...
怀念小时候写作文了,布置作业,回去读《OOXX》这本书,然后写篇读后感,就叫“读《OOXX》有感”。
作为一个程序员,一直以来以写出好代码为目标。
但也迷茫过,究竟写出来的怎样才能算是好代码呢。
读了不少技术书,大多数都是以如何使用某个框架,某个技术,某个语言为主,也有像《程序员修炼之道》或《高效程序员的45个习惯》这样的,会告诉一个好的程序员必备的素质方面的书籍,当然像《重构》这类书籍来说,已经算是比较接近教你写出好代码的教科书了。
但读下来终究还是有那么一点点疑惑,到底写代码时,要注意什么呢,注意到什么地步,这个力度如何把握。
会签的例子依然采用Nutz+ExtJS+JBPM来实现。
这里只讲讲会签的实现,其他细节可以参考这篇文章http://pangwu86.iteye.com/blog/1114082
#######################邪恶的分割线#######################
首先介绍下什么是会签
会签
会签是撰拟公文的过程中,主办单位主动与有关单位协商并核签的一种办文程序,一般当公文的内容涉及本单位的多个部门或与其他单位有关时,需要进行会签。会签根据对象的不同分为内部会签和外部会签。内部会签用于与本单位内部的各有关部门进行协商并核签;外 ...
Apache Commons-Pool 源码分析
- 博客分类:
- 源码分析
Commons-Pool
首先看下两个重要的类结构:
ObjectPool defines
a simple pooling interface.
GenericObjectPool: ObjectPool implementation with configurable LIFO/FIFO behavior. The
default behavior is for the pool to act as a LIFO queue. What this means
is that when there are idle objects avai ...
Commons-Logging
包结构:
org.apache.commons.logging.Log
一个接口,定义了五个输出级别(从低到高依次严重)
trace (the least serious)
debug
info
warn
error
fatal (the most serious)
PS:以下XXX代表某一个日志级别
每个级别都有一个isXXXEnabled 方法 可以判断是否启用了这个级别的输出
同时还有两个输出方法:
XXX(Object message)
XXX(Object message, ...