1、在数据库中添加存储过程:
delimiter //
CREATE PROCEDURE demoPro(IN param1 VARCHAR(255),INOUT param2 VARCHAR(255))
BEGIN
SELECT CONCAT ('wxr---',param1) into param2;
END
//
delimiter ;
说明:这个存储过程的功能是,将param1字符串拼接在字符串“wxr”的后面。然后将拼接结果赋给param2
2、编写java代码
Connection conn = null;
CallableStatement stmt = null;
ResultSet rs = null;
try {
conn = JdbcUtils.getConnection();
String sql = "{call demoPro(?,?)}";
stmt = conn.prepareCall(sql);
//给存储过程sql中的输入参数赋值,即给param1赋值
stmt.setString(1, "mr_wang__");
//存储过程的输出参数:即执行结果param2,要执行完之后才得结果;执行之前要告知输出参数的联系。
stmt.registerOutParameter(2, Types.VARCHAR);
//执行
stmt.execute();
//执行完毕,控制台打印param2的值
String result = stmt.getString(2);
System.out.println(result);//结果为:wxr---mr_wang__
} catch (Exception e) {
e.printStackTrace();
}finally{
JdbcUtils.release(rs, stmt, conn);
}