虛掩的門

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            10 Posts :: 23 Stories :: 5 Comments :: 0 Trackbacks

          這個(gè)例子是通過(guò)用Struts的FormFile來(lái)寫入到MySQL中。。。

          用用戶通過(guò)選一個(gè)圖片,然后按submit就可以存入數(shù)據(jù)庫(kù)中

          其中先要建立一個(gè)表:

          create table test ( name varchar(20), pic blob );在MySQL的test庫(kù)中

          <%@ page language="java"%>
          <%@ taglib uri="<%@ taglib uri="?
          <html>
          ?<head>
          ??<title>JSP for multiForm form</title>
          ?</head>
          ?<body>
          ??<html:form action="/multi" enctype="multipart/form-data">一定要用enctype=“multipart/form-data“不然就提交之后就會(huì)有拋出異常
          ???file : <html:file property="file"/><html:errors property="file"/></br>
          ???name : <html:text property="name"/><html:errors property="name"/></br>
          ???<html:submit/><html:cancel/>
          ??</html:form>
          ?</body>
          </html>

          2. 相對(duì)應(yīng)的ActionForm:

          //Created by MyEclipse Struts
          // XSL source (default): platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_3.8.1/xslt/JavaClass.xsl

          package saoo.struts.form;

          import org.apache.struts.action.ActionForm;
          import org.apache.struts.upload.FormFile;

          /**
          ?* MyEclipse Struts
          ?* Creation date: 08-24-2004
          ?*
          ?* XDoclet definition:
          ?* @struts:form name="multiForm"
          ?*/
          public class MultiForm extends ActionForm {

          ??? // --------------------------------------------------------- Instance Variables

          ??? /** file property */
          ??? private FormFile file;

          ??? /** name property */
          ??? private String name;

          ??? // --------------------------------------------------------- Methods

          ??? /**
          ???? * Returns the file.
          ???? * @return FormFile
          ???? */
          ??? public FormFile getFile() {
          ??????? return file;
          ??? }

          ??? /**
          ???? * Set the file.
          ???? * @param file The file to set
          ???? */
          ??? public void setFile(FormFile file) {
          ??????? this.file = file;
          ??? }

          ??? /**
          ???? * Returns the name.
          ???? * @return String
          ???? */
          ??? public String getName() {
          ??????? return name;
          ??? }

          ??? /**
          ???? * Set the name.
          ???? * @param name The name to set
          ???? */
          ??? public void setName(String name) {
          ??????? this.name = name;
          ??? }

          }

          ?

          3. 對(duì)就的Action:

          //Created by MyEclipse Struts
          // XSL source (default): platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_3.8.1/xslt/JavaClass.xsl

          package saoo.struts.action;

          import java.io.FileNotFoundException;
          import java.io.IOException;
          import java.sql.Connection;
          import java.sql.DriverManager;
          import java.sql.PreparedStatement;
          import java.sql.SQLException;

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

          import org.apache.struts.action.Action;
          import org.apache.struts.action.ActionForm;
          import org.apache.struts.action.ActionForward;
          import org.apache.struts.action.ActionMapping;
          import org.apache.struts.upload.FormFile;

          import saoo.struts.form.MultiForm;

          /**
          ?* MyEclipse Struts
          ?* Creation date: 08-24-2004
          ?*
          ?* XDoclet definition:
          ?* @struts:action path="/multi" name="multiForm" input="/form/multi.jsp" scope="request"
          ?*/
          public class MultiAction extends Action {

          ??? // --------------------------------------------------------- Instance Variables

          ??? // --------------------------------------------------------- Methods

          ??? /**
          ???? * Method execute
          ???? * @param mapping
          ???? * @param form
          ???? * @param request
          ???? * @param response
          ???? * @return ActionForward
          ???? */
          ??? public ActionForward execute(
          ??????? ActionMapping mapping,
          ??????? ActionForm form,
          ??????? HttpServletRequest request,
          ??????? HttpServletResponse response) {
          ??????? MultiForm multiForm = (MultiForm) form;
          ??????? FormFile file = multiForm.getFile();

          ??????? String name = multiForm.getName();
          ??????? try {
          ??????????? Class.forName("org.gjt.mm.mysql.Driver");
          ??????????? String url="jdbc:mysql:///test";
          ??????????? Connection con=DriverManager.getConnection(url,"root","password");
          ??????????? String sql="insert into pic values (?,?)";
          ??????????? PreparedStatement ps =con.prepareStatement(sql);
          ??????????? ps.setString(1, name);
          //加入圖片到數(shù)據(jù)庫(kù)
          ??????????? ps.setBinaryStream(2,file.getInputStream(),file.getFileSize());
          ??????????? ps.executeUpdate();
          ??????????? ps.close();
          ??????????? con.close();
          ??????? } catch (SQLException se) {
          ??????????? se.printStackTrace();
          ??????????? return mapping.findForward("error");
          ??????? } catch (ClassNotFoundException e) {
          ??????????? // TODO Auto-generated catch block
          ??????????? e.printStackTrace();
          ??????????? return mapping.findForward("error");
          ??????? } catch (FileNotFoundException e) {
          ??????????? // TODO Auto-generated catch block
          ??????????? e.printStackTrace();
          ??????????? return mapping.findForward("error");
          ??????? } catch (IOException e) {
          ??????????? // TODO Auto-generated catch block
          ??????????? e.printStackTrace();
          ??????????? return mapping.findForward("error");
          ??????? }
          ??????? return mapping.findForward("success");
          ??? }

          }



          Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=83071

          相關(guān)文章:

          posted on 2006-09-07 10:57 Hardy虛掩的門 閱讀(149) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 大庆市| 池州市| 吉隆县| 丹阳市| 辽中县| 旅游| 包头市| 门源| 鹤山市| 宁蒗| 唐山市| 汾西县| 阿拉善右旗| 清水县| 西昌市| 富锦市| 通河县| 舟山市| 台中市| 崇文区| 陇南市| 渭南市| 蓬溪县| 朝阳市| 宜君县| 宕昌县| 宁海县| 库尔勒市| 蒙自县| 开封市| 元朗区| 十堰市| 开江县| 棋牌| 泗洪县| 南陵县| 桦甸市| 东至县| 汤原县| 抚松县| 柳林县|