トップ  eラーニング  書籍紹介  用語集

Google

言語

開発環境

Webアプリ/ミドル

データベース

OS/ネットワーク

ITスキル

海外サイト翻訳

書籍検索

用語検索

session利用-tomcat上のWebアプリ作成

動作確認した環境

アプリの構成

□tomcatホームディレクトリ
├□conf
|└□Catalina
|  └□localhost
|    └◆test.xml
└□webapps
  └□test
    └□WEB-INF
      ├□classes
      |└◆Counter.class  
      └◆web.xml

コンテキスト指定(test.xml)


<Context path="/test"
         docBase="<tomcatホームディレクトリ>/webapps/test"
         debug="0" reloadable="true">
</Context>

Servlet(Counter.java)


import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class Counter extends HttpServlet {
    private static final long serialVersionUID = 1L;
    public void doGet(HttpServletRequest req, HttpServletResponse res) 
                         throws IOException, ServletException {
        HttpSession session = req.getSession();
        Integer count = (Integer) session.getAttribute("count");
        if (count == null) {
            count = new Integer(0);
        }
        count = new Integer(count.intValue() + 1);
        session.setAttribute("count", count);
        res.setContentType("text/html; charset=UTF-8");
        PrintWriter out = res.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Counter</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<p>");
        out.println("Session ID = ");
        out.println(session.getId());
        out.println("</p>");
        out.println("<p>");
        out.println("Count = ");
        out.println(count);
        out.println("</p>");
        out.print("<a href=");
        out.print("\"http://<tomcatサーバホスト>:8080/test/Counter\"
        out.println(">RERODE</a>");
        out.println("</p>");
        out.println("</body>");
        out.println("</html>");
    }
}

コンパイル


java -classpath <tomcatホーム>/lib/servlet-api.jar:. Counter.java

配備記述子(web.xml)


<?xml version="1.0" encoding="UTF-8" ?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
             http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
         version="2.4">
    <servlet>
        <servlet-name>Counter</servlet-name>
        <servlet-class>Counter</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>Counter</servlet-name>
        <url-pattern>/counter</url-pattern>
    </servlet-mapping>
</web-app>

動作確認

ブラウザより、「http://<tomcatサーバのホスト>:8080/test/counter」へアクセス。 「RERODE」のリンクをクリックして、「count=<数字>」の数字がくりあがればOK。

戻る

Loarding…

グループサイト  zealseeds  zealseedsラーニング  zealseedsブックス  名か字  名科辞典  幸福の木の育て方

Copyright (C) 2007-2011 zealseeds. All Rights Reserved.お問合せ