JSP +smartUpload对图片的增删改查

详细代码请参见http://download.csdn.net/detail/honghu549599aaa/4472543(欢迎斧正)



主页 (上传多张图片)

upload.html

 

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<html>
<head>
<title>用smartUpload组件实现文件上传</title>
</head>
<body>
<p align="center">用smartUpload组件实现文件上传</p>
<p align="center">请选择要上传的文件:</p>
<FORM METHOD="POST" ACTION="../FileUpload" ENCTYPE="multipart/form-data">
  <table width="75%" border="1" align="center">
    <tr> 
      <td><div align="center">1、 
          <input type="FILE" name="image1" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">2、 
          <input type="FILE" name="image2" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">3、 
          <input type="FILE" name="image3" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">4、 
          <input type="FILE" name="image4" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">
          <input type="submit" name="Submit" value="上传">
        </div></td>
    </tr>
  </table>
</FORM>
</body>

</html>





2.sevlet(图片上传类)‘


package com.Fly.HBXT.Servlet;




import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.Calendar;
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 com.Fly.HBXT.Service.FileUploadService;
import com.Fly.HBXT.model.UserImage;
import com.jspsmart.upload.*;


public class FileUpload extends HttpServlet {





@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


   response.setContentType("text/html");
request.setCharacterEncoding("GB2312");
response.setCharacterEncoding("GB2312");
PrintWriter out = response.getWriter();
String kk[] = new String[10];
String iamge1="";
String iamge2="";
String iamge3="";
String iamge4="";
SmartUpload mySmartUpload=new SmartUpload();




// System.out.println("更换后的文件名:" + filename);


ServletContext application = this.getServletContext();

String url = "upload/"; // 应保证在根目录中有此目录的存在(也就是说需要自己建立相应的文件夹)




mySmartUpload.initialize(this.getServletConfig(), request, response);
try {
mySmartUpload.upload();

for (int i=0;i<mySmartUpload.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = mySmartUpload.getFiles().getFile(i);
// 若文件表单中的文件选项没有选择文件则继续

if (file.isMissing()) continue;
String ext = file.getFileExt(); // 取得后缀名
String saveurl = ((ServletContext) application).getRealPath("/")
+ url;
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
       saveurl += filename + "." + ext; // 保存路径


      
      filename += "." + ext;
      System.out.println("filename"+filename);

file.saveAs(saveurl, SmartUpload.SAVE_PHYSICAL);


// 显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"+file.getFieldName()+"</TD></TR>");
// kk[i]=(String) file.getFieldName();
kk[i]=filename;
out.println("</TABLE><BR>");

}
System.out.println(kk[0]);
System.out.println(kk[1]);
System.out.println(kk[2]);
System.out.println(kk[3]);
  FileUploadService fus=new FileUploadService();
 int flag= fus.fileupload(kk);
  System.out.println("上传结果"+flag);
  List c=fus.findAllPages();
  System.out.println("所有图片为"+c);
  request.setAttribute("AllUserImages", c);
  request.getRequestDispatcher("/FileUpload/showPage.jsp").forward(request, response);
}catch (SmartUploadException e) {
e.printStackTrace();
// TODO: handle exception
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



}
}




3.预览所有图片

showpics.jsp


<%@ page language="java" import="java.util.*,com.Fly.HBXT.model.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
List UserImageList=(List)request.getAttribute("AllUserImages");
Iterator iterator=UserImageList.iterator();
UserImage images=new UserImage();




%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <style type="text/css">
  img{width: 100;
  height: 200;
  }
  </style>
    <base href="<%=basePath%>">
    
    <title>查看所有图片</title>




  </head>
  
  <body>
  <table>
  <% 
     while(iterator.hasNext()){
images=(UserImage)iterator.next();
     
  %>
  
  <tr>
  <td><a href="findUserImageById?id=<%=images.getId()%>"><%=images.getId() %></a></td>
   <td>  <img alt="暂无图片" src="upload/<%=images.getImages1() %>"></td>
     <td> <img alt="" src="upload/<%=images.getImages2() %>"></td>
     <td>  <img alt="" src="upload/<%=images.getImages3() %>"></td>
      <td>  <img alt="" src="upload/<%=images.getImages4() %>"></td>
        </tr>
        <%} %>
</table>




<!-- 
<FORM METHOD="POST" ACTION="UpdateFileUpload?id=<%=images.getId() %>" ENCTYPE="multipart/form-data"> 
  <table width="75%" border="1" align="center">
    <tr> 
      <td><div align="center">1、 
          <input type="FILE" name="image1" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">2、 
          <input type="FILE" name="image2" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">3、 
          <input type="FILE" name="image3" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">4、 
          <input type="FILE" name="image4" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">
          <input type="submit" name="Submit" value="上传">
        </div></td>
    </tr>
  </table>
