package com.questionnaire.servlets;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.Iterator;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import com.questionnaire.bean.Gift;
import com.questionnaire.dao.GiftDao;
@WebServlet("/UpdateGiftByIdSubmitServlet")
public class UpdateGiftByIdSubmitServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public UpdateGiftByIdSubmitServlet() {
super();
// TODO Auto-generated constructor stub
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
/* Integer id =Integer.parseInt(request.getParameter("id"));
Integer score =Integer.parseInt(request.getParameter("score"));
String giftName = request.getParameter("giftName");
String giftDescription = request.getParameter("giftDescription");
String giftSrc = request.getParameter("giftSrc");*/
int id = -1 ;
int score = -1;
String giftName = null;
String giftDescription = null;
String giftSrc = null;//新图片名
//String oldPictureSrc = null;//旧图片名
String basePath ="F:\\代码\\JAVA7\\QuestionnaireDesign\\WebContent\\picture" ;
Gift gif=new Gift();
GiftDao gDao=new GiftDao();
try {
boolean isMultipart =ServletFileUpload.isMultipartContent(request);
//System.out.println(ServletFileUpload.isMultipartContent(request));
if(isMultipart)
{
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
//前端数据存在items中
List <FileItem> items= upload.parseRequest(request);
Iterator <FileItem> iter= items.iterator();
while (iter.hasNext()) {
FileItem item = iter.next();
// 信息为普通的格式
String itemName = item.getFieldName();
if (item.isFormField()) {
if("id".equals(itemName))
{id=Integer.parseInt(item.getString("utf-8"));}
else if("score".equals(itemName))
{score=Integer.parseInt(item.getString("utf-8"));}
else if("giftName".equals(itemName))
{giftName=item.getString("utf-8");}
else if("giftDescription".equals(itemName))
{giftDescription=item.getString("utf-8");}
/*else if("oldPictureSrc".equals(itemName))
{oldPictureSrc=item.getString("utf-8");}*/
else {
System.out.println("其他字段");
}
}
// 信息为文件格式
else {
String fileName = item.getName();
if(fileName=="") {
//System.out.println("未选择图片");
giftSrc="404.jpg";
}
else{
giftSrc=fileName;
//System.out.println(fileName);
//System.out.println("File.separator:"+File.separator);
//当前部署的tomcat路径
//String TomcatPath=request.getSession().getServletContext().getRealPath(File.separator);
String TomcatPath=request.getSession().getServletContext().getRealPath("picture");
//System.out.println("TomcatPath:"+TomcatPath);
//写入项目路径
File eclipseFile = new File(basePath, fileName);
item.write(eclipseFile);
File tomcatFile = new File(TomcatPath, fileName);
//复制到Tomcat路径,若有重复文件则删除
if (tomcatFile.isFile() && tomcatFile.exists()) {
tomcatFile.delete();
//System.out.println("删除重复文件");
}
Files.copy(eclipseFile.toPath(), tomcatFile.toPath());
//写入Tomcat路径
//File tomcatFile = new File(TomcatPath, fileName);
//item.write(tomcatFile);
//deleteFile(basePath, oldPictureSrc);//删除旧图片
//逻辑有点复杂,不删了
}
}
}
}
gif.setId(id);
gif.setScore(score);
gif.setGiftName(giftName);
gif.setGiftDescription(giftDescription);
gif.setGiftSrc(giftSrc);
gDao.UpdateGiftByIdSubmit(gif);
response.sendRedirect("GiftManageServlet");
}
catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
//删除旧图片,但此程序没有使用
public boolean deleteFile(String basePath,String oldPictureSrc) {
File file = new File(basePath+"\\"+oldPictureSrc);
System.out.println("**********");
System.out.println(basePath+"\\"+oldPictureSrc);
// 如果文件路径所对应的文件存在,并且是一个文件,则直接删除
if (file.exists() && file.isFile()) {
if(oldPictureSrc!="404.jpg"){
if (file.delete()) {
System.out.println("删除单个文件" + oldPictureSrc + "成功!");
return true;
} else {
System.out.println("删除单个文件" + oldPictureSrc + "失败!");
return false;
}
}
return true;
} else {
System.out.println("删除单个文件失败:" + oldPictureSrc + "不存在!");
return false;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于JavaWeb的调查问卷管理系统源码+数据库(95分以上大作业项目).zip 已获导师指导并通过的高分项目,可作为期末大作业和课程设计,纯手打高分项目,代码完整下载可用,小白也可实战。 基于JavaWeb的调查问卷管理系统源码+数据库(95分以上大作业项目).zip 已获导师指导并通过的高分项目,可作为期末大作业和课程设计,纯手打高分项目,代码完整下载可用,小白也可实战。基于JavaWeb的调查问卷管理系统源码+数据库(95分以上大作业项目).zip 已获导师指导并通过的高分项目,可作为期末大作业和课程设计,纯手打高分项目,代码完整下载可用,小白也可实战。基于JavaWeb的调查问卷管理系统源码+数据库(95分以上大作业项目).zip 已获导师指导并通过的高分项目,可作为期末大作业和课程设计,纯手打高分项目,代码完整下载可用,小白也可实战。基于JavaWeb的调查问卷管理系统源码+数据库(95分以上大作业项目).zip 已获导师指导并通过的高分项目,可作为期末大作业和课程设计,纯手打高分项目,代码完整下载可用,小白也可实战。基于JavaWeb的调查问卷管理系统源码+数
资源推荐
资源详情
资源评论
收起资源包目录
基于JavaWeb的调查问卷管理系统源码+数据库(95分以上大作业项目).zip (120个子文件)
user.css 2KB
layout.css 2KB
mybatis-3.4.6.jar 1.55MB
itext-1.3.1.jar 1.48MB
jackson-databind-2.9.8.jar 1.28MB
mysql-connector-java-5.1.38.jar 961KB
sqljdbc4.jar 571KB
log4j-1.2.17.jar 478KB
standard.jar 384KB
iTextAsian.jar 324KB
jackson-core-2.9.8.jar 318KB
commons-io-2.5.jar 204KB
commons-fileupload-1.3.3.jar 69KB
jackson-annotations-2.9.8.jar 65KB
jstl.jar 20KB
UpdateGiftByIdSubmitServlet.java 6KB
StudentDao.java 5KB
QuestionnaireDao.java 4KB
AnswerDao.java 4KB
AnalyzeQuestionnaireByIdServlet.java 4KB
Mybatis.java 4KB
OrderDao.java 4KB
ClassDao.java 3KB
QuestionDao.java 3KB
LoginServlet.java 3KB
AnnounceDao.java 3KB
QuestionAnswerSubmitServlet.java 3KB
GiftDao.java 3KB
Student.java 3KB
InsertOrderServlet.java 3KB
Question.java 2KB
UpdateInfoSubmitServlet.java 2KB
UpdateStudentByIdSubmitServlet.java 2KB
InsertQuestionServlet.java 2KB
Questionnaire.java 2KB
QuestionManageServlet.java 2KB
Answer.java 2KB
AnswerResultServlet.java 2KB
QuestionAnswerServlet.java 2KB
AddNewQuestionnaireServlet.java 2KB
StudentManageServlet.java 2KB
DeleteQuestionByIdServlet.java 2KB
Order.java 2KB
InsertAnnounceServlet.java 2KB
OrderHistoryServlet.java 2KB
UpdateClassByIdSubmitServlet.java 2KB
ModifyOrderStatusByIdServlet.java 1KB
GiftExchangeServlet.java 1KB
GiftManageServlet.java 1KB
QuestionnaireManageServlet.java 1KB
ModifyQuestionnaireStatusByIdServlet.java 1KB
UpdateStudentByIdServlet.java 1KB
ClassManageServlet.java 1KB
AnnounceManageServlet.java 1KB
UpdateGiftByIdServlet.java 1KB
UpdateClassByIdServlet.java 1KB
QuestionnaireShowAllServlet.java 1KB
DeleteQuestionnaireByIdServlet.java 1KB
Mybat.java 1KB
OrderManageServlet.java 1KB
DeleteAnnounceByIdServlet.java 1KB
Gift.java 1KB
UpdateInfoServlet.java 1KB
EncodingFilter.java 1KB
DeleteClassByIdServlet.java 1KB
DeleteGiftByIdServlet.java 1KB
DeleteStudentByIdServlet.java 1KB
InsertEmptyGiftServlet.java 1KB
Announce.java 1KB
InsertEmptyStudentServlet.java 1KB
InsertEmptyClassServlet.java 1KB
RegClass.java 873B
apple.jpg 86KB
book.jpg 39KB
404.jpg 25KB
scoer.jpg 15KB
background.jpg 12KB
jquery-3.3.1.js 265KB
highcharts.js 217KB
jquery-3.3.1.min.js 85KB
exporting.js 13KB
export-data.js 10KB
questionManage.jsp 4KB
updateInfo.jsp 3KB
updateStudent.jsp 2KB
analyzeResult.jsp 2KB
questionAnswer.jsp 2KB
studentManage.jsp 2KB
questionnaireManage.jsp 2KB
addNewQuestionnaire.jsp 2KB
questionnaireShowAll.jsp 2KB
adminMain.jsp 2KB
giftExchange.jsp 2KB
announceManage.jsp 2KB
login.jsp 2KB
studentMain.jsp 2KB
checkGiftOrder.jsp 2KB
historyQuestionnaire.jsp 2KB
orderManage.jsp 2KB
giftManage.jsp 2KB
共 120 条
- 1
- 2
资源评论
- 左效荣2023-12-25资源内容详尽,对我有使用价值,谢谢资源主的分享。
不安分的小女孩
- 粉丝: 9204
- 资源: 1990
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- U8Cloud常见开发的示例
- AT32与Sxx32/Gx32替换对照表
- STM32VET6单片机+XC3S250E(FPGA)+AD9708 DDS信号发生器MCU+FPGA源码+PDF硬件设计原理图
- SCIPOptSuite-9.0.0-win64-VS15.exe
- GIS10.4补丁文件
- fdgsfdgfdsgsf
- 基于CodeMirror5实现的mybatis+sql提示扩展功能,主要是用于在线设计开发场景中的动态sql部分.zip
- 计算机毕业设计-aSP.NET某中学学生成绩管理系统的设计(源代码+)-毕设源码实例.zip
- springboot集成mybatis动态sql.zip
- mybatis中的动态sql, 涉及 where trim set if foreach等
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功