CREATE PROCEDURE `outputstring`(out tmoney char(20),out tage int)
BEGIN
select max(money) into tmoney from t_user;
select max(age) into tage from t_user;
END;
package test;
import java.sql.*;
import java.sql.ResultSet;
public class Test {
public static void main(String[] args) {
String driver = "com.mysql.jdbc.Driver";
String strUrl = "jdbc:mysql://127.0.0.1:3306/java_test";
ResultSet rs = null;
Connection conn = null;
CallableStatement stmt = null;
try {
Class.forName(driver);
conn = DriverManager.getConnection(strUrl, "root", "pass");
stmt = conn.prepareCall("{ call java_test.outputstring(?,?) }");
stmt.registerOutParameter(1, Types.VARCHAR);
stmt.registerOutParameter(2, Types.INTEGER);
stmt.execute();
String i= stmt.getString(1);
int i2= stmt.getInt(2);
System.out.println("count = " + i);
System.out.println("count2 = " + i2);
} catch (SQLException ex2) {
ex2.printStackTrace();
} catch (Exception ex2) {
ex2.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
}
} catch (SQLException ex1) {
}
}
}
}