上传下载文件

1 读文件并下载(会弹出框提示下载还是打开)
String fileName = req.getParameter("fileName");
File file = new File(new File(ATTTACH_PARENT_DIR),MessageUtil.getOSFileName(fileName)); //已知文件
String mimeType = getServletContext().getMimeType(file.getName());
resp.setContentType(mimeType);
// response.setContentLength((int)size);
byte[] buf = new byte[1024];
int len;
OutputStream out = null;
BufferedInputStream in = null;
try {
out = new BufferedOutputStream(resp.getOutputStream(), 512);
in = new BufferedInputStream(new FileInputStream(file), 256);
while ((len = in.read(buf)) != -1) {
if (len > 0) {
out.write(buf, 0, len);
}
out.flush();
}
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e) {
}
}
if (out != null) {
try {
out.close();
} catch (IOException e) {
}
}
}
2.直接打开文件
Runtime runtime = Runtime.getRuntime();
String cmd = "cmd /c start "
+ file.getAbsolutePath();
Process process = runtime.exec(cmd);

3 上传文件


public final void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
this.request = request;
PrintWriter out = response.getWriter();
String path = request.getRealPath("/");// getServletContext.;
boolean writeToFile = true;
String returnOKMessage = "success";

boolean isMultipart = ServletFileUpload.isMultipartContent(request);

String workOrderPlanId = request.getParameter("workOrderPlanIdTextBox");

if (isMultipart) {
FileItemFactory factory = new DiskFileItemFactory();
// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);
// Parse the request
try {
List items = upload.parseRequest(request);
List<FileItem> sourceFileItemList = new ArrayList<FileItem> (items.size());
// Process the uploaded items
Iterator iter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if (item.isFormField()) {
workOrderId = item.getString();
} else {
sourceFileItemList.add(item);
}
}
for (FileItem sourceFileItem:sourceFileItemList ) {
String sourceFileName = FilenameUtils.getName(sourceFileItem.getName());
if (sourceFileName.trim().length() != 0) {
try {
String name =workOrderPlanLocalService.createAttach(cltWorkOrderPlanPKId, sourceFileName);
tobeTransferedAttachList.add(name);
name = MessageUtil.getOSFileName(name);
File uploadedFile = new File(new File(ATTTACH_PARENT_DIR), name);
File parentDir = uploadedFile.getParentFile();
if (!parentDir.exists()) {
parentDir.mkdirs();
}
sourceFileItem.write(uploadedFile);
} catch (Exception e) {
throw e;
}
}
}
} catch (Exception e) {
returnOKMessage="faield";
}

} else {
returnOKMessage="isMultipartContent = false";
System.out.println("isMultipartContent = false");
}

out.println(returnOKMessage);
}


4 hibernate3.2 JPA 外连接的用法(left outer join on)

select StockItemPhysicalPkg pkg left outer join pkg.sealMaterial

其中 StockItemPhysicalPkg和 sealMaterial many-to-one 的关系,这里要注意的是和普通的SQL不同,
它没有ON的存在
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值