Error Errorcom.microsoft.sqlserver.jdbc.SQLServerException: 必须执行该语句才能获得结果。 调用失败
importjava.sql.*;importjava.io.*;publicclassJdbcStoredProcedureTest{publicstaticvoidm...
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("调用失败"); } }}
没有最底下的那张图片 展开
没有最底下的那张图片 展开
1个回答
展开全部
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>
<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>
仁科信息
2024-07-24 广告
2024-07-24 广告
Oracle EBS运维是确保企业资源规划系统稳定、高效运行的关键环节。它涵盖了系统监控、性能优化、故障排查与恢复等多方面内容。通过持续的监控和数据分析,运维团队能够及时发现并解决潜在问题,保障系统的稳定性和安全性。同时,他们还需要与业务部...
点击进入详情页
本回答由仁科信息提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询