我需要为不同范围的查询设置查询超时,具体取决于它们提取的数据。也就是说,每个查询都有自己的超时时间。
例如,查询A-> 10分钟
查询B-> 5分钟
现在,我如何使用getJDBCTemplate()设置这些不同的时间。当我尝试下面的代码片段时,超时设置被忽略,并且无论设置如何,两个查询都在同一时间超时!
Thread t1 = new Thread(new Runnable() {
public void run() {
getJdbcTemplate().setQueryTimeout(5);
List t = getJdbcTemplate()
.query("select top 10000 * from ABC",new RowMapper<T>(){
..
});
Thread t2 = new Thread(new Runnable() {
public void run() {
getJdbcTemplate().setQueryTimeout(10);
List t = getJdbcTemplate()
.query("select top 30000 * from XYZ",new RowMapper<T>() {
..
});
t1.start();
t2.start();
Run Code Online (Sandbox Code Playgroud)
在上述情况下,两个查询都在第5分钟或第10分钟超时。有没有一种方法可以根据查询进行设置?请提出建议!
[更新]
<bean id="dSource" class="com.xyz.DSource" >
<property name="dataSource" ref="dataSource"/>
</bean>
public abstract class AbstractData {
private DSource dSource;
public JdbcTemplate getJdbcTemplate(){ …Run Code Online (Sandbox Code Playgroud) 我有以下代码,
Object testA = new Object();
Object testB = testA;
System.out.println("A:"+testA.hashCode())
System.out.println("B:"+testB.hashCode())
Run Code Online (Sandbox Code Playgroud)
根据上面的内容,我得到了两个对象的相同哈希码.我知道testB被分配了testA,所以它可以有相同的哈希码,但是应该有一种方法可以唯一地识别这两个对象的差异吗?
如果有遗漏的东西,请告诉我!
SVN和Nexus在开发和集成期间被广泛用作源代码的存储库.也就是说,当我们可以通过SVN设置我们的存储库时,为什么我们真的需要使用Nexus?即使是SVN也有适当的版本控制架构,并广受好评.
通过谷歌浏览,但似乎没有提供明显的差异.请澄清我.
我有点困在jqgrid中的searchoptions属性.当我点击网格中的搜索图标并使用'下拉列表'遍历该字段时,我会在firefox和IE8中看到以下错误
FF:TypeError:g 在jquery.jqGrid.min.js中未定义(第239行)
IE:消息:'postData'为null或不是对象Line:238
以下是代码段,
{name:'City', index:'City', width:80, align:'right',
editable: true,search:true,edittype: 'select',stype:'select',
searchoptions: {
ajaxSelectOptions: {type: "GET",datatype:"text"},
dataUrl: '/TESTAPP/Test',
dataEvents: [
{ type: 'change',
fn: function(e) {
alert(this.value)
}
}
]}
Run Code Online (Sandbox Code Playgroud)
我甚至没有看到请求命中服务器,这是非常奇怪的.
PS:同样适用于editoptions
版:
jqGrid:4.4.5
jquery:1.9.1
谢谢你的帮助!