`
zrweng
  • 浏览: 25724 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

如何获取PreparedStatement参数设置的值?

阅读更多
如:
 String sql="select * from table where field1=? and field2=? "
 ...
 preparedStatement.setString(1,"a");
 preparedStatement.setString(2,"b");


怎样才能获取 preparedStatement的参数值a,b?
分享到:
评论
15 楼 diandidemeng 2007-07-26  
收下了,刚好用上
14 楼 spiritfrog 2007-05-29  
codeutil 写道

ibm有篇现成的文章,通过装饰模式来实现.

http://www-128.ibm.com/developerworks/cn/java/j-loggable/j-loggable.zip

http://www-128.ibm.com/developerworks/cn/java/j-loggable/index.html

JDBC 查询日志变得简单

使用增强型PreparedStatement向JDBC代码增加日志功能

级别: 初级

Jens Wyke, 顾问, IBM

2003 年 7 月 17 日


j-loggable的代码我看了一下,确实部分方法没有实现,但是增加日志的方法已经有了,剩下的自己稍作修改就可以用了。其实是用的装饰模式实现增强型PreparedStatement,PreparedStatement接口的实现多数还是通过一个wrappedStatement(已经实现了PreparedStatement)来完成,那些没有实现的方法只要调用wrappedStatement同名方法即可。
13 楼 lovexixi 2007-05-26  
唉,两个?需要两个参数填充饿
12 楼 sorphi 2007-05-23  
试试dimple?

http://www.iteye.com/topic/38299
11 楼 jenny825 2007-05-22  
Proxy就可以了!

参考下 ibatis 中的PrepareStatementProxy
10 楼 jvincent 2007-02-12  
j-loggable可以直接用的...修改一下即可
9 楼 jvincent 2007-02-12  
这个应该有很多人会用到,能否共享一下?
8 楼 zrweng 2006-09-25  
OK,可以了,修改了一下P6spy的源码
7 楼 zrweng 2006-09-25  
用了一下p6spy还不错,但是能否修改p6spy的输出格式?
未赋值的statement不想显示,否则有点乱
6 楼 kof99th 2006-09-25  
用p6spy,设置一下就行
5 楼 zrweng 2006-09-24  
各位是通过什么方式打印出PrepareStatement设置参数后的SQL?
4 楼 zrweng 2006-09-23  
谢谢楼上,不过那个j-loggable不能直接用,没有全部实现PrepareStatement接口
3 楼 codeutil 2006-09-23  

ibm有篇现成的文章,通过装饰模式来实现.

http://www-128.ibm.com/developerworks/cn/java/j-loggable/j-loggable.zip

http://www-128.ibm.com/developerworks/cn/java/j-loggable/index.html

JDBC 查询日志变得简单

使用增强型PreparedStatement向JDBC代码增加日志功能

级别: 初级

Jens Wyke, 顾问, IBM

2003 年 7 月 17 日

2 楼 zrweng 2006-09-23  
ParameterMetaData 没有获取参数值的方法。
我是想在PreparedStatement绑定参数后,把SQL(含设置后的参数值)log出来
1 楼 jobs002 2006-09-23  
好像是这个方法.
getParameterMetaData
ParameterMetaData getParameterMetaData()
                                       throws SQLException检索此 PreparedStatement 对象的参数的编号、类型和属性。

返回:
一个 ParameterMetaData 对象,它包含有关此 PreparedStatement 对象的参数的编号、类型和属性的信息
抛出:
SQLException - 如果发生数据库访问错误
不过还是不明白,"select * from table where field=? and field=?"
我想设置的参数应该是通过函数参数传递过来,
获取 preparedStatement的参数值a,b又有什么意义??

相关推荐

Global site tag (gtag.js) - Google Analytics