`
lzj520
  • 浏览: 213414 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ssh上传并显示图片

阅读更多
使用的是将图片保存到服务器,并记录路径名的方式,代码如下:

struts部分:

 <form-bean name="upfileForm" type="org.apache.struts.validator.DynaValidatorForm">
      <form-property name="filename" type="java.lang.String" />
      <form-property name="filedata" type="org.apache.struts.upload.FormFile" />
    </form-bean>

    <action
      attribute="upfileForm"
      input="/upload/uploadfile.jsp"
      name="upfileForm"
      path="/upfile"
      scope="request"
      validate="true"
      type="com.yourcompany.struts.action.UpfileAction">
      <forward name="ok" path="/upload/ok.jsp" />
    </action>

    <action path="/displayimg" type="com.yourcompany.struts.action.DisplayimgAction">
      <forward name="ok" path="/upload/displayimg.jsp" />
    </action>

 

public class UpfileAction extends Action {
 /*
  * Generated Methods
  */

 /**
  * Method execute
  * @param mapping
  * @param form
  * @param request
  * @param response
  * @return ActionForward
  */
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {
  DynaActionForm upfileForm = (DynaActionForm) form;// TODO Auto-generated method stub  
   Image image = new Image();

   String strimgname = upfileForm.getString("filename");
   image.setImgname(strimgname);
   imageDAO.save(image); 
  FormFile filedata = (FormFile)upfileForm.get("filedata");
   ServletContext servletContext = this.getServlet().getServletContext();
   String filePath = servletContext.getRealPath("/");
   try {
    InputStream stream = filedata.getInputStream();
    OutputStream bos = new FileOutputStream(filePath + "/image/" + filedata.getFileName());
     int bytesRead = 0;
             byte[] buffer = new byte[8192];
             while ( (bytesRead = stream.read(buffer, 0, 8192)) != -1) {
             bos.write(buffer, 0, bytesRead);
             }
             bos.close();
             stream.close();
   }catch (FileNotFoundException e) {
             // TODO Auto-generated catch block
             e.printStackTrace();
         } catch (IOException e) {
             // TODO Auto-generated catch block
             e.printStackTrace();
         }
         return mapping.findForward("ok");
 }
 
 private ImageDAO imageDAO;
 public void setImageDAO(ImageDAO dao){
  this.imageDAO = dao;  
 }
 
}


 

public class DisplayimgAction extends Action {
 /*
  * Generated Methods
  */

 /**
  * Method execute
  * @param mapping
  * @param form
  * @param request
  * @param response
  * @return ActionForward
  */
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {
  // TODO Auto-generated method stub
  List results = imageDAO.findAll();
  if(results!=null){
   HttpSession session=request.getSession();
            session.setAttribute("results",results);
            return mapping.findForward("ok");
  }return mapping.findForward("fail");
 }
 
 private ImageDAO imageDAO;
 public void setImageDAO(ImageDAO dao){
  this.imageDAO = dao;  
 }
 
}


ImageDAO.java

 public void save(Image transientInstance) {
     Session session =this.getSession();
     Transaction tx = null;
     tx = session.beginTransaction();
     session.save(transientInstance);
     tx.commit();
     session.evict(transientInstance);
 }

 public List findAll() {
  Session session =this.getSession();
  Query query = session.createQuery("from Image");
  return query.list();
 }

displayimg.jsp

<logic:iterate id="element" name="results">
    <tr>
   <td width="100"><bean:write name="element" property="id"/> </td>
   <td width="100"><img  src="image/<bean:write  name='element' property='imgname'/>"/></td>
   </tr>
</logic:iterate>

uploadfile.jsp

<html:form action="/upfile" enctype = "multipart/form-data">
   filename : <html:text  property="filename"/><html:errors property="filename"/><br/>
   filedata : <html:file property="filedata"/><html:errors property="filedata"/><br/>
   <html:submit/><html:cancel/>
  </html:form>

<!-- u-f8 filter -->
  <filter>
  <filter-name>encodingFilter</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
 </filter>

 <filter-mapping>
  <filter-name>encodingFilter</filter-name>
  <url-pattern>*.do</url-pattern>
 </filter-mapping>

 <filter-mapping>
  <filter-name>encodingFilter</filter-name>
  <url-pattern>*.jsp</url-pattern>
 </filter-mapping>

分享到:
评论

相关推荐

    SSH2上传实现

    - **提交结果处理**:根据后端返回的结果显示成功或失败消息,并执行相应操作。 #### 三、后端实现 ##### 1. Struts.xml配置 **目标**:配置Struts2拦截器,指定文件上传处理的Action类。 **配置示例**: ```...

    SSH框架实现文件上传(上传记录到数据库)

    在这个场景下,我们将讨论如何使用SSH框架来实现文件上传,并将上传记录存储到数据库中。 首先,我们需要了解SSH框架的基本概念。Spring负责应用的依赖注入和事务管理,Struts2作为控制器处理HTTP请求,而Hibernate...

    ssh保存图片到数据库

    浏览器或其他接收方将这个数据流解释为图片并显示出来。 6. **性能优化**:由于图片数据通常较大,直接存储和读取可能会对数据库性能产生影响。因此,实践中可能还会涉及一些优化策略,如使用文件系统存储图片,只...

    上传电影、图片ssh2

    5. **uppic.jsp**:这个文件可能与上传图片有关,用户可以通过此页面选择并上传图片到服务器。 6. **showpic.jsp**:类似showmovie.jsp,它可能用于显示已上传的图片,用户可以预览和管理他们的图片集合。 7. **...

    上传并显示图片

    本项目利用SSH(Spring、Struts2和Hibernate)框架实现上传图片并即时显示的功能,这为我们提供了一个理解Web应用程序开发中文件上传处理的实例。 首先,Spring框架作为核心的依赖注入(DI)和面向切面编程(AOP)...

    SSH框架实现表单上传图片实例代码

    SSH框架实现表单上传图片实例代码是指利用SSH框架实现表单上传图片的功能,通过在HTML表单中添加上传控件,用户可以选择要上传的图片,点击上传按钮,图片将被上传到服务器,然后显示在页面上。 知识点1:HTML表单...

    ssh框架用struts2+hibernate实现图片的上传源码

    需要注意的是,为了提供良好的用户体验,可以显示上传进度,并处理可能的错误情况。 总的来说,SSH框架用Struts2+Hibernate实现图片的上传,需要整合前端和后端的技术,包括Struts2的Action处理、Hibernate的数据库...

    SSH框架实现登陆、注册、分页、图片上传入门

    在SSH项目中,可以使用Struts2的FileUpload插件处理文件上传,将图片保存到服务器的特定目录。需要注意的是,需要处理文件大小限制、格式验证以及错误处理,以保证上传过程的安全和稳定。 通过这个入门项目,初学者...

    对blob大数据的操作——图片上传与显示*(自己实践可用)

    在本文中,我们将探讨如何使用SSH2框架将图片上传到Oracle数据库中,并成功地将其转换成Blob数据存储。同时,我们还将介绍如何在Service层使用事务处理代理,以避免报错。 图片处理思路 在Service层,我们需要使用...

    SSH增删改查+分页+图片上传

    对于图片上传,Spring和Hibernate可以配合处理文件的存储,例如将文件保存在服务器的文件系统或云存储服务中,并将文件路径或URL存储在数据库中。 在分页功能的实现上,开发者通常会结合Hibernate的Criteria API或...

    JavaWeb项目SSH框架的文件上传下载

    综上所述,实现基于SSH框架的文件上传下载及图片显示涉及多个层面的技术,包括SSH框架的整合、文件存储策略、前端交互以及安全性和性能优化。掌握这些知识点,可以让你在JavaWeb开发中更加游刃有余。

    ssh框架上传文件测试

    在SSH框架中,文件上传功能是常见的需求,特别是在处理用户提交的表单数据时,例如图片、文档或者其他多媒体文件的上传。这个“ssh框架上传文件测试”可能是针对这一功能的一个实践项目或测试案例。 首先,让我们...

    基于SSH的文件上传与下载

    7. **安全性**:为了防止恶意文件上传和跨站脚本攻击(XSS),需要对上传的文件类型进行检查,限制只能上传特定类型的文件(如图片、文档等)。同时,对用户输入进行过滤和转义,防止注入攻击。 8. **异常处理**:...

    上传 预览 文字水印 图片水印

    在服务器端,处理图片并添加文字水印后保存,返回带有水印的新图像URL。在客户端,可以通过调整CSS样式,使用绝对定位在图片上动态添加文字水印,但这仅限于视觉效果,无法防止图片被复制。 **图片水印**与文字水印...

    uploadify struts2实现图片上传

    该插件的一大亮点在于其支持多文件选择、上传进度显示以及错误处理机制,使得用户能够方便地监控上传进度,并在出现问题时及时得到反馈。 接下来,我们谈谈Struts2,这是一个Java Web开发框架,它提供了模型-视图-...

    ssh嵌入flex实现在线拍照,并付图片预览

    在本项目"ssh嵌入flex实现在线拍照,并付图片预览"中,我们将探讨如何整合这两者来实现一个功能,让用户能够在Web端进行在线拍照并实时预览图片。 首先,SSH框架中的Spring作为依赖注入和控制反转的容器,负责管理...

    SSH_+ajax_upload图片_无刷新上传

    ### SSH + AJAX 无刷新上传图片技术解析 #### 一、引言 在现代Web开发中,用户体验至关重要。为了提供更流畅的操作体验,无刷新上传图片成为了一个热门话题。本文将详细探讨如何利用SSH(Spring、Struts2、...

    传送图片至FTP及显示FTP上图片

    通过以上步骤,你可以成功地将图片上传到FTP服务器,并在需要时显示它们。这个过程对于网站管理、数据备份和跨设备共享图片等场景非常有用。记住,根据你的具体需求,可能需要调整这些步骤或使用更高级的功能。

    SSH框架 Struts+Spring+Hibernate+Ajax+功能齐全(验证码+二进制文件图片读写数据库)的网站.zip

    同时,Web应用程序可能包含JavaScript或Java代码来上传、显示和验证图片。 6. **数据库**:文件列表中的`SQLServerDB`表明项目使用了SQL Server数据库。Hibernate会与SQL Server进行交互,执行CRUD操作,存储和检索...

    图片上传数据库和从数据库啊把图片取出来

    - 当需要显示图片时,前端通过HTTP GET请求向服务器请求图片数据。服务器根据数据库中的信息找到图片文件,返回给客户端。 - 鉴权与权限控制:在实际应用中,图片访问可能需要验证用户权限。这可以通过设置HTTP头...

Global site tag (gtag.js) - Google Analytics