首先先在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” />
新增成功后的数据库保存数据
双击后显示新增的图片