Jsp获取图片保存到MySQL

本文介绍了如何使用JSP和Servlet将图片数据以BLOB类型存储到MySQL数据库中。首先在JSP页面获取用户上传的图片文件,然后在Servlet中读取图片并将其写入数据库。通过执行SQL插入语句,将图片与其他用户信息一起保存。最后,展示了JSP页面用于显示已保存的图片。

首先先在po包里封装好字段,图片用blob类型
在这里插入图片描述
数据库可以给longblob保存图片
在这里插入图片描述
封装好驱动

直接到servlet一次性编写完成
public void addSave(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int a = 0;
获取新增jsp页面的值
String username = request.getParameter(“username”);
String password = request.getParameter(“password”);
String age = request.getParameter(“age”);
String power = request.getParameter(“power”);
String time = request.getParameter(“time”);
boolean online = request.getParameter(“online”) != null;
String imageF = request.getParameter(“image”);
图片设置路径为驱动的路径地址
String fullFileName = getServletContext().getRealPath(
“/upload/” + imageF);
用流写入该路径
FileInputStream in = new FileInputStream(fullFileName);
SQL新增语句
String sql = “insert into user(username,password,age,power,time,online,image) value(?,?,?,?,?,?,?)”;
PreparedStatement ps;
try {
获取驱动
ps = (PreparedStatement) DbUtil.getConnection().prepareStatement(sql);
写入值
ps.setString(1, username);
ps.setString(2, password);
ps.setString(3, age);
ps.setString(4, power);
ps.setString(5, time);
ps.setBoolean(6, online);
ps.setBinaryStream(7, in, (int) in.available());
a = ps.executeUpdate();
ps.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
关闭流
in.close();
查询所有表格数据显示
List users = userServlrt.selectAll();
传送参数到jsp
request.setAttribute(“users”, users);
跳转到jsp页面
request.getRequestDispatcher("/jsp/table.jsp").forward(request,
response);
}
Jsp页面
<img src="" alt="" width=“150” height="180"id=“IimgStudentPicture” /> <input type=“file” name="image"id=“IStudentPicture” />

新增成功后的数据库保存数据
在这里插入图片描述
双击后显示新增的图片
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值