当前位置:首页 > 代码 > 正文

java发送图片代码(java 图片上传)

admin 发布:2022-12-19 09:58 101


本篇文章给大家谈谈java发送图片代码,以及java 图片上传对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java如何实现客户端向服务器端传送一个图片的代码,详细一点,最好能有注释,新手求解

public class SocketTest extends Thread {

private Socket so;

private DataInputStream in;

public static void main(String[] args) {

SocketTest app = new SocketTest();

app.startup();

}

public void startup() {

try {

// 创建服务端socket对象并指定监听端口

ServerSocket ss = new ServerSocket(9999);

System.out.println("listening...");

// 等待客户端连接

so = ss.accept();

System.out.println("connected");

// 开始读取数据

start();

} catch (Exception e) {

e.printStackTrace();

}

}

public void run() {

try {

// 创建socket输入流

in = new DataInputStream(so.getInputStream());

while (true) {

try {

// 定义接收缓冲区(64字节)

byte[] buf = new byte[64];

// 将数据读到接收缓冲区中,并返回实际读到的数据长度

int len = in.read(buf, 0, 64);

// 长度为-1说明到达输入流末尾,socket已关闭

if (len 1) {

System.out.println("closed");

break;

}

System.out.println("(" + len + ")");

} catch (Exception e) {

// 读数据异常

e.printStackTrace();

}

}

} catch (Exception e) {

// 监听异常

e.printStackTrace();

}

}

}

在JAVA中发送图片的代码是什么

发送图片的代码实际上就是把图片路径存储在数据库中,然后你发哪个图片,点一下,就把路径值取出来!

java怎样编写发送图片的程序

首先,我们创建一个新的web工程,在工程的WebRoot目录下新建一个upload文件夹,这样当我们将该工程部署到服务器上时,服务器便也生成个upload文件夹,用来存放上传的资源。

然后,在WebRoot目录下新建一个jsp文件,主要实现的作用就是选择上传的文件,提交至servlet来进行处理

详细代码如下:一个form将文件信息通过post方式传送到指定的servlet

%@ page language="java" import="java.util.*" pageEncoding="utf-8"% 

String path = request.getContextPath(); 

String basePath = 

request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; % 

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

base %=basePath%" 

titleMy JSP 'upload.jsp' starting page/title meta http-equiv="pragma" content="no-cache" 

meta http-equiv="cache-control" content="no-cache" meta http-equiv="expires" content="0" 

meta http-equiv="keywords" content="keyword1,keyword2,keyword3" meta http-equiv="description" content="This is my page" !-- 

link rel="stylesheet" type="text/css"  -- 

/head 

body 

form action="/upload/UpLoad" method="post" enctype="multipart/form-data" 

请选择上传的图片或文件:input type="file" name="fileName"/input type="submit" value="上传"/ 

/form 

/body

 /html

可以看到,我们将数据提交到工程下的upload/UpLoad。 之后,我们就来编写这个servlet——UpLoad.java

  package load; import java.io.File; 

import java.io.IOException; import java.io.PrintWriter; import java.util.List; 

import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; 

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import mons.fileupload.FileItem; 

import mons.fileupload.FileUploadException; import mons.fileupload.disk.DiskFileItemFactory; import mons.fileupload.servlet.ServletFileUpload; public class UpLoad extends HttpServlet { @SuppressWarnings("unchecked") @Override 

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("utf-8"); 

resp.setContentType("text/html;charset=utf-8"); 

//为解析类提供配置信息 

DiskFileItemFactory factory = new DiskFileItemFactory(); 

//创建解析类的实例 

ServletFileUpload sfu = new ServletFileUpload(factory); 

//开始解析 

sfu.setFileSizeMax(1024*400); 

//每个表单域中数据会封装到一个对应的FileItem对象上 try { 

ListFileItem items = sfu.parseRequest(req); 

//区分表单域 

for (int i = 0; i  items.size(); i++) { FileItem item = items.get(i); 

 var cpro_psid ="u2572954"; var cpro_pswidth =966; var cpro_psheight =120;

//isFormField为true,表示这不是文件上传表单域 if(!item.isFormField()){ 

ServletContext sctx = getServletContext(); 

//获得存放文件的物理路径 

//upload下的某个文件夹 得到当前在线的用户 找到对应的文件夹  

String path = sctx.getRealPath("/upload"); System.out.println(path); 

//获得文件名 

String fileName = item.getName(); System.out.println(fileName); 

//该方法在某些平台(操作系统),会返回路径+文件名 

fileName = fileName.substring(fileName.lastIndexOf("/")+1); File file = new File(path+"\\"+fileName); if(!file.exists()){ item.write(file); 

//将上传图片的名字记录到数据库中  

resp.sendRedirect("/upload/l"); } } } 

} catch (Exception e) { e.printStackTrace(); }  

}

因为已对 代码做了详细的注释,所以相信大家也能基本上传的这个过程。要注意的一点是解析实例空间大小的设置。我们希望上传的文件不会是无限大,因此,设置

  .setFileSizeMax(1024*400);

关于java发送图片代码和java 图片上传的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/6328.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载