|
楼主 |
发表于 2018-6-1 10:38:04
|
显示全部楼层
请您帮我看看我自定义中的这段代码有问题吗,红色字体部分,因为走到这段代码后页面会发生跳转。
// 获取图片
public static JSONObject getTP(JSONObject params, final ActionContext context) throws ServletException, IOException, AddressException, MessagingException {
String id = params.getString("Strid"); //前端传过来的参数
System.out.println("*****************************");
System.out.println("id:"+id);
HttpServletRequest request = (HttpServletRequest) context.get(ActionContext.REQUEST);
HttpServletResponse response = (HttpServletResponse) context.get(ActionContext.RESPONSE);
PreparedStatement pstmt = null;
Connection conn = null;
String sql1 = "";
ResultSet rs = null;
JSONObject result = new JSONObject();
String FilePath = null;
try {
conn = context.getConnection("txxt");
sql1 = "SELECT EXT,ID,T_NAME FROM ENTITY_INDEX WHERE VER=0 AND USED=1 AND ID ='" + id+"'";//查询后缀
System.out.println(sql1);
pstmt = conn.prepareStatement(sql1);
rs = pstmt.executeQuery();//返回的结果集
if(rs.next()){//遍历结果集
String ext = rs.getString("EXT");
System.out.println("ext:"+ext);
// GraphBizImpl biz = new GraphBizImpl();//将图片通过流的方法下载到本地指定文件下
if (".TIF".equals(ext)) {
String fileAddrName = "D://WORK/model/UI2/txxt/img/";
String tabName = "";
fileAddrName += rs.getString("ID") + rs.getString("EXT");
tabName = rs.getString("T_NAME");
System.out.println("tableName:"+tabName);
System.out.println("sql1123456897:"+sql1);
File file = new File(fileAddrName);
PreparedStatement pstmt1 = null;
ResultSet rs1 = null;
if (!file.exists()) {
String sql = "SELECT ENTITY FROM " + tabName + " WHERE VER=0 AND ID='" + id+"'";
pstmt1 = conn.prepareStatement(sql);
rs1 = pstmt1.executeQuery();
System.out.println("sql查询数据库图片数据语句:"+sql);
if (rs1 != null) {
if (rs1.next()) {
Blob blob = rs1.getBlob("ENTITY");
System.out.println("blob**************:"+blob);
InputStream ins = blob.getBinaryStream();
// 输出到文件
OutputStream fout = new FileOutputStream(file);
// 下面将BLOB数据写入文件
byte[] b = new byte[1024];
int len = 0;
while ((len = ins.read(b)) != -1) {
fout.write(b, 0, len);
}
// 依次关闭
fout.close();
ins.close();
}
}
}
System.out.println("转换后的地址:" + fileAddrName);
String src = fileAddrName;
result.put("src", src);
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
conn.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}
return result;
}
|
|