您的位置:

java图片服务器,java获取服务器上的图片

本文目录一览:

java 中如何向服务器上传图片

我们使用一些已有的组件帮助我们实现这种上传功能。

常用的上传组件:

Apache 的 Commons FileUpload

JavaZoom的UploadBean

jspSmartUpload

以下,以FileUpload为例讲解

1、在jsp端

form id="form1" name="form1" method="post" action="servlet/fileServlet" enctype="multipart/form-data"

要注意enctype="multipart/form-data"

然后只需要放置一个file控件,并执行submit操作即可

input name="file" type="file" size="20"

input type="submit" name="submit" value="提交"

2、web端

核心代码如下:

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

request.setCharacterEncoding("UTF-8");

DiskFileItemFactory factory = new DiskFileItemFactory();

ServletFileUpload upload = new ServletFileUpload(factory);

try {

List items = upload.parseRequest(request);

Iterator itr = items.iterator();

while (itr.hasNext()) {

FileItem item = (FileItem) itr.next();

if (item.isFormField()) {

System.out.println("表单参数名:" + item.getFieldName() + ",表单参数值:" + item.getString("UTF-8"));

} else {

if (item.getName() != null !item.getName().equals("")) {

System.out.println("上传文件的大小:" + item.getSize());

System.out.println("上传文件的类型:" + item.getContentType());

System.out.println("上传文件的名称:" + item.getName());

File tempFile = new File(item.getName());

File file = new File(sc.getRealPath("/") + savePath, tempFile.getName());

item.write(file);

request.setAttribute("upload.message", "上传文件成功!");

}else{

request.setAttribute("upload.message", "没有选择上传文件!");

}

}

}

}catch(FileUploadException e){

e.printStackTrace();

} catch (Exception e) {

e.printStackTrace();

request.setAttribute("upload.message", "上传文件失败!");

}

request.getRequestDispatcher("/uploadResult.jsp").forward(request, response);

}

java实现图片上传至服务器并显示,如何做?希望要具体的代码实现

很简单。

可以手写IO读写(有点麻烦)。

怕麻烦的话使用FileUpload组件 在servlet里doPost嵌入一下代码

