当前位置:首页 » 文件管理 » jsp上传图片代码

jsp上传图片代码

发布时间: 2025-09-07 01:38:17

java在jsp中 如何上传图片 在上传时可以取到图片大小并修改

用第三方工具去取 common-upload,具体取到图片的方法参考代码如下:
FileItemFactory fileItemFactory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(fileItemFactory);
upload.setHeaderEncoding("utf-8");
try {
List<FileItem> items = upload.parseRequest(request);
for (FileItem fileItem : items) {
System.out.println("fileName=" + fileItem.getFieldName());
//获取文件流
InputStream in = fileItem.getInputStream();
ServletContext context = getServletConfig().getServletContext();
String path = context.getRealPath("image");
System.out.println(path);
OutputStream out = new FileOutputStream(new File(path + "\\" + fileItem.getName()));
byte[] buffer = new byte[1024];
int len = 0;
while((len = in.read(buffer)) != -1) {
out.write(buffer, 0, len);
}
out.close();
in.close();
System.out.println("写入完毕");
}
} catch (FileUploadException e) {
e.printStackTrace();
}

㈡ jsp中上传图片不采用servlet,不采用任何框架,仅仅使用jsp代码,保存到服务器上。希望能得到指点。

那可能需要JS等一些的支持估计才可以了。首先你要考虑你这张图片传哪里去,传几张。唯一性是否有。另外的话,你所说的什么框架都不使用。只是jsp估计不行。因为jsp只是基于页面的语言。编译以后只是HTML了。所以可能还要在JSP上写<%%>来套用java。最起码你数据库的连接是要写的吧。连接好后,写保存方法,是将哪些信息或字段传入DB中。并且是保存图片路径呢。还是把图片二进制了保存起来。这些都是业务了,看你的个人需要。希望帮到你

㈢ java编程:怎么用JSP(javabean)上传一张图片到服务器的指定文件夹

先导smartupload jar包!在写form表单<input tyle="file" enctype="multipart/form-data" method="post">enctype和method别写错了!
写一个简单的吧!
<%page import="com.jspsmart.upload.*"%>
<%
SmartUpload su=new SmartUpload ();//初始化SmartUpload对象
try{ //捕获他可能出现的异常
su.upload();//执行上传
}catch(Exception ex){
ex.printStackTrace;
}
File file=su.getFile().getFile(0); //(得到单个的上传文件的信息)这里得到的File对象是你到的jar包里的com.jspsmart.upload.File类型 别写成IO 里面的File了
String filepath="upload\\"; //在这之前要在你所建项目的目录下单建一个upload文件夹
filepath+=file.getFileName();
file.saveAs(filepath,SmartUpload.SAVE-VIRTUAL);
不知道是否建了与它相对应的数据库表啊?
不懂得再玩吧!

%>

㈣ jsp+servlet 上传图片并显示出来

其实你这个挡也显示图片其实很简单的,
你的需求无非是两个
1.servlet上传文件(图片)
2.点击 浏览 图标,然后选择图片文件,然后就可以在页面中的某个地方看到图片

是这两个需求么?
首先说第二个吧。
你上传图片之后,就马上触发js函数,内容为
var PicPath = document.getElementById("yourfile").value;
document.getElementById("yourDiv").innerHTML="<IMG src="+PicPath+"/>";
OK了

