2016-06-18 8 views
0

私は現在のJavaのWeb動的なプロジェクトを開発していますし、私は私のhtmlページでメニューバーを持っているに応じて、実行されるコードのどの部分を選択。ユーザーがメニューに表示される利用可能なオプションの1つをクリックすると、一致するサーブレット内のコードのどの部分が実行されるかを制御できるようにしたいと考えています。ユーザーの選択

答えて

1

あなたのメニュー項目は、次のようなリンク、関連付けられている:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>simple Servlet</title> 
</head> 
<body> 
<ul> 
    <li><a href="action?action=doThat">that Action</a></li> 
    <li><a href="action?action=doThis">this Action</a></li> 
</ul> 

</body> 
</html> 

配備記述子:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
     version="3.0"> 

    <servlet> 
     <servlet-name>action</servlet-name> 
     <servlet-class>de.so.ActionServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>action</servlet-name> 
     <url-pattern>/action</url-pattern> 
    </servlet-mapping> 
</web-app> 

とサーブレットのコード:用

package de.so; 

import java.io.IOException; 
import java.io.Writer; 
import javax.servlet.ServletException; 
import javax.servlet.http.*; 

public class ActionServlet extends HttpServlet 
{ 

    protected void doGet(HttpServletRequest request, 
         HttpServletResponse response) throws ServletException, 
      IOException 
    { 
     String action = request.getParameter("action"); 
     Writer out=response.getWriter(); 

     if (action == null || action.isEmpty()) 
     { 
      out.write("Action empty"); 
     } 
     else if (action.equals("doThis")) 
     { 
      out.write("perform this Action"); 
     } 
     else if (action.equals("doThat")) 
     { 
      out.write("perform that Action"); 
     } 
    } 
} 
+0

@Draken感謝あなたの答え。あなたのやり方は素晴らしい!しかし、私はどのようにアクション=アクション= doThat実際に動作し、具体的には疑問符の演算子の使用を見つけることを試みた。私は? if-elseステートメントの代わりに使用することができます。再度、感謝します!! – Xaris

+0

あなたは歓迎:-)だけど、私は ':-)をドラケンないよ?'オペレータが、単にクエリ文字列私のミスのため申し訳ありません – JimHawkins

+0

からURIを出発したセパレータではありません。私は最初にDrakenの名前を見て急いで、私は誤って彼の名前を書いた。ああなるほど。もう一度、ありがとう! – Xaris

関連する問題