おじょろじょの、「河童の話は聞かないで。」

プログラムに関しての覚え書きや、仕事のぼやきなど。。

jQueryからサーブレットを呼び出してデータ取得、、、パラメータも渡してみたんだが。

どーしてもPHPをインストールできない状況。。

なので、

jQueryからサーブレットを呼んで、データ取得、

をやらねばならぬ。

 
まずはjQuery
<script src="js/jquery-1.11.1.js" type="text/javascript"></script>
<script language="JavaScript" type="text/JavaScript">
<!--
$(function () {
  $.get("http://localhost:8080/sample/GetData.do?num=1", function(data)
  $("div").text(data);
  });
});
//-->
</script>

$.get でサーブレットのdoGetを呼び出す

/GetData.do?num=1 パラメータをつけちゃったり

$("div").text(data); divにテキストを書き出し

$("div").html(data); divにHTMLでデータを書き出し

$('#table1').replaceWith(data); idがtable1のテーブルを入れ替え

など、あとは使い方で。

これ、$("div").text(data);でHTMLがそのままテキストで書き出されて、
ちょっとハマった。

 

次はJava
public class GetData extends javax.servlet.http.HttpServlet implements  javax.servlet.Servlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/plain; charset=UTF-8");
        String strPrm = "";
        strPrm = request.getParameter("num");
        response.getWriter().println(strPrm + "受け取りましたよ");
    }
}
サーブレットこれだけです。
setContentType text/html; charset=Windows-31Jは文字化けますから、
ちゃんとプレーンテキストのUTF-8でセットしてください。
request.getParameter("num") しっかりパラメータも受け取れる。

でweb.xmlの登録忘れずに
    <servlet>
        <servlet-name>GetData</servlet-name>
        <servlet-class>GetData</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>GetData</servlet-name>
        <url-pattern>/GetData.do</url-pattern>
    </servlet-mapping>
    <session-config>

これで、なんとか、あるテーブル(id)が存在したら、

サーブレットからDB接続、HTML作って、テーブル差替え。

実現できた。

ってゆうかこんな状況めったに使わないでしょう普通。

既存の環境が酷過ぎるよ、

いいかげんリプレースしようぜ。

部長!w

 

以下、参考にさせて頂きました。

jQueryからServletを呼び出すHelloWorld )
http://sanofc.blogspot.jp/2013/01/jqueryservlethelloworld_27.html
jQueryでの出力方法)
http://www.omnioo.com/record/javascriptjquery/jquery_output/