第一个嘛就无所谓说了,不过我还是贴一个代码吧,
public void upLoadFile(HttpServletRequest request, HttpServletResponse response) {
PrintWriter out = null;
response.setCharacterEncoding("UTF-8");
//实例化文件工厂
FileItemFactory factory = new DiskFileItemFactory();
//配置上传组件ServletFileUpload
ServletFileUpload upload = new ServletFileUpload(factory);
try {
out = response.getWriter();
//从request得到所有上传域的列表
List<FileItem> list = upload.parseRequest(request);

for (FileItem item : list) {
//isFormField判断一个item类对象封装的是一个普通的表单字段还是文件表单字段。
// 如果item是文件域,则做出如下处理:
if (!item.isFormField()) {

//上传文件域的Name
String fileName = item.getName();

//截取扩展名
int idx = fileName.lastIndexOf(".");
String extension = fileName.substring(idx);

//获取文件名
String name = new Date().getTime() + extension;

//得到文件夹的物理路径
String path = this.getServletContext().getRealPath("\\upload");

//创建一个File
File file = new File(path + "\\" + name);
FileOutputStream o = new FileOutputStream(file);
InputStream in = item.getInputStream();
try {
LoadProcessServlet.process = 0;
LoadProcessServlet.total = 100;
LoadProcessServlet.isEnd = false;
LoadProcessServlet.total = item.getSize();
byte b[] = new byte[1024];
int n;
while ((n = in.read(b)) != -1) {
LoadProcessServlet.process+=n;
o.write(b, 0, n);
System.out.println("实际:"+LoadProcessServlet.process);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
LoadProcessServlet.isEnd = true;
}
}
}
} catch (Exception e) {
e.printStackTrace();
}

}

㈤ 求JSP上传文件的代码 图片 视频 音频WORD 之类的文件

这个比较简单

选择图片的jsp页面的form

<form action="doUploadImage.jsp" encType=multipart/form-data method=post >
本地选择:
<input type="file" name="selPicture"
style="width: 330px; height: 23px; font-size: 16px">
<input type="submit" name="upload" id="upload" value="上传"
style="width: 70px; height: 25px">
</form>
接收页面

<%@ page language="java" import="java.util.*,com.jspsmart.upload.*,java.io.*"
pageEncoding="GBK"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<title>My JSP 'doUploadImage.jsp' starting page</title>

</head>

<body>
<%
request.setCharacterEncoding("GBK");
long size = 5 * 1024 * 1024;//允许上传最大值为5MB
String fileType = "jpg,gif,JPG";//允许上传文件类型
String imgName = null;//图片名称
byte[] data = null;//数据
String filePath = "";//文件路径

//得到服务器目录webroot下的ImageFiles目录的完整罩局路径
String path = super.getServletContext().getRealPath("/Image");

System.out.println(path);

SmartUpload su = new SmartUpload();
//初始化
su.initialize(pageContext);
su.setMaxFileSize(size);
su.setAllowedFilesList(fileType);
su.setCharSet("GBK");
//上载文件
su.upload();
System.out.println(su.getSize());
su.getRequest();
//循环取得所有上载的文件
Files files = su.getFiles();
if (files != null) {
//如果文件路径不存在则生成路径
java.io.File fileDir = new java.io.File(path);
System.out.println("物穗让存在");
if (!fileDir.exists()) {
fileDir.mkdirs();
System.out.println("不存在");
}

System.out.println(files.getCount());
//取出文件
for (int i = 0; i < files.getCount(); i++)
{
com.jspsmart.upload.File file = files.getFile(i);
if (file.isMissing()) continue;
if ("selPicture".equals(file.getFieldName())) {
String type = file.getFilePathName();
type = type.substring(type.lastIndexOf("."));
imgName = UUID.randomUUID().toString();//生成uuid作为图片的名称
imgName += type;
filePath = path + "/" + imgName;

//保存到指定文件
file.saveAs(filePath);

//读取文件
data = readFile(filePath);
break;
}
}
}

if (data == null) {
out.print("族岁没有图片");
} else {
out.print("图片上传成功");
}
%>
<%!byte[] readFile(String filePath) {
ByteArrayOutputStream bos = null;
try {
FileInputStream fs = new FileInputStream(filePath);
bos = new ByteArrayOutputStream(5 * 1024 * 1024);
byte[] b = new byte[1024];
int len;
while ((len = fs.read(b)) != -1) {
bos.write(b, 0, len);
}
fs.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (bos == null) {
return null;
} else {
return bos.toByteArray();
}
}
%>
<%=request.getParameter("name") %>
</body>
</html>

有问题q我 379726806

后面data那一段时测试的 用的时候删除掉 这是我写的一个测试小工程 在项目里面用的时候是把接收图片放在servlet中的

我也是才搞了一个图片上传的东东

热点内容
编程fc值 发布:2025-09-07 06:47:03 浏览:859
少儿编程的学费是多少 发布:2025-09-07 06:18:10 浏览:87
android图片加载 发布:2025-09-07 06:10:48 浏览:493
mtp存储器 发布:2025-09-07 05:58:00 浏览:948
php继承类构造函数 发布:2025-09-07 05:57:07 浏览:703
指示数据库 发布:2025-09-07 05:55:45 浏览:628
如何恢复服务器系统 发布:2025-09-07 05:41:50 浏览:877
多个服务器如何集中管理 发布:2025-09-07 05:37:00 浏览:416
python读取文件行 发布:2025-09-07 05:34:14 浏览:662
mac版本ftp 发布:2025-09-07 05:27:09 浏览:531