刚刚换完工作,以前在小公司做,我作为原来公司JAVA部的元老,在原来公司的工作上需要处理和多方面的事情,所以也就用到了很多的技术,这些技术以后一段时间内可能用不到了,在这我准备总结一下。
一。 关于JAVA事务的处理:
说明:在处理业务逻辑时,有很多事情是要同时完成,就例如同时修改多个表的数据,同时做多个页面的变换处理等等。
实例:在同时对多个表进行修改的事后,我们在开发过程中遇到很大的麻烦。我们曾经用存储过程解决,但是这样系统的 安全性和保密性就失去了一些,而且用存储过程需要很多事情需要考虑,比如可能有大量的参数需要传递,业务逻 辑不清晰等等。最后我们选择了JAVA事务处理机制,并且得到了很好的效果。
实现:
包的引入
import javax.transaction.UserTransaction ;
import javax.naming.InitialContext ;
import javax.transaction.SystemException ;
import javax.naming.Context ;
//代码快
Context ctx = null ;
UserTransaction utx = null ;
try
{
ctx = new InitialContext () ;
utx = ( UserTransaction ) ctx.lookup ( "javax.transaction.UserTransaction" ) ;
utx.begin () ;
}
catch ( Exception ex )
{
ex.printStackTrace () ;
}
try
{
//填写你要进行的操作
utx.commit () ;//事务的提交
ctx.close () ;
}
catch ( Exception ex )
{
if ( utx != null )
{
try
{
utx.rollback () ;//出现异常后事务的回滚
}
catch ( SystemException ex5 )
{
ex5.printStackTrace () ;
}
catch ( SecurityException ex5 )
{
ex5.printStackTrace () ;
}
catch ( IllegalStateException ex5 )
{
ex5.printStackTrace () ;
}
}
}
一。 关于JAVA事务的处理:
说明:在处理业务逻辑时,有很多事情是要同时完成,就例如同时修改多个表的数据,同时做多个页面的变换处理等等。
实例:在同时对多个表进行修改的事后,我们在开发过程中遇到很大的麻烦。我们曾经用存储过程解决,但是这样系统的 安全性和保密性就失去了一些,而且用存储过程需要很多事情需要考虑,比如可能有大量的参数需要传递,业务逻 辑不清晰等等。最后我们选择了JAVA事务处理机制,并且得到了很好的效果。
实现:
包的引入
import javax.transaction.UserTransaction ;
import javax.naming.InitialContext ;
import javax.transaction.SystemException ;
import javax.naming.Context ;
//代码快
Context ctx = null ;
UserTransaction utx = null ;
try
{
ctx = new InitialContext () ;
utx = ( UserTransaction ) ctx.lookup ( "javax.transaction.UserTransaction" ) ;
utx.begin () ;
}
catch ( Exception ex )
{
ex.printStackTrace () ;
}
try
{
//填写你要进行的操作
utx.commit () ;//事务的提交
ctx.close () ;
}
catch ( Exception ex )
{
if ( utx != null )
{
try
{
utx.rollback () ;//出现异常后事务的回滚
}
catch ( SystemException ex5 )
{
ex5.printStackTrace () ;
}
catch ( SecurityException ex5 )
{
ex5.printStackTrace () ;
}
catch ( IllegalStateException ex5 )
{
ex5.printStackTrace () ;
}
}
}