gpt4 book ai didi

java - jsp 将 blob 图像保存在数据库 mysql 中 - 我的代码不起作用

转载 作者:行者123 更新时间:2023-11-30 03:20:09 25 4
gpt4 key购买 nike

我正在使用 Eclipse EE、JSP 和 servlet 创建一个动态 Web 项目。在项目中,用户将选择硬盘中的图像文件并将其发送到LongBlob字段中的mysql数据库。

这是我选择图像文件的表单:

    <form name="formfoto1" action="guardafotonueva.jsp" method="post">
Comentario:
<input type="text" name="comentariofoto1">
<input type="file" name="archivofoto1">
<input type="submit" name="subir" value="Enviar foto">
</form>

这是不起作用的代码:

<% String cadenanombre, cadenausuarioadmin, cadenaclaveadmin;
Connection conexion = null;
String nombrearchivofoto1, sqlfoto1, cadenacomentariofoto1, cadenacodigofoto1, cadenaarchivofoto1;
FileInputStream fisfoto1 = null;
PreparedStatement psfoto1, pscodigof1;
Vector<Integer> vectorcodigofotos;
Vector<Integer> vectorcodigocliente = new Vector<Integer>();
ResultSet rscodigof1, rscantidadclientes;
Integer rcodigof1 = 11, cantidadclientes = 0, vn;
String sql, sqlcodigof1; vectorcodigofotos = new Vector<Integer>();
String sqlactualizaclientesfotos, cadenaarchivo, cadenacodigotemafoto1, cadenacodigofotofoto1;
cadenacomentariofoto1 = request.getParameter("comentariofoto1"); URL url;
cadenaarchivofoto1 = request.getParameter("archivofoto1"); File file = null;
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conexion = DriverManager.getConnection("jdbc:mysql://localhost/entrenam_contenidos", "entrenam_bruno", "Bsl30121986");
session.setAttribute("sessionfoto1", cadenaarchivofoto1);
file = new File("C://Users//Aloisio//fotos//"+cadenaarchivofoto1);
}
catch(Exception ex)
{
out.println("Conexion sigue con problemas");
}
sqlcodigof1 = "select codigof1 from foto1 order by idf1 desc limit 1";
out.println("Cadena foto: "+cadenaarchivofoto1+" su longitud es: "+cadenaarchivofoto1.length()+"</br>");
pscodigof1 = conexion.prepareStatement(sqlcodigof1);
rscodigof1 = pscodigof1.executeQuery();
while(rscodigof1.next())
{
rcodigof1 = rscodigof1.getInt("codigof1"); vectorcodigofotos.addElement(rcodigof1); rcodigof1++;
}
session.setAttribute("codigosfotos", vectorcodigofotos);
session.setAttribute("cantidadfotos", vectorcodigofotos.size());

sql = "insert into foto1 (codigof1, comentariof1, archivof1, blobf1) values (?, ?, ?, ?)";
psfoto1 = conexion.prepareStatement(sql);
file = new File("C://Users//Aloisio//fotos//"+cadenaarchivofoto1);
fisfoto1 = new FileInputStream(file);
psfoto1.setInt(1, rcodigof1);
psfoto1.setString(2, cadenacomentariofoto1);
psfoto1.setString(3, cadenaarchivofoto1);
psfoto1.setBinaryStream(4, fisfoto1, (int) (file.length()));
psfoto1.execute();

%>
</body>
</html>

最佳答案

尝试

<form name="formfoto1" action="guardafotonueva.jsp"  enctype="multipart/form-data" method="post">

而不是

<form name="formfoto1" action="guardafotonueva.jsp" method="post">

关于java - jsp 将 blob 图像保存在数据库 mysql 中 - 我的代码不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31518311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com