- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将 Axis2 与 Apache Tomcat 结合使用。我需要 web 服务的客户端能够查询数据库,所以我在网上找到,通过将以下资源添加到 Tomcat 的上下文中,它会自动创建一个连接池:
Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource" removeAbandoned="true" removeAbandonedTimeout="30" maxActive="80" maxIdle="30" maxWait="10000" username="user" password="" driverClassName="org.postgresql.Driver" url = "jdbc:postgresql://localhost:5432/mydb" useUnicode="true" characterEncoding="utf-8" characterSetResults="utf8" validationQuery="/* ping */ SELECT 1"
它似乎可以工作,但现在我想做的是重用相同的 PreparedStatement,这样它就不会在每次客户端发出请求时都被解析。因此,我将所有客户端连接的 PreparedStatement 设为静态,当我创建它时,我调用 statement.setPoolable(true),据我所知,这是多余的(PreparedStatement 已经是可池化的)。我希望通过这种方式,PreparedStatement 不会绑定(bind)到单个连接。仍然,我收到错误:
java.sql.SQLException:地址为 * 的 org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement 已关闭。
奇怪的是,如果我在进行任何设置之前调用 statement.isClosed(),它会返回 false。然后,我设置了一些东西,它抛出了那个异常。
代码是:
尝试{
连接连接;
上下文 envCtx = (上下文) new InitialContext().lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/TestDB");
conn = ds.getConnection();
如果(语句== null){
//语句是静态的,所以在第二次调用时它不会为空
statement = conn.prepareStatement(query);
statement.setPoolable(true);
}
如果(语句。isClosed()){
statement = conn.prepareStatement(query);
//它永远不会到达这里
}
别的{
Logger.getLogger(HelloAxisWorld.class.getName()).log(Level.INFO, "STATEMENT IS NOT CLOSED", new Object());
//它总是到达这里
}
statement.setString(1, par1);//这里,第二次调用抛出异常
结果集 rs = statement.executeQuery();
while (rs.next()) {
cur_value = rs.getInt("cur_value");
}
rs.close();
conn.close();
} catch (异常前){
Logger.getLogger(HelloAxisWorld.class.getName()).log(Level.SEVERE, null, ex);
}
我不明白为什么 statement.isClosed 返回 false,但随后异常显示它已关闭。也许这不是重用 preparedStatement 的方法,但是我该怎么做呢?我读到,如果我在同一查询上调用 conn.prepareStatement,jdbc 将从缓存中返回 PreparedStatement(不会再次解析),但我不确定它是否属实。
最佳答案
有一个名为 c3p0 的项目专门用于处理您遇到的其中一种情况。网址在这里https://sourceforge.net/projects/c3p0/在这里 http://www.mchange.com/projects/c3p0/它处理数据源 JNDI 绑定(bind)、连接池和语句池。还有一个关于 stackoverflow 的引用,有人将这个库与 servlets 一起使用 what-is-a-good-strategy-for-caching-prepared-statements-in-tomcat
关于java - PreparedStatement 和 Axis2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12949143/
我正在使用 HighCharts 线图,其中我的 x Axis 数据分布不均匀: [4, 10, 40, 100, 400, 1000, etc.] 目前,x 值均匀放置。我希望 x[5] 和 x[4
这是我使用的程序: library(plotly) mydata = read.csv("data_to_plot.txt") df = as.data.frame(mydata) p % gro
我一直在试图找到2之间的差异,但是要减去这个就没有运气了 The primary diff erence between the two representations is that a quate
给定一个没有 Axis 的图,我想使用 axis 添加一个水平 Axis 。在左侧,您会看到给定的“基线”图,在右侧,您会看到所需的结果: 基线图是使用简单生成的 plot(1, axes = FAL
我正在创建 XYPlot,并且需要反转 y Axis 上的顺序(也就是说,我需要较低的数字来使 Axis 上的数字较高)。如果有任何关于如何做到这一点的提示,我将不胜感激。 最佳答案 我也遇到了和你一
我有一个包含两个系列的图表,每个系列都有自己的yAxis。我需要自动将第二个轴最大值设置为第一个轴最大值的 13.5%。例如,如果第一个轴从 0 到 100,那么我希望第二个轴从 0 到 13.5(无
在 google 图表数据表对象中,我可以使用 datatable.getValue(...) 获取当前选择点值(V 轴/Y 轴)。但是,如果我想从 X 轴获取时间/日期/年份(请参见屏幕截图)。我没
我想知道是否有可能(我知道是)将绘图的 Axis 标签保留在绘图的一侧,将绘图的 Axis 标题保留在另一侧,特别是在离散的 geom_tile() 绘图中,如下所示: 最佳答案 您可以在 scale
我正在尝试制作带有自定义 Axis 标签的箱线图,但我似乎无法向图中添加 x Axis 。 例如: test <- data.frame(year=as.integer(rep(1963:2014,
我正在使用 LightningChartJS 创建图表。单击图例框中的系列描述后,系列消失,但 Axis 保留。是否可以将 Axis 与系列一起隐藏? 我的 Axis 和系列如下:- const ax
我有一个关于如何获取另一个 Axis 服务中已部署的 Axis 服务列表的问题。这是场景。我使用 Tomcat 7.0.14 和 Axis 2-1.5.5 作为部署环境。假设目前 Tomcat 上部署
我目前正在尝试使用包含两个 y Axis (一个在左边,一个在右边)的 AChartEngine 创建一个图表。然而,我似乎无法弄清楚如何才能真正添加第二个 y Axis 。一个 XYMultip
我正在使用 Core Plot 库在 iOS 上绘制图形。我想在 yAxis 的网格线之间添加颜色。我已经设法通过设置轴的 alternatingBandFills 属性来做到这一点。但是,我也必须在
我想知道是否有办法改变 x 轴刻度和 y 轴刻度背景的背景颜色以及字体颜色。 例如在 example in this link ,您可以看到代码的 x 轴(0,2,4,5..)和 y 轴(12,10,
我部署在 Weblogic 集群上的 Java 应用程序调用了如下两个 Web 服务。 • 它通过 HTTPS 向互联网上的外部应用程序发送 SOAP 客户端请求。(通过 Axis 1.4 创建的 J
我正在尝试为 x 和 y 设置 Axis ,但每次尝试时,热图都会缩小到绘图的一角。我试试 plt.xlim(0, 60) plt.ylim(0, 30) 我也试过: ax.set_ylim(0, 3
使用 DC js,尝试将 rowChart 设置为固定 X Axis 为 0-100。但是将其绘制为一条线? 我设置了 .elasticX(false) 并且看起来像上面那样。设置为 true 看起来
我有一些法语等级的学生成绩数据(双值,范围从 0 到 20)。 目前,在允许将日期作为 X 轴的散点图(用线连接点)上,我的 Y 轴上的成绩是双倍的,而 X 轴上是一系列学期结束日期。 使用以下间隔映
我正在尝试制作一个极坐标“sypder”图,但我在 Axis 标签方面遇到了一些问题。 xaxis 刻度标签似乎总是在 y Axis 网格下方的层上结束(字母被网格线覆盖,如下图所示),我希望它们在顶
我正在尝试使用ggplot2包绘制以下图形,但是以某种方式不会显示轴。刻度线在那里,而不仅仅是轴线。我使用了theme(axis.line=element_line())函数,但无法正常工作。 这是我
我是一名优秀的程序员,十分优秀!