3

Struts 2 アプリケーションのデータベースに画像を挿入したい。

私は3つのクラスを使用しています:

  1. モデルクラス
  2. 準備済みステートメントを使用してクエリを挿入する DAO クラス。
  3. アクションクラス

JSP では<s:file>tag を使用しています。

私の質問は、どのタイプのモデル クラスのプライベート変数を使用する必要があるかということです。

データベースでは、BLOBタイプを使用して画像を保存していますが、正しいですか? そうでない場合は、提案をお願いします。

Srtuts 2を使用してデータベースに画像を挿入するには?

4

2 に答える 2

4

ファイルを Struts 2 にアップロードするには、すでに Struts 2 FileUpload Interceptor を使用しており、アクションまたはモデル クラスでこれらのフィールドを定義する必要があります。

public class UploadAction extends ActionSupport {
      private File file;
      private String contentType;
      private String filename;

      public void setUpload(File file) {
         this.file = file;
      }

      public void setUploadContentType(String contentType) {
         this.contentType = contentType;
      }

      public void setUploadFileName(String filename) {
         this.filename = filename;
      }

      public String execute() {
         //...
         return SUCCESS;
      }
 }

次のような方法でFileデータを変換できますbyteArray

IOUtils.toByteArray(InputStream input);

Blob次のような方法で、それをデータベースに保存できます

Blob blob = connection.createBlob();
blob.setBytes(1, bytes);
于 2013-04-24T06:50:23.917 に答える