ブラウザからHTML
- 2010-11-25 Thu 13:44:54
- サーブレット事始め
前回、ブラウザから日本語のテキストを出力する方法を学びました。
しかし、テキストでは表現力の点でいまいちですから、せっかくブラウザを使うからにはHTML言語を使いたいものです。
ブラウザからHTML言語を出力するには、setContentType()メソッドのMIMEタイプの引数をHTMLに指定します。
response.setContentType("text/html; charset=Windows-31J");
text/plain が text/html になっただけです。
そして、println()メソッドの中でHTMLのタグを打ち込んでいきます。
たとえば、
Hello
こんにちは
と出力するコードを作ってみます。
package basic;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloHtml extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=Windows-31J");
PrintWriter out=response.getWriter();
out.println("<html><head><title>HelloHtml</title></head>");
out.println("<body>");
out.println("Hello<br>こんにちは");
out.println("</body></html>");
}
}
out.println()を何度も書くのが面倒であれば、書き連ねることも可能です。
package basic;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloHtml extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=Windows-31J");
PrintWriter out=response.getWriter();
out.println("<html><head><title>HelloHtml</title></head><body>Hello<br>こんにちは</body></html>");
}
}
Eclipseでは、読みやすくするために途中で改行すると自動で「+」記号をつけて連結してくれます。
package basic;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloHtml extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=Windows-31J");
PrintWriter out=response.getWriter();
out.println("<html><head><title>HelloHtml</title></head>" +
"<body>Hello<br>こんにちは</body></html>");
}
}
そうそう、web.xmlの追加も忘れずに。
<servlet>
<servlet-name>HelloHtml</servlet-name>
<servlet-class>basic.HelloHtml</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloHtml</servlet-name>
<url-pattern>/HelloHtml</url-pattern>
</servlet-mapping>
出来上がったら、
http://localhost:8080/siroto/HelloHtml
にアクセスして確認してください。
スポンサーサイト
タグ :
Comments: