欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SSH的上传问题! 博客分类: SSH SSHMyeclipseJSPStrutsJava 

程序员文章站 2024-02-05 16:11:46
...

前台用Struts标签:[html:file /]

具体代码:

JSP:

  1. [html:form action="/eqPertainDoc.do?method=save"  method="post" enctype="multipart/form-data"]文档内容:   
  2. [html:file property="docContent"  styleClass="formDetailTxt" size="30"/]   
  3. [/html:form]  

FormBean:

  1. private byte[] document;   
  2. private FormFile docContent;   
  3. public  byte[] getDocument() {   
  4.             return document;   
  5. }   
  6. public void setDocument( byte[] document) {   
  7.            this.document = document;   
  8. }   
  9. public FormFile getDocContent() {   
  10.            return docContent;   
  11. }   
  12. public void setDocContent(FormFile docContent) {   
  13.             this.docContent = docContent;   
  14. }  

其中document为数据库中类型为BLOB大字段,而docContent为自己定义的用于存JSP页面的一个属性!

Action:

  1. Form form1 = (EqFrom)form;   
  2. try {   
  3. form1.setDocument(form1.getDocContent().getFileData());  //得到文件数据 
  4.  }catch (FileNotFoundException e) {   
  5.        e.printStackTrace();   
  6.         }      

XXX.hbm.xml文件中原来(就是由MyEclipse自动生成的为)document属性为String:

  1. "document" type="String">   
  2.   "DOCUMENT" />   
  3.    

现在改为:

  1. "document" type="org.springframework.orm.hibernate3.support.BlobByteArrayType">   
  2.     "DOCUMENT" />   
  3.   

相应的XXX.java还有AbstractXXX.java文件也要将String 转换成byte[];