java 上传文件用什么软件?java web前端上传文件到后台常用的几种方式
大家好,今天小编来为大家解答以下的问题,关于java 上传文件用什么软件,java web前端上传文件到后台常用的几种方式这个很多人还不知道,现在让我们一起来看看吧!
java web前端上传文件到后台常用的几种方式
1、使用form表单提交
但是这里要记得添加enctype属性,这个属性是指定form表单在向服务器提交之前,对表单数据如何进行编码。文件域中的name="file"属性的值,需要和后台接收的对象名一致,不然接收不到。
2、使用ajax提交文件
使用ajax提交首先引入jquery-form.js文件才能实现,接着使用上面的html代码,加入以js则可以实现ajax提交文件。
3、使用FormData对象
4、后台接收文件,框架采用的Spring Boot微服务框架,因为该框架搭建很方便所以采用这个框架写例子。
如何利用字节流实现java的文件上传下载
实现上传下载实际上就是io的转换。举例:
import hkrt.b2b.view.util.Log;
import hkrt.b2b.view.util.ViewUtil;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
public class CCFCCBFTP{
/**
*上传文件
*
*@param fileName
*@param plainFilePath明文文件路径路径
*@param filepath
*@return
*@throws Exception
*/
public static String fileUploadByFtp(String plainFilePath, String fileName, String filepath) throws Exception{
FileInputStream fis= null;
ByteArrayOutputStream bos= null;
FTPClient ftpClient= new FTPClient();
String bl="false";
try{
fis= new FileInputStream(plainFilePath);
bos= new ByteArrayOutputStream(fis.available());
byte[] buffer= new byte[1024];
int count= 0;
while((count= fis.read(buffer))!=-1){
bos.write(buffer, 0, count);
}
bos.flush();
Log.info("加密上传文件开始");
Log.info("连接远程上传服务器"+CCFCCBUtil.CCFCCBHOSTNAME+":"+22);
ftpClient.connect(CCFCCBUtil.CCFCCBHOSTNAME, 22);
ftpClient.login(CCFCCBUtil.CCFCCBLOGINNAME, CCFCCBUtil.CCFCCBLOGINPASSWORD);
FTPFile[] fs;
fs= ftpClient.listFiles();
for(FTPFile ff: fs){
if(ff.getName().equals(filepath)){
bl="true";
ftpClient.changeWorkingDirectory("/"+filepath+"");
}
}
Log.info("检查文件路径是否存在:/"+filepath);
if("false".equals(bl)){
ViewUtil.dataSEErrorPerformedCommon("查询文件路径不存在:"+"/"+filepath);
return bl;
}
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("GBK");
//设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.storeFile(fileName, fis);
Log.info("上传文件成功:"+fileName+"。文件保存路径:"+"/"+filepath+"/");
return bl;
} catch(Exception e){
throw e;
} finally{
if(fis!= null){
try{
fis.close();
} catch(Exception e){
Log.info(e.getLocalizedMessage(), e);
}
}
if(bos!= null){
try{
bos.close();
} catch(Exception e){
Log.info(e.getLocalizedMessage(), e);
}
}
}
}
/**
*下载文件
*
*@param localFilePath
*@param fileName
*@param routeFilepath
*@return
*@throws Exception
*/
public static String fileDownloadByFtp(String localFilePath, String fileName,String routeFilepath) throws Exception{
FileInputStream fis= null;
ByteArrayOutputStream bos= null;
FileOutputStream fos= null;
FTPClient ftpClient= new FTPClient();
String SFP= System.getProperty("file.separator");
String bl="false";
try{
Log.info("下载并解密文件开始");
Log.info("连接远程下载服务器"+CCFCCBUtil.CCFCCBHOSTNAME+":"+22);
ftpClient.connect(CCFCCBUtil.CCFCCBHOSTNAME, 22);
ftpClient.login(CCFCCBUtil.CCFCCBLOGINNAME, CCFCCBUtil.CCFCCBLOGINPASSWORD);
// ftpClient.connect(CMBCUtil.CMBCHOSTNAME, 2021);
// ftpClient.login(CMBCUtil.CMBCLOGINNAME, CMBCUtil.CMBCLOGINPASSWORD);
FTPFile[] fs;
ftpClient.makeDirectory(routeFilepath);
ftpClient.changeWorkingDirectory(routeFilepath);
bl="false";
fs= ftpClient.listFiles();
for(FTPFile ff: fs){
if(ff.getName().equals(fileName)){
bl="true";
Log.info("下载文件开始。");
ftpClient.setBufferSize(1024);
//设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
InputStream is= ftpClient.retrieveFileStream(fileName);
bos= new ByteArrayOutputStream(is.available());
byte[] buffer= new byte[1024];
int count= 0;
while((count= is.read(buffer))!=-1){
bos.write(buffer, 0, count);
}
bos.flush();
fos= new FileOutputStream(localFilePath+SFP+fileName);
fos.write(bos.toByteArray());
Log.info("下载文件结束:"+localFilePath);
}
}
Log.info("检查文件是否存:"+fileName+""+bl);
if("false".equals(bl)){
ViewUtil.dataSEErrorPerformedCommon("查询无结果,请稍后再查询。");
return bl;
}
return bl;
} catch(Exception e){
throw e;
} finally{
if(fis!= null){
try{
fis.close();
} catch(Exception e){
Log.info(e.getLocalizedMessage(), e);
}
}
if(bos!= null){
try{
bos.close();
} catch(Exception e){
Log.info(e.getLocalizedMessage(), e);
}
}
if(fos!= null){
try{
fos.close();
} catch(Exception e){
Log.info(e.getLocalizedMessage(), e);
}
}
}
}}
备注:以上方法就实现了流的二进制上传下载转换,只需要将服务器连接部分调整为本地的实际ftp服务用户名和密码即可。
java软件开发工程师简历的技能怎么写好
下面是一个示例,可以看着改改。
教育经历
2007/09—至今 xxxx大学信息学院计算机科学与技术
将于2011年6月获工科学士学位
项目经验
项目名称:xxxx有限公司生产管理信息系统
开发环境:struts2+hibernate+spring
开发工具:sql server 2000,MyEclipse、ireport、tomcat
项目公司内部软件,实现了整个化工厂的生产流程操作、员工的管理、报表的导出、文件的上传下载、用户权限控制,提高了工作效率。
责任参与部分模块的设计、报表设计、编码工作和用户手册的编写
1.工艺员模块:实现了增删查改等功能和文件上传、下载、报表导出
2.下游客户模块:实现了增删查改、报表导出等功能
3.对外函件汇总:实现了增删查改等功能和文件上传、下载、报表导出
4.设备管理:实现了配件储备定额一览表中的增删查改、报表导出
5.质检管理:实现了中控分析报告单中的增删查改、报表导出
6.还有就是其他模块中的一些后期修改
项目总结:通过这个项目的开发,对S2SH有了更深一层的认识。同时也学习了部分Ajax的应用,增强了团队意识和协调能力。也认识到学习的重要性,软件行业技术更新的很快,每天都要去努力的学习新知识。
批注:最好能细化到你具体做了哪一部分的工作,现在看我不知道描述的各个模块的功能是你自己完成的部分还是团队工作成果。
个人技能
IT技能
熟练掌握JAVA面向对象编程语言,有良好的编码习惯;
熟练使用HTML,并了解Ajax
熟练使用jsp、servlet、JavaBean进行web应用开发;
熟练掌握Struts2、Hibernate、Spring等开源框架技术,并能够用Struts2.0+Hibernate+Spring进行大型项目的开发;
熟练操作MS SQL SERVER、MySQL数据库,了解Oracle数据库,熟悉SQL语句;
能够熟练运用Eclipse和myEclipse等开发工具
英语技能四级2008.12通过六级2009.06通过
批注:
1.专业技能中最好能按照你熟练的程度降序排列,把你最擅长的放到最前面,这样方面HR了解你的技能方向,与职位要求做对比。
2.英语技能中通过了六级就不需要说明四级了。
获奖情况
获得2007-2008学年国家励志奖学金
获得2007-2008学年学校优秀学生三等奖学金
社会实践
2009学年-至今作为09届计科2班班主任助理,帮助班主任与班级学生交流。
2008-2009学年担任班长,帮助班主任与班级同学交流,组织了班里同学东海岛的出游和北海的出游,个人组织能力、团队意识和沟通能力得到很大提升。
2008-2009学年在学生处助学信贷科勤工俭学,负责学生贷款材料和申请奖助学金材料的核查,整理分析数据和分发材料,有责任心和吃苦耐劳精神。
2008-2009学年组队参加了xxxx大学第一届编程大赛,并进入决赛。
END
注意事项
java软件工程师简历批注:
1.“个人经历”就不是简历中一个合适的模块名称,因为简历其实就是个人经历的一个另外说法,怎么会在简历中再存在一个个人经历呢?应该是“社会实践”之类的名称更合适。
2.第一、二条中“帮助班主任与班级学生交流”“组织了班里同学东海岛的出游和北海的出游”语法存在错误,“帮助……交流”本身就不是一个正确的搭配,第二句也有不通顺的地方,简历中语言虽然不需要华丽,但是也不能有明显语法错误,毕竟是母语简历,这样有些说不过去。
好了,文章到此结束,希望可以帮助到大家。