java web 系统存图片到mysql数据库的方法_Java web 问题图片怎么存储到数据库。

本文展示了如何在Java Web应用中使用SmartUpload库上传图片,并将其存储到MySQL数据库。通过实例代码解释了文件上传、大小限制、文件类型检查、文件保存到服务器及数据库的过程。
摘要由CSDN通过智能技术生成

展开全部

package shop.car.control;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.jsp.JspFactory;

import javax.servlet.jsp.PageContext;

import shop.car.model.GoodService;

import com.jspsmart.upload.SmartUpload;

import com.jspsmart.upload.SmartUploadException;

public class ImageInput extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

this.doPost(request, response);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

PrintWriter out = response.getWriter();

PageContext pageContext = null;

JspFactory jsp = null;

// 实例化上载bean

SmartUpload mySmartUpload = new SmartUpload();

jsp = JspFactory.getDefaultFactory();

pageContext = jsp.getPageContext(this, request, response, "", true,

8192, true);

// 初始化

mySmartUpload.initialize(pageContext);

// 设置上载的最e5a48de588b63231313335323631343130323136353331333337393538大值

mySmartUpload.setMaxFileSize(500 * 1024 * 1024);

// 设定允许上传的文件(通过扩展名限制)

mySmartUpload.setAllowedFilesList("jpg");

// 上载文件

try {

mySmartUpload.upload();

} catch (SmartUploadException e2) {

// TODO Auto-generated catch block

e2.printStackTrace();

}

int count = 0;

try {

count = mySmartUpload.save("/upload", SmartUpload.SAVE_VIRTUAL);

} catch (SmartUploadException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

out.println(count + "个文件上传成功!
");

out.println("TEST=" + mySmartUpload.getRequest().getParameter("TEST")

+ "
");

// 循环取得所有上载的文件

for (int i = 0; i 

// 取得上载的文件

com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(

i);

if (!myFile.isMissing()) {

// 取得上载的文件的文件名

String myFileName = myFile.getFileName();

// 取得不带后缀的文件名

String suffix = myFileName.substring(0, myFileName

.lastIndexOf('.'));

// 取得后缀名

String ext = mySmartUpload.getFiles().getFile(0).getFileExt();

// 取得文件的大小

int fileSize = myFile.getSize();

// 保存路径

String aa = request.getRealPath(request.getServletPath())

+ myFileName;

String trace = aa + myFileName;

String s=new String(trace.getBytes("ISO-8859-1"),"utf-8");

// 取得别的参数

String explain = (String) mySmartUpload.getRequest()

.getParameter("text");

String send = (String) mySmartUpload.getRequest().getParameter(

"send");

// 将文件保存在服务器端

try {

myFile.saveAs(trace, SmartUpload.SAVE_PHYSICAL);

} catch (SmartUploadException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

// 下面的是将上载的文件保存到数据库中

// 将文件读到流中

java.io.File file = new java.io.File(s);

java.io.FileInputStream fis = new java.io.FileInputStream(file);

out.println(file.length());

GoodService.addGoods(fis, file);

out.println(("上载成功!!!").toString());

} else {

out.println(("上载失败!!!").toString());

}

}// 与前面的if对应

out.flush();

out.close();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值