我刚把我的第一个回购推送到github但是当我浏览我的html时它被用作txt.这是我可以设置类似于svn的道具吗?或者这只是一个github不足?
我似乎无法在git,github或这里找到任何有用的东西.
我们使用Spring SimpleJdbcCall来调用返回游标的Oracle中的存储过程.看起来SimpleJdbcCall没有关闭游标,一段时间后超出了最大打开游标.
ORA-01000: maximum open cursors exceeded ; nested exception is java.sql.SQLException: ORA-01000: maximum open cursors exceeded spring
Run Code Online (Sandbox Code Playgroud)
在论坛上有一些其他人经历过这个,但似乎没有答案.它看起来像我在spring/oracle支持中的bug.
这个bug很关键,可能影响我们将来使用Spring JDBC.
有没有人遇到过修复 - 要么将问题跟踪到Spring代码,要么找到避免问题的解决方法?
我们使用的是Spring 2.5.6.
这是使用SimpleJdbcCall的代码的新版本,它似乎无法正确关闭proc通过游标返回的结果集:
...
SimpleJdbcCall call = new SimpleJdbcCall(dataSource);
Map params = new HashMap();
params.put("remote_user", session.getAttribute("cas_username") );
Map result = call
.withSchemaName("urs")
.withCatalogName("ursWeb")
.withProcedureName("get_roles")
.returningResultSet("rolesCur", new au.edu.une.common.util.ParameterizedMapRowMapper() )
.execute(params);
List roles = (List)result.get("rolesCur")
Run Code Online (Sandbox Code Playgroud)
不使用Spring JDBC的旧版本代码没有此问题:
oracleConnection = dataSource.getConnection();
callable = oracleConnection.prepareCall(
"{ call urs.ursweb.get_roles(?, ?) }" );
callable.setString(1, (String)session.getAttribute("cas_username"));
callable.registerOutParameter (2, oracle.jdbc.OracleTypes.CURSOR);
callable.execute();
ResultSet rset = …Run Code Online (Sandbox Code Playgroud) 我正在设计一个包装我的REST API的JavaScript API.我通常希望避免大量冗长和混乱的嵌套回调,并且已经阅读了Deferred jQuery的优点.
让我们想象一下我的库'myLib',它代表人物对象和人物之间的遍历方式.它有一堆方法,比如'爸爸','老板','助手'等需要做一个ajax请求来查找一些数据并返回另一个相关的'people'对象.但我希望他们返回一个延迟对象,该对象也有myLib的方法,我可以链接在一起,编写真正简洁的简单代码,如下所示:
myLib('me').dad().boss().assistant(function(obj){
alert(obj.phone); // My dad's, bosses assistants phone number
}, function(){
alert('No such luck);
});
Run Code Online (Sandbox Code Playgroud)
这会创建一个'我'人物对象,然后进行第一次ajax调用以查找我的详细信息,然后使用该数据进行另一次调用以找出我的父母,然后再次找到我的老板,然后再找到另一位助手,然后最后,这传递给我的回调,我处理它.有点像jQuery的链式遍历方法,但异步.
在任何一点传递函数,但通常是最后一个方法,在解析链中的最后一个Deferred对象时将在内部调用.第二个函数是失败回调,如果链中的任何延迟对象被拒绝,则调用该函数.
我想我需要创建一个jQuery延迟对象,然后扩展它但不确定这是否是"最佳"方式.
那么实现我的极简主义API目标的最佳实践方法是什么?基本上我希望所有的方法名称在域问题名称空间中都是100%,并且没有被大量的'when','done','success'等污染.
是否有类似的清洁API的例子,我可以在某处模拟?