`
hqman
  • 浏览: 352909 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

java中callback使用

阅读更多
         以前每次看到程序中有回调的字眼,头都是很晕(不理解)。

    看了一个testCase的例子:
// 实现FilterChain new了 一个 特殊的实例  并且覆盖doFilter 方法
这里我感觉还是相当巧妙的,我不用显式定义 继承FilterChain这个抽象类。

 
 
  1.    final FilterChain filterChain = new FilterChain() {  
  2.   
  3.     public void doFilter(final ServletRequest arg0,  
  4.   
  5.             final ServletResponse arg1) throws IOException,  
  6.   
  7.             ServletException {  
  8.   
  9.         System.out.print("run filter");  
  10.   
  11.     }  
  12.   
  13. };  
  14.   
  15. try {  
  16.   
  17.     System.out.print("start filter");  
  18.   
  19.   
  20.   
  21.     this.filter.doFilter(request, response, filterChain);  
  22.   
  23.     assertNull(response.getRedirectedUrl());  
  24.   
  25. catch (IOException e) {  
  26.   
  27.     // TODO Auto-generated catch block  
  28.   
  29.     e.printStackTrace();  
  30.   
  31. catch (ServletException e) {  
  32.   
  33.     // TODO Auto-generated catch block  
  34.   
  35.     e.printStackTrace();  
  36.   
  37. }  



第2个例子:
 
  1. public int executeUpdate(final String hql, final Map pMap) {  
  2.         int result = 0;  
  3.         Object o = getHibernateTemplate().execute(new HibernateCallback() {  
  4.             public Object doInHibernate(final Session session)  
  5.                     throws HibernateException {  
  6.                 int result = 0;  
  7.                 Query queryObject = session.createQuery(hql);  
  8.                 String[] params = queryObject.getNamedParameters();  
  9.                 for (int i = 0, max = params.length; i < max; i++) {  
  10.                     queryObject.setParameter(params[i], pMap.get(params[i]));  
  11.                 }  
  12.                 result = queryObject.executeUpdate();  
  13.                 return result;  
  14.   
  15.             }  
  16.         });  
  17.         Integer i = (Integer) o;  
  18.         result = i.intValue();  
  19.         return result;  
  20.     }  



HibernateTemplate 巧妙使用了 HibernateCallback使得dao 的代码非常优雅!
分享到:
评论

相关推荐

    java中Callback简单使用总结

    正好学习到java Callback,就整理了一下,希望整理的文章内容对大家有所帮助

    java CallBack(回调函数)

    简要说明接口回调:即使实现接口类的引用赋值给该接口申明的变量,然后该变量就可以调用接口中的方法了(当接口变量调用接口中的方法的时候,实际上我们处理的是该接口实现类中的相应的函数的实现部分)。

    java callback

    java callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava callbackjava ...

    JAVA_API1.6文档(中文)

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    Java_JNI_Callback.rar_4 3 2 1_J2SDK1.4.0_Java_JNI_Callback_cl.dl

    compile Callback.java 2. compile the native code into a shared lib cl /Ie:\j2sdk1.4.0\include /Ie:\j2sdk1.4.0\include\win32 /LD /FeMyImpOfCallback.dll Callback.c 3. run: java Callback

    详解Observer Pattern(观察者模式)在Java中的使用原理

    对于C#的委托、代理概念所使用的Callback(回调模式--参见本人的“第一个C#程序Hello World ”资源)来看,Java Swing编程是纯粹的OO语言、是一种非常优雅的编程语言(本人认为)--而C#的学习好像非常强调所谓的OO思想...

    详解 JAVA的回调机制CallBack

    最近学习java,接触到了回调机制(CallBack)。初识时感觉比较混乱,而且在网上搜索到的相关的讲解,要么一言带过,要么说的比较单纯的像是给CallBack做了一个定义,本文给大家介绍JAVA的回调机制CallBack,感兴趣的...

    Java 1.6 API 中文 New

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    JavaAPI1.6中文chm文档 part1

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    Android java 回调例子

    相信很多初学android java的童鞋们都不太懂回调的意思,我当时也是这样的什么这个跳到那个然后又从那个调用这个的方法。。。弄得晕头转向的,今天我突然顿悟,于是写了一个回调例子与大家分享,由于手头分不多了,...

    Java 回调机制(CallBack) 详解及实例代码

    主要介绍了 Java 回调机制(CallBack) 详解及实例代码的相关资料,需要的朋友可以参考下

    Callback_Androidjni_AndoidJNI层到Java层的调用_android_android回调_

    例子中包含Android 应用程序和JNI的程序,实现充JNI到java层的回调

    JavaAPI中文chm文档 part2

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    java api最新7.0

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    java jdk-api-1.6 中文 chmd

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    nodejs调用建行互联网银企被扫支付接口加密及验签Demo+java封装jar包

    nodejs调用java可以通过child_process模块中的spawn()函数实现。 var spawn = require('child_process').spawn;  nodejsJava.encryptccbParam=function(flag,param,pubKey,callback){//必须传入4个参数}  

    okhttp3.0二次封装(独立的3个java文件封装的)

    代码很简单,只有三个Java文件,建议下载后将Java文件拷贝到工程中使用。 封装的功能有: 一般的get请求 一般的post请求 一般的put请求 一般的delete请求 上传单个文件(包含进度) 上传list集合文件 上传map...

    Android JNI多线程编程回调JAVA函数

    通过JNI接口静态注册的native方法去创建线程,同时提供native回调Java的方法。通过这个框架可以去实现线程监听某一个状态,然后回调Java的方法(如发消息去通知顶层,实现显示)

    设计模式Callback介绍与实例

    回调函数(callback Function),顾名思义,用于回调的函数。 回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数。回调函数是一个工作流的一部分,由工作流来决定函数的调用(回调)时机。回调...

Global site tag (gtag.js) - Google Analytics