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

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

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

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

Java

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

servlet

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

解決済

if elseをうまく作れないです。 どうぞよろしくお願いします。

edoooooo
edoooooo

総合スコア476

JSP

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

Java

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

servlet

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

2回答

0評価

0クリップ

3785閲覧

投稿2016/04/29 14:57

編集2016/04/30 05:25

doPostメソッドで、新規登録で入力した値がnullでないか?
またはその値が、すでにデータベースにないか?
そのどちらでもない場合に、新規登録を実行して、データベースに登録したいです。
どのように書けば、if else がしっかり組み立てられるのでしょうか?

java

package servlet; import java.io.IOException; import java.util.List; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import model.Mutter; import model.User; import model.SetLogic; import model.LoginLogic; /** * Servlet implementation class Set */ @WebServlet("/Set") public class Set extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/set.jsp"); dispatcher.forward(request, response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); String name=request.getParameter("name"); String pass=request.getParameter("pass"); User user=new User(name,pass); if(name.length()==0 || pass.length()==0){ request.setAttribute("newerrorMsg", "未入力があります。"); RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/set.jsp"); dispatcher.forward(request, response); } //LoginLogicを使ってmutterListを取得 LoginLogic loginLogic=new LoginLogic(); List<Mutter>mutterList=loginLogic.execute(user); if(mutterList.size()!=0){ request.setAttribute("setErrorMsg","すでに登録されています。"); RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/set.jsp"); dispatcher.forward(request, response); } //mutter1とする for(Mutter mutter1:mutterList){ if(mutter1.getUserName().length()!=0||mutter1.getUserPass().length()!=0){ request.setAttribute("setErrorMsg", "すでに登録されています。"); RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/set.jsp"); dispatcher.forward(request, response); }else{ HttpSession session=request.getSession(); session.setAttribute("loginUser",user); User loginUser=(User)session.getAttribute("loginUser"); Mutter mutter=new Mutter(loginUser.getName(),loginUser.getPass()); SetLogic setLogic=new SetLogic(); try{ setLogic.execute(mutter); }catch(ClassNotFoundException e){ e.printStackTrace(); } RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/jsp/setResult.jsp"); dispatcher.forward(request, response); } } } }

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

A-pZ

2016/04/29 15:42

if文やfor文など、処理が分岐または繰り返しするコードに関してはインデントをそろえたほうがデバッグしやすいですし、他の方も見やすいのでできればインデントは整えたほうがよいでしょう。データを取得していると思われる loginLogic.execute(user) の LoginLogic.execute(user)で行われている処理とその結果の内容がわからないですが、おそらく mutter1 の処理は不要かと思われます。
edoooooo

2016/04/30 05:23

ありがとうございます。修正してみます。

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

JSP

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

Java

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

servlet

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