public void doPost(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException{

response.setContentType("text/html;charset=gb2312");

PrintWriter out=response.getWriter();

//设置保存上传文件的目录

String uploadDir =getServletContext().getRealPath("/up");

System.out.println(uploadDir);

if (uploadDir == null)

{

out.println("无法访问存储目录!");

return;

}

//根据路径创建一个文件

File fUploadDir = new File(uploadDir);

if(!fUploadDir.exists()){

if(!fUploadDir.mkdir())//如果UP目录不存在 创建一个 不能创建输出...

{

out.println("无法创建存储目录!");

return;

}

}

if (!DiskFileUpload.isMultipartContent(request))

{

out.println("只能处理multipart/form-data类型的数据!");

return ;

}

DiskFileUpload fu = new DiskFileUpload();

//最多上传200M数据

fu.setSizeMax(1024 * 1024 * 200);

//超过1M的字段数据采用临时文件缓存

fu.setSizeThreshold(1024 * 1024);

//采用默认的临时文件存储位置

//fu.setRepositoryPath(...);

//设置上传的普通字段的名称和文件字段的文件名所采用的字符集编码

fu.setHeaderEncoding("gb2312");

//得到所有表单字段对象的集合

List fileItems = null;

try

{

fileItems = fu.parseRequest(request);//解析request对象中上传的文件

}

catch (FileUploadException e)

{

out.println("解析数据时出现如下问题:");

e.printStackTrace(out);

return;

}

//处理每个表单字段

Iterator i = fileItems.iterator();

while (i.hasNext())

{

FileItem fi = (FileItem) i.next();

if (fi.isFormField()){

String content = fi.getString("GB2312");

String fieldName = fi.getFieldName();

request.setAttribute(fieldName,content);

}else{

try

{

String pathSrc = fi.getName();

if(pathSrc.trim().equals("")){

continue;

}

int start = pathSrc.lastIndexOf('\\');

String fileName = pathSrc.substring(start + 1);

File pathDest = new File(uploadDir, fileName);

fi.write(pathDest);

String fieldName = fi.getFieldName();

request.setAttribute(fieldName, fileName);

}catch (Exception e){

out.println("存储文件时出现如下问题:");

e.printStackTrace(out);

return;

}

finally //总是立即删除保存表单字段内容的临时文件

{

fi.delete();

}

}

}

注意 JSP页面的form要加enctype="multipart/form-data" 属性, 提交的时候要向服务器说明一下 此页面包含文件。

如果 还是麻烦,干脆使用Struts 的上传组件 他对FileUpload又做了封装,使用起来更傻瓜化,很容易掌握。

-----------------------------

以上回答,如有不明白可以联系我。

javaweb中为什么要重启服务器才能更新图片

javaweb中要重启服务器才能更新图片原因:这是服务器的自我保护机制,为了防止暴露绝对路径。把静态的文件在启动的时候都会加载到classpath的目录下的,package时把static目录下的资源一起打包到了jar包或war包中,此时上传的图片并未传入启动了的项目中,所以访问不到。项目重启后又会打成新的jar包,包含上一次上传的的图片,此时才会在页面上显示简单点说就是:上传图片后target包中没有加载重启服务器后target包内会重新加载。

java实现图片上传至服务器并显示,如何做?

给你段代码,是用来在ie上显示图片的(servlet):

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

String id = request.getParameter("id");

File file = new File(getServletContext().getRealPath("/")+"out"+"/"+id+".gif");

response.setCharacterEncoding("gb2312");

response.setContentType("doc");

response.setHeader("Content-Disposition", "attachment; filename=" + new String(file.getName().getBytes("gb2312"),"iso8859-1"));

System.out.println(new String(file.getName().getBytes("gb2312"),"gb2312"));

OutputStream output = null;

FileInputStream fis = null;

try

{

output = response.getOutputStream();

fis = new FileInputStream(file);

byte[] b = new byte[1024];

int i = 0;

while((i = fis.read(b))!=-1)

{

output.write(b, 0, i);

}

output.write(b, 0, b.length);

output.flush();

response.flushBuffer();

}

catch(Exception e)

{

System.out.println("Error!");

e.printStackTrace();

}

finally

{

if(fis != null)

{

fis.close();

fis = null;

}

if(output != null)

{

output.close();

output = null;

}

}

}

这个程序的功能是根据传入的文件名(id),来为浏览器返回图片流,显示在img标签里

标签的格式写成如下:

img src=" "/br/

显示的是111.gif这个图片

你上面的问题:

1.我觉得你的第二个办法是对的,我们也是这样做的,需要的是把数据库的记录id号传进servlet,然后读取这条记录中的路径信息,生成流以后返回就是了

关于上传文件的问题,我记得java中应该专门有个负责文件上传的类,你调用就行了,上传后存储在指定的目录里,以实体文件的形式存放

你可以参考这个:

回复:

1.是的,在response中写入流就行了

2.是发到servlet中的,我们一般都是写成servlet,短小精悍,使用起来方便,struts应该也可以,只是我没有试过,恩,你理解的很对

java保存图片到本地服务器共享

1、调用第一个接口时,先将多张图片存到本地。再调用第二个接口,将图片统一上传到图片服务器上。

2、根据类别,上传多张图片。

java 如何只通过后台把本地的图片上传的服务器上去?

这里你弄错了一个问题;\x0d\x0a你的程序是要传递图片的二进制数据.\x0d\x0a而不是传递路径,然后再到服务器读取文件数据(你的服务器有这个文件?)\x0d\x0a只有当你的服务器下有这个文件了,你传递一个路径,读取是可以的.\x0d\x0a//---\x0d\x0a关于如何上传文件, 自己google一下,很多教程

java图片服务器,java获取服务器上的图片

2023-01-09
java图片服务器,搭建图片服务器

2022-11-27
java上传图片,java上传图片到ftp服务器

2023-01-09
jsp页面显示服务器图片(web服务器图片)

本文目录一览: 1、Java 怎么把服务器本地图片显示到jsp页面? 2、jsp上传图片到tomcat服务器后,怎么在页面显示 3、jsp页面显示上传到tomcat服务器的图片 4、就是在一个jsp页

2023-12-08
用js把本地图片上传到服务器上,用js把本地图片上传到服务器

2022-11-22
java服务器下载,我的世界java服务器下载

2022-11-17
java服务器搭建,java实现服务器

2023-01-09
java搭建服务器,java部署到服务器

2023-01-10
java中ajax上传图片,JAVA图片上传

2022-11-18
java图片上传,java图片上传功能

2022-11-28
java保存图片,java保存图片到本地

2023-01-06
java图片上传,java图片上传代码

2023-01-09
jsp显示服务器上图片(jsp从数据库读取并显示图片)

本文目录一览: 1、客户端jsp如何显示服务器中的图片 2、jsp中怎样把图片显示在界面上? 3、jsp页面显示上传到tomcat服务器的图片 客户端jsp如何显示服务器中的图片 用真实路径的话容易暴

2023-12-08
java在jsp将图片获取存到数据库(java将图片存入数据

本文目录一览: 1、jsp中 怎么把图片直接存入数据库中,最好有例子 2、在JSP中怎样将图片上传到数据库中 3、我怎么用jsp技术将图片存到数据库中去呀?? 4、用jsp、java实现上传图片,保存

2023-12-08
java上传图片文件回显(java导入图片并显示图片)

2022-11-12
图片上传java,图片上传后变模糊

2023-01-07
java上传图片,java上传图片怎么实现

2022-11-26
图片验证码的java实现,图片验证码的java实现方式

2022-11-19
java保存图片,java保存图片到二进制是不是小很多

2023-01-06
java图片验证码,java图片验证码代码

2023-01-04