Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

servletでのHTMLソース出力方法の工夫による問題点について

PrintWriter out = request.getWriter();
out.println("<html>");
のような冗長なコード記述ではなく、例えば下記のような記述を出来るライブラリを作成しています。

html().writeBody(
    head().writeBody(
        meta().charsetUTF8().write(),
        title().innerText("ページタイトル").write()
    ),
    body().writeBody(
        a().href("helloworld.html").targetBlank().id("hello_link").innerText("Hello World!!").write()
    ) 
);

このような記述が出来れば、タグの閉じ忘れがなくなったり、属性名の誤植がなくなったり、何よりIDEのコード補完で楽にコーディングできるメリットがあります。
ただその反面、HTMLタグの階層が深くなると呼び出されるメソッドの階層も深くなり、servletの稼働を妨げるようなオーバーヘッドになりえるのではないかという懸念事項があります。

僕のWEBサイトへのアクセスが現時点では0に近く、アクセスが集中したらという経験がないので、このライブラリを使ってHTMLソースを生成しても大丈夫かとモヤモヤしています。
経験豊富な皆様からの意見やアドバイスをいただければ幸いです。

ライブラリの使いどころについて、正確にはservletというよりも、JSPのカスタムタグクラスのメソッド内で使う事を考えています。

2

回答

2646

閲覧

2件の回答

評価

30

どれだけ巨大なコードを生成しようとしてるのか知らないけど、数kB程度の文字列連結なんて、よほど妙な作り方しない限りは今の大抵のハードでは一瞬だよ。
自分のサイトなんだし、その仕様が使いやすいならそのまま使えばいい。

評価

0

ご回答ありがとうございます。

言われてみれば、おっしゃるとおりと思います。
冷静に考えてみれば、サーバーのメモリが数GBだとしたら、百万単位のアクセスが集中してやっとメモリが枯渇するかどうかですね。

回答する

ログインしていません。

ログインしなくても回答はできますが、ログインすると、質問・回答の管理、更新があった場合のメールでの通知を受けることができます。 アカウントをお持ちでない方は会員登録を行ってください。

ユーザ名匿名