質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

Q&A

解決済

2回答

9846閲覧

getParameterの値をBeanクラスに格納する

mutani

総合スコア20

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

0グッド

0クリップ

投稿2018/09/19 08:10

分からないことがありましたので質問いたします。

前提・実現したいこと

現在、JSP/servletの学習を行っています。
DBに接続しinsert文を実行したいので、
以下のソースコードでgetした値をbeanに持っていきたいのですが書き方がわかりません。
「JSP→servlet→Bean→DAO→DB」

servletとBeanのソースコードを記載しておきます。

該当のソースコード

servlet

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("UTF-8"); response.setContentType("UTF-8"); response.getWriter().append("Served at: ").append(request.getContextPath()); RequestDispatcher rd = request.getRequestDispatcher("/ProductInfo.jsp" ); rd.forward(request,response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //doGet(request, response); request.setCharacterEncoding("UTF-8"); String product_id = request.getParameter("product_id"); String product_genre_code = request.getParameter("product_genre_code"); String product_name = request.getParameter("product_name"); String product_maker = request.getParameter("product_maker"); String product_price = request.getParameter("product_price"); String product_stock = request.getParameter("product_stock"); String product_sales = request.getParameter("product_sales"); String product_remarks = request.getParameter("product_remarks"); //これより先の書き方がわかりません。 恐らくListにしてスコープにすると思うのですが書き方がわかりません。 RequestDispatcher dispatcher = request.getRequestDispatcher("/ProductList.jsp" ); dispatcher.forward(request,response); } }

Bean

package model; import java.io.Serializable; public class t_productBean implements Serializable{ private static final long serialVersionUID = 1L; private int product_id; private String product_genre_code; private String product_name; private String product_maker; private int product_price; private int product_stock; private int product_sales; private String product_remarks; public t_productBean(int product_id ,String product_genre_code,String product_name ,String product_maker, int product_price,int product_stock,int product_sales,String product_remarks) { this.product_id = product_id; this.product_genre_code = product_genre_code; this.product_name = product_name; this.product_maker = product_maker; this.product_price = product_price; this.product_stock = product_stock; this.product_sales = product_sales; this.product_remarks = product_remarks; } public void setproduct_id(int product_id) {this.product_id = product_id;} public int getproduct_id() {return product_id;} public void setproduct_genre_code(String product_genre_code) {this.product_genre_code = product_genre_code;} public String getproduct_genre_code() {return product_genre_code;} public void setproduct_name(String product_name) {this.product_name = product_name;} public String getproduct_name() {return product_name;} public void setproduct_maker(String product_maker) {this.product_maker = product_maker;} public String getproduct_maker() {return product_maker;} public void setproduct_price(int product_price) {this.product_price = product_price;} public int getproduct_price() {return product_price;} public void setproduct_stock(int product_stock) {this.product_stock = product_stock;} public int getproduct_stock() {return product_stock;} public void setproduct_sales(int product_sales) {this.product_sales = product_sales;} public int getproduct_sales() {return product_sales;} public void setproduct_remarks(String product_remarks) {this.product_remarks = product_remarks;} public String getproduct_remarks() {return product_remarks;} }

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

A-pZ

2018/09/19 08:24

t_productBeanのコンストラクタにパラメータを渡せばBeanはできていると思います。INSERT文を実行しているソースコードが記載されていませんが、INSERT文をつくるところがわからないのでしょうか?
mutani

2018/09/19 08:35

ご連絡ありがとうございます。t_productBeanへパラメータを渡す方法(書き方)がわかりません。自分なりに調べてやってはいるのですがサッパリで今日一日かけてやっていますが進捗が無い状況なので掲示板に投稿させていただきました。尚、insert文は一応作っていはいますが、そもそもの値が持ってこれていないのでまずはそれを持ってきてからいろいろと試していこうと思っています。
guest

回答2

0

ベストアンサー

リクエストパラメータの取得は常にStringですが、値を格納したい t_productBean のコンストラクタの引数には、数値のものも含まれていますので、これらを適切に Integerへ変換すると良いでしょう。

例えば product_id は int なので、以下のようになります。

java

1String product_id_parameter = request.getParameter("product_id"); 2 3Integer product_id = Integer.parseInt(product_id_parameter);

他の値も必要に応じて置き換えてください。

投稿2018/09/19 08:45

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mutani

2018/09/19 09:55

ご回答ありがとうございます。 お陰様で値を格納できたと思いますが、insert文がうまくいっていなかったようなので、これから調べて学習を進めていこうと考えております。 先日に引き続きご助言いただきまして、ありがとうございました。
guest

0

Beanクラスのインスタンスを生成し、それをスコープに渡せば良いです。

投稿2018/09/19 08:20

dice142

総合スコア5158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mutani

2018/09/19 08:46

ご回答ありがとうございます。 調べてやってみます。
dice142

2018/09/19 08:52

方向性だけ示しましたが少しだけ補足します。 t_productBean bean = new t_productBean(aaa, bbb, ccc, ...); のようにt_productBeanのコンストラクタに必要な引数を渡してインスタンス化する必要があります。 request.getParameterで取得した値は全て文字列なので、A-pZ様の仰るように数値にするものは適切な変換が必要です。
mutani

2018/09/19 09:56

補足いただきありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問