</FORM>


 -->




  </body>
</html>




4.根据图片ID查看图片详情

showPageById.java


package com.Fly.HBXT.Servlet;


import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;


import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import com.Fly.HBXT.Service.FileUploadService;
import com.Fly.HBXT.model.UserImage;


public class findUserImageById extends HttpServlet {



public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


response.setContentType("text/html");
PrintWriter out = response.getWriter();
String id=request.getParameter("id");
FileUploadService fus=new FileUploadService();
try {
UserImage iamge =fus.findUserImageById(Integer.parseInt(id));
request.setAttribute("iamge", iamge);
request.getRequestDispatcher("FileUpload/showPageById.jsp").forward(request, response);

} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}



public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


response.setContentType("text/html");
PrintWriter out = response.getWriter();

}






}



5(重要)随心所欲更改图片

showPageById.jsp


<%@ page language="java" import="java.util.*,com.Fly.HBXT.model.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
UserImage images=(UserImage)request.getAttribute("iamge");






%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <style type="text/css">
  img{width: 100;
  height: 200;
  }
  </style>
    <base href="<%=basePath%>">
    
    <title>My JSP 'showPage.jsp' starting page</title>


-->


  </head>
  
  <body>
  <table>
  
  <tr>
  
   <td>  <img alt="" src="upload/<%=images.getImages1() %>"></td>
     <td> <img alt="" src="upload/<%=images.getImages2() %>"></td>
     <td>  <img alt="" src="upload/<%=images.getImages3() %>"></td>
      <td>  <img alt="" src="upload/<%=images.getImages4() %>"></td>
        </tr>
     
</table>






<FORM METHOD="POST" ACTION="UpdateFileUpload?id=<%=images.getId() %>" ENCTYPE="multipart/form-data">
  <table width="75%" border="1" align="center">
    <tr> 
      <td><div align="center">1、 
          <input type="FILE" name="image1" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">2、 
          <input type="FILE" name="image2" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">3、 
          <input type="FILE" name="image3" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">4、 
          <input type="FILE" name="image4" size="30">
        </div></td>
    </tr>
    <tr> 
      <td><div align="center">
          <input type="submit" name="Submit" value="上传">
        </div></td>
    </tr>
  </table>
</FORM>








  </body>
</html>

6.根据图片ID更新图片

updatePictureById



package com.Fly.HBXT.Servlet;




import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.Calendar;
import java.util.Iterator;
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 com.Fly.HBXT.Service.FileUploadService;
import com.Fly.HBXT.model.UserImage;
import com.jspsmart.upload.*;


public class UpdateFileUpload extends HttpServlet {





@SuppressWarnings("unchecked")
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


   response.setContentType("text/html");
request.setCharacterEncoding("GB2312");
response.setCharacterEncoding("GB2312");
PrintWriter out = response.getWriter();
String kk[] = new String[10];
String iamge1="";
String iamge2="";
String iamge3="";
String iamge4="";
SmartUpload mySmartUpload=new SmartUpload();




// System.out.println("更换后的文件名:" + filename);


ServletContext application = this.getServletContext();

String url = "upload/"; // 应保证在根目录中有此目录的存在(也就是说需要自己建立相应的文件夹)




mySmartUpload.initialize(this.getServletConfig(), request, response);
try {
mySmartUpload.upload();

for (int i=0;i<mySmartUpload.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = mySmartUpload.getFiles().getFile(i);
// 若文件表单中的文件选项没有选择文件则继续

if (file.isMissing()) continue;
String ext = file.getFileExt(); // 取得后缀名
String saveurl = ((ServletContext) application).getRealPath("/")
+ url;
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
       saveurl += filename + "." + ext; // 保存路径


      
      filename += "." + ext;
      System.out.println("filename"+filename);

file.saveAs(saveurl, SmartUpload.SAVE_PHYSICAL);


// 显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"+file.getFieldName()+"</TD></TR>");
// kk[i]=(String) file.getFieldName();
kk[i]=filename;
out.println("</TABLE><BR>");

}

  FileUploadService fus=new FileUploadService();
  String id=request.getParameter("id");
 int flag= fus.updateUserImage(kk,Integer.parseInt(id));
  System.out.println("修改结果"+flag);
  List UserImageList=fus.findAllPages();

 // UserImage c=
  request.setAttribute("AllUserImages", UserImageList);
  request.getRequestDispatcher("/FileUpload/showPage.jsp").forward(request, response);
}catch (SmartUploadException e) {
e.printStackTrace();
// TODO: handle exception
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}


}






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值