当前位置:首页>开发>正文

用java实现上传功能 怎么样用JAVA 实现文件的上传下载

2023-04-20 12:27:51 互联网 未知 开发

 用java实现上传功能 怎么样用JAVA 实现文件的上传下载

用java实现上传功能

下面是我用过的一段代码,fileupload、servlet搞的

DiskFileItemFactory factory = new DiskFileItemFactory()//为该请求创建一个DiskFileItemFactory对象,通过它来解析请求。执行解析后,所有的表单项目都保存在一个List中。
factory.setSizeThreshold(DiskFileItemFactory.DEFAULT_SIZE_THRESHOLD)
ServletFileUpload upload = new ServletFileUpload(factory)
upload.setSizeMax(-1)
upload.setHeaderEncoding("UTF-8")
List items//对应jsp表单的域
File icon = null//这是我要保存的文件,是一个icon
try {
items = upload.parseRequest(request)//通过request获得请求表单的域
if(items!=null&&items.size()>0){
Iterator itr = items.iterator()
while(itr.hasNext()){
FileItem item = (FileItem) itr.next()
if(item.isFormField()){
//普通表单域
String fieldName = item.getFieldName()//表单域的name属性
String value = item.getString("UTF-8")//表单域的value或者textarea的内容
if("news.title".equals(fieldName)){
news.setTitle(value)
}
...
}else{
//如果不是普通的表单域,即文本域
String fieldName = item.getFieldName()//文本域的name属性
String value = item.getName()//文件名
if("icon".equals(fieldName)){
if(!StringUtils.isEmpty(value)){
String filename = String.valueOf(UUID.randomUUID())
new File(WinWinConstant.file_path File.separatorChar WinWinConstant.NEWS).mkdirs()
//设置icon保存的路径
icon = new File(WinWinConstant.file_path File.separatorChar WinWinConstant.NEWS File.separatorChar filename value.substring(value.lastIndexOf(.)))
item.write(icon)//保存文件
}
}
...

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

怎么样用JAVA 实现文件的上传下载?

如果不涉及到数据库的话,用简单的IO流即可实现。上传的时候你指定好文件路径或相对路径,把上传内容写进一个生成的文件。下载的时候你去搜下要下载的文件名,把该文件的内容读出来。
如果涉及数据库的话你可以这样做,用hibernate框架的情况下,你可以定义一个实体,实体里含有要下载的文件的标题,内容,这个文件储存的路径等字段。上传的时候将文件读出来并赋值给这些字段,然后存到数据库中,并且将内容,标题等写成String的类型存储到数据库中,下载的时候你可以去数据库中搜这个路径,存在即可把数据库里的内容,标题等读到本地的盘上并生成个文件即可。

java实现文件的上传和下载

用输出流 接受 一个下载地址的网络流
然后将这个输出流 保存到本地一个文件 后缀与下载地址的后缀相同··

上传的话 将某个文件流 转成字节流 上传到某个webservice方法里

-------要代码来代码

URL url=new URL("http://www.baidu.com/1.rar")
URLConnection uc=url.openConnection()
InputStream in=uc.getInputStream()
BufferedInputStream bis=new BufferedInputStream(in)
FileOutputStream ft=new FileOutputStream("E://1.rar")

这是下载 上传太麻烦就不给写了

java中几种上传方法介绍,比较

上传方法只有一种就是io操作。但是框架有好多。常见的有Javaweb中常用的apache的common-fileupload组件、javaee自带的servlet3.1中的原生上传组件,servlet的比较麻烦。

最新文章

随便看看