<<上篇 | 首页 | 下篇>>

使用jdbcdslog 跟踪 JDBC-记录带有详细参数值的SQL

jdbcdslog 是一款用来跟踪 JDBC 的全功能工具,记录带有详细参数值的SQL。

特征包括:
- 可挂接到数据库连接, 驱动或数据源上(XA, 连接池)
- 可记录 PreparedStatement 和 CallableStatement 调用所绑定的参数
- 可记录 ResultSet 对象中的查询记录行
- 可记录查询执行时间
- 支持多种日志引擎 (感谢 SLF4J, 你可以使用多数流行的日志组件库, 像 log4j, apache common logging, java logging 或者简单的输出到 System.out)

你有三种选择去配置日志代理:

- 在你的代码中包裹 JDBC 连接. 
用下面那样的构造方式:
Connection loggingConnection = ConnectionLoggingProxy.wrap(originalConnection);

- 配置 JDBC Driver 的日志代理. 
在这种方法中,你必须使用 org.jdbcdslog.DriverLoggingProxy 来替代你原本的 JDBC Driver 类,并使用 jdbcdslog 的 URL 格式,原连接的 URL 作为它的参数:
jdbc:jdbcdslog:;targetDriver=

- 配置 JDBC 数据源日志代理.

这种方式下,你需要使用 org.jdbcdslog.ConnectionPoolXADataSourceProxy 类来替代你自己的 DataSource 实现类, 还要传递一个值为 DataBase 或 URL 的附加参数 targetDS 作为新的 DataSource 的配置项.

更多信息和配、配置实例、jar 文件和源代码,请参看该项目的网站: http://code.google.com/p/jdbcdslog/.

 

 

jdbcdslog支持DataSource(XA,Pooling):

 Spring DI

    <jee:jndi-lookup id="mssDataSourceActual" jndi-name="${mss.dataSource.main.jndiName}"/>

    <bean id="mssDataSource" class="org.jdbcdslog.ConnectionPoolXADataSourceProxy">

        <property name="targetDSDirect" ref="mssDataSourceActual" />

    </bean>

jndi的使用,请google

Weblogic + Oracle

  <jdbc-driver-params>

    <url>jdbc:oracle:thin:@10.100.53.85:1521:cmn?targetDS=oracle.jdbc.xa.client.OracleXADataSource</url>

    <driver-name>org.jdbcdslog.ConnectionPoolXADataSourceProxy</driver-name>

    <properties>

      <property>

        <name>user</name>

        <value>mssapp</value>

      </property>

      <property>

        <name>serverName</name>

        <value>10.100.53.85</value>

      </property>

      <property>

        <name>portNumber</name>

        <value>1521</value>

      </property>

      <property>

        <name>SID</name>

        <value>cmn</value>

      </property>

    </properties>

    <password-encrypted>{3DES}ThgsfHr3yB1bfpnD4u/t3A==</password-encrypted>

  </jdbc-driver-params>

 

标签 : , ,

使用 jQuery Mobile 快速开发 mobile 网站

 使用过 jQuery 的人一定都爱死 jQuery 有名的 “write less, do more” 。只要透过 jQuery,  我们就不用再担心恼人的跨浏览器问题。但随着手持式装置的渐渐普及,大家开始发现跨览器问题到了手机上反而比 PC 上更加严重:在手机上不只是浏览器不同,OS 的歧异度也比 PC 上来得更加严重。于是,在 2010  10  jQuery 终于在大家的期待之下推出了jQuery Mobile。只要使用这个简单易用的 framework, 很快就可以做出跨 device  mobile appilcationjQuery Mobile 几个重要的 features 包括:

§ jQuery mobile 可以跨不同的移动装置
jQuery mobile  
可以 support 许多不同的平台,包括:iOS, Android, Blackberry, Palm WebOS, Nokia/Symbian, Windows Mobile, bada, MeeGo,以及其他可以看得懂 HTMLdevices详细的支持状况可以参考 Mobile Graded Browser Support
§ Progressive Enhancement & Graceful Degradation
“taking a fully functional HTML web page, layering on additional JavaScript functionality, and giving capable browsers a top-of-the-line experience.”
让较旧的手机一样可以看到基本的功能(even 不支持 javascipt !! ),同时又可以让支持度比较好的浏览器享受较先进的功能。
§ 透过设定 HTML 标签来完成 jQuery Mobile 的设定
jQuery 
主要是透过 HTML5 data-* tag 来达成种种 UI 的设定,只要认识了大概的语法,不用写一行 javascript,就可以快速建出 app 的雏型。对于对JavaSript 不热的设计师,或是对谈到 UI 设计就一个头两个大的工程师,jQuery mobile 的方便绝对让你爱不释手

阅读全文……

标签 : , , ,

Hadoop的五个典型应用场景

 

Hadoop作为大数据存储及计算领域的一颗明星,目前已经得到越来越广泛的应用。下面PPT主要分析了Hadoop的一些典型应用场景,并对其进行了深入分析,主要包括下面几个方面:

Common and unique use cases for Apache Hadoop

 

View more presentations from Brock Noland

 

 

标签 : ,