Error Errorcom.microsoft.sqlserver.jdbc.SQLServerException: 必须执行该语句才能获得结果。 调用失败

import java.sql.*;import java.io.*;public class JdbcStoredProcedureTest { public static void main(String[] args) { JdbcStoredProcedureTest spt = new JdbcStoredProcedureTest(); spt.StoredProcedureWithoutParamsTest(); } //带参数调用过程 public static void StoredProcedureWithoutParamsTest() { try { System.out.println("调用p_query_stu_info_with_stuno带参函数"); //注册数据库驱动 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //链接数据库 Connection cn = DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=xsxkxt;user=sa;password=zhidao"); //建立存储过程 String proc = "{call p_query_stu_info_with_stuno(?,?,?)}"; CallableStatement cstmt = cn.prepareCall(proc); //设置存储过程调用的参数 BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); System.out.print("请输入学号:"); String stuNo = br.readLine(); //设置学号 cstmt.setString(1,stuNo); //注册输出参数 cstmt.registerOutParameter(2,Types.VARCHAR); cstmt.registerOutParameter(3,Types.NVARCHAR); //执行调用过程 String stuName = cstmt.getString(2); int stuAge = cstmt.getInt(3); System.out.print("学号为:"+ stuNo + "的学生信息"); System.out.print("姓名:"+ stuName ); System.out.print("年龄:"+ stuAge ); // 关闭资源 cstmt.close(); cn.close(); System.out.println("调用成功"); } catch(Exception e) { System.out.println("Error"); System.out.println("Error" + e); System.out.println("调用失败"); } }}
没有最底下的那张图片

jdbc和连接池对于你这个场景来说,都足够,既然用spring管理了,建议还是使用连接池,另外,spring自身没有实现连接池,一般都是对第三方连接池的包装,常见的有C3P0,dbcp以及最近比较流行的boneCP等,这几个配置都差不多太多,以boneCP为例:
<bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource"
destroy-method="close">
<property name="driverClass" value="${jdbc.driverClass}" />
<property name="jdbcUrl" value="${jdbc.url}" />
<property name="username" value="${jdbc.user}" />
<property name="password" value="${jdbc.password}" />
<property name="idleConnectionTestPeriod" value="60" />
<property name="idleMaxAge" value="240" />
<property name="maxConnectionsPerPartition" value="30" />
<property name="minConnectionsPerPartition" value="10" />
<property name="partitionCount" value="2" />
<property name="acquireIncrement" value="5" />
<property name="statementsCacheSize" value="100" />
<property name="releaseHelperThreads" value="3" />
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource" />
</bean>
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网