??xml version="1.0" encoding="utf-8" standalone="yes"?>国产在线制服美女,久久久久久久久国产精品,亚洲国产综合在线观看http://www.aygfsteel.com/mac521/category/28846.htmlLove OpenSourcezh-cnTue, 15 Apr 2008 21:10:43 GMTTue, 15 Apr 2008 21:10:43 GMT60- ȝ一下异怋?/title>http://www.aygfsteel.com/mac521/archive/2008/04/14/192701.html风中赯风中赯Mon, 14 Apr 2008 03:14:00 GMThttp://www.aygfsteel.com/mac521/archive/2008/04/14/192701.htmlhttp://www.aygfsteel.com/mac521/comments/192701.htmlhttp://www.aygfsteel.com/mac521/archive/2008/04/14/192701.html#Feedback1http://www.aygfsteel.com/mac521/comments/commentRss/192701.htmlhttp://www.aygfsteel.com/mac521/services/trackbacks/192701.htmlException分ؓQ?/span>Error?/span>Exception(checkedException?/span>uncheckedException)。在使用异常的时候可以先列出以下问题
Exception
|
Source
|
Scope
|
自定义异常名U?/span>
|
会生自定义异常的方法或事g
|
调用Source的方法或对象
|
我认?/span>uncheckedException?/span>checkedException要好Q因样可以减代码中try/catch语句Q利用异常处理框?/span>(?/span>filter)来统一处理产生的异常。那uncheckedException?/span>checkedException该如何划分呢Q?/span>checkedException用来处理可以预知的情况,例如已有针对q回值的不同情况Q用If/else判断。此时可以用checkedException提醒调用者对不同的情况做处理Q要比调用者自己查源代码然后做出相应的判断要好?/span>uncheckedException用于抛出的异常,一般情况下是不可预知的Q会Dpȝ错误的。例如一个自定义的方法用来格式化日期Q它需要一个日期型的字W串Q可是偏偏系l传了一个空的字D串Q这U事很少发生的,所以不能抛Z?/span>checkedExceptionQ不然会造成到处都是try/catch语句。此?/span>uncheckedException可以用了,在方法上加上@throws uncheckedExceptionQ调用者在不能定自己传入的参数是否合法时Q看到方?/span>throw异常Q就需?/span>try/catch一下了?/span>(@throws用来说明的是uncheckedException)
在项目开发过E中Q用XDoclet+Exception来约束调用者,效果会更好一些?/span>

]]>- [Original]Java文g事务(commons-transaction)http://www.aygfsteel.com/mac521/archive/2008/01/17/175839.html风中赯风中赯Thu, 17 Jan 2008 01:46:00 GMThttp://www.aygfsteel.com/mac521/archive/2008/01/17/175839.htmlhttp://www.aygfsteel.com/mac521/comments/175839.htmlhttp://www.aygfsteel.com/mac521/archive/2008/01/17/175839.html#Feedback0http://www.aygfsteel.com/mac521/comments/commentRss/175839.htmlhttp://www.aygfsteel.com/mac521/services/trackbacks/175839.html今天上网看到apache的commons包中提供了一个TransactionQ可以控制文件的事务。做了测试,看是否可以成功?/p>
Commons-Transaction: http://commons.apache.org/transaction/
下面是测试的代码TestTransaction.java:
Log log = LogFactory.getLog(TestTransaction.class);
//q个是commons-transaction包中的类
LoggerFacade logger = new CommonsLoggingLogger(log);;
//存储的\?br />
String toDir = "d:/";
//临时路径
String tempDir = "e:/";
//构造函数的W三个参敎ͼfalseQ标识是否encoding文档的urlQ这个一般不需要设|ؓtrue
FileResourceManager frm = new FileResourceManager(toDir, tempDir, false, logger);
//q标识frm的状态ؓstart
frm.start();
//下面需要frm的状态ؓstart
String txId = frm.generatedUniqueTxId();
try {
//开启Transaction
frm.startTransaction(txId);
frm.deleteResource(txId, "RFID.rtf");
// throw new Exception("sdf");
} catch (Exception e) {
try {
//回滚事务
frm.rollbackTransaction(txId);
} catch (ResourceManagerException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
//提交事务
frm.commitTransaction(txId);
在这个applicationq行q程中,会在tempDir产生一个时目?是由一些阿拉伯数字和字母组成的)Q里面有两个文g夹:change和deleteQ还有一个日志transaction.logQ而要操作的目录就会在delete目录中。事务的q程也是q样的:先将file存放的tempDirQ然后监控transaction的状态,如果commitQ它׃file写到destination中,然后删除tempDir。不q,既然apache已经有了q个Q就可以直接拿来用了
.commons-transactionQ还支持jta的事务,希望来会更加强?

]]> - [Translation]JSON与struts2http://www.aygfsteel.com/mac521/archive/2008/01/11/174653.html风中赯风中赯Fri, 11 Jan 2008 08:29:00 GMThttp://www.aygfsteel.com/mac521/archive/2008/01/11/174653.htmlhttp://www.aygfsteel.com/mac521/comments/174653.htmlhttp://www.aygfsteel.com/mac521/archive/2008/01/11/174653.html#Feedback0http://www.aygfsteel.com/mac521/comments/commentRss/174653.htmlhttp://www.aygfsteel.com/mac521/services/trackbacks/174653.html阅读全文

]]> - [Original]Hibernate持久与游?/title>http://www.aygfsteel.com/mac521/archive/2008/01/09/173983.html风中赯风中赯Wed, 09 Jan 2008 05:28:00 GMThttp://www.aygfsteel.com/mac521/archive/2008/01/09/173983.htmlhttp://www.aygfsteel.com/mac521/comments/173983.htmlhttp://www.aygfsteel.com/mac521/archive/2008/01/09/173983.html#Feedback0http://www.aygfsteel.com/mac521/comments/commentRss/173983.htmlhttp://www.aygfsteel.com/mac521/services/trackbacks/173983.html 在Hbibernate中有自己的一套机ӞFlushModeQ它控制着持久化对象与数据库的关系。FlushMode有四U状态:NERVER、AUTO、COMMIT和ALWAYS。默认gؓAUTO。Spring中用HibernateӞ会将FlushMode初始化ؓAUTOQ不q在使用OpenSessionInViewFilter(Spring有自q一个transcationQ不q它只是作用在service层,如果想持久化对象保留到view层,那么启用q个qo器之后就可以?qo器之后,Spring会将FlushMode讄为NERVER(表示持久化对象不在于数据库中数据实时兌)。不知道大家在工E中是否用到了spring提供的事务,在用到spring提供的HibernateTranscationManager理事务时。当调用的方法位于该理器之下时Qspring会时的FlushMode修改为AUTO状态,q样如果你在view层有一个持久化对象Qƈ且修改了q个持久化对象的状态,spring会自动将q个持久化对象的状态更新到数据库中厅R这样可能会带来困惑Q明明没有更新数据库Q怎么数据库中的值发生改变了呢?其实q也是持久层的意义所在:持久是将数据保存在持久层中的对象上,q对象与数据是一致的Q如果持久化对象状态发生改变,成ؓ了游L,cM用jdbc取出Object之后close了connectionQ这样对象与数据库就q了,也就是游R欢q大家来拍砖^_^

]]>
վ֩ģ壺
|
|
Т|
Ͷ|
|
ʲ|
ʹ|
|
|
|
Ϫ|
|
¦|
人|
|
|
|
|
|
ɽ|
|
|
|
|
̨|
½|
|
ӽ|
|
|
־|
|
|
|
|
|
ĩ|
|
¡|
ξ|
|