Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 调整jsp页面上的图片大小,该页面显示';它存储在数据库中_Java_Database_Jsp_Blob - Fatal编程技术网

Java 调整jsp页面上的图片大小,该页面显示';它存储在数据库中

Java 调整jsp页面上的图片大小,该页面显示';它存储在数据库中,java,database,jsp,blob,Java,Database,Jsp,Blob,我试图设置从数据库中提取的jsp页面上图片的大小 我可以得到图像好,但它填补了整个页面 有人知道如何设置图片的大小吗 谢谢 以下是我在jsp上的代码: <% Blob image = null; byte[] imgData = null; Connection con; String url="jdbc:mysql://localhost:3306/comshopDatabase"; String uName="root"; String pwd=""; Class.forNa

我试图设置从数据库中提取的jsp页面上图片的大小

我可以得到图像好,但它填补了整个页面

有人知道如何设置图片的大小吗

谢谢

以下是我在jsp上的代码:

<%

Blob image = null;  
byte[] imgData = null;  
Connection con;
String url="jdbc:mysql://localhost:3306/comshopDatabase";
String uName="root";
String pwd="";
Class.forName("com.mysql.jdbc.Driver").newInstance();
    con=DriverManager.getConnection(url,uName,pwd);
    String sql="Select image from images WHERE id = '1' ";
    PreparedStatement stmt=con.prepareStatement(sql);

    ResultSet resultset=stmt.executeQuery();
while(resultset.next())
{

    Blob bl = resultset.getBlob("image");
    byte[] pict = bl.getBytes(1,(int)bl.length());
    response.setContentType("image/jpg");
    OutputStream o = response.getOutputStream();



%>
<TABLE BORDER="1">
<TR>
<TH>picture</TH>
</TR>
<TR>


<td>Image</td><td><%o.write(pict);%></td>
    <%o.flush();
    o.close();%>

<TD> <%= resultset.getString(2) %> </TD>
<TD><%= resultset.getString(3) %></TD>
</TR>
</TABLE>
<BR>
<%
o.flush();
o.close();
}
%>

照片
形象

您可以使用,可以从下载jar

下面是一个简单的例子:

int width =1200, height = 900;
BufferedImage image = ImageIO.read(<sourceFile>);// You can use InputStream as well here, in place of source file
BufferedImage thumbnail = Scalr.resize(image, Scalr.Method.SPEED, Scalr.Mode.FIT_TO_WIDTH,
                                       width, height , Scalr.OP_ANTIALIAS);
ImageIO.write(thumbnail, "jpg", new File(<destination file>)); // You can use OutputStream as well in place of destination file
int宽=1200,高=900;
BuffereImage image=ImageIO.read();//您也可以在这里使用InputStream来代替源文件
BuffereImage thumbnail=Scalr.resize(图像,Scalr.Method.SPEED,Scalr.Mode.FIT_至_宽度,
宽度、高度、比例、操作(别名);
image io.write(缩略图,“jpg”,新文件());//您也可以使用OutputStream代替目标文件

这是一种可怕的做法。使用一个
servlet
。我有一个用于上传的servlet,此代码仅用于测试显示。我是否将此部分代码放入servlet缓冲区image=ImageIO.read();然后,jsp中的其余部分呢?您应该将此代码放在任何需要重新调整图像大小的地方。我建议您将此代码放在某个实用程序类中。从servlet将
InputStream
传递到此实用程序方法,并返回调整大小的
OutputStream