5月29日

JSTL

fmtによる書式の利用

参考URL http://www.javaroad.jp/opensource/js_taglibs4.htm

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="abc.*,java.util.*" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>テーブル</title>
</head>
<body>

<%
	List<Media> list = new ArrayList<Media>();
	list.add(new Media("おはよう", "奥本", 100, 30, 86400000l));
	list.add(new Media("こんにちは", "乙女", 200, 40, 86400000l * 365));
	list.add(new Media("こんばんは", "梶原", 300, 50, 86400000l * 365 * 10));
	request.setAttribute("list", list);
%>

<table>
<tr>
  <th></th>
  <th>タイトル</th>
  <th>作者</th>
  <th>サイズ</th>
  <th>長さ</th>
  <th>作成日</th>
</tr>

<c:forEach var="m" items="${list}">
	<tr>
		<td>
		<c:if test="${m.size > 100}">New!</c:if>
		</td>
		<td>${m.title}</td>
		<td>${m.author}</td>
		<td>${m.size}</td>
		<td>${m.length}</td>
		<td><fmt:formatDate value="${m.created}" pattern="yyyy/MM/dd"/></td>
	</tr>
</c:forEach>

</table>


</body>
</html>

リクエストパラメータの利用

form を使う。
input.jsp と result.jsp を作成する。input.jsp では、form でテキスト(パラメータ名: name)を入力し、submit で result.jsp に遷移する。

input.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>テキストを入力</title>
</head>
<body>

<h1>リクエストパラメータの送信</h1>

<form action="result.jsp">
<input type="text" name="name" />
<input type="submit" value="送信" />
</form>

</body>
</html>

result.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>リクエストパラメータの受信</title>
</head>
<body>

<h1>リクエストパラメータの受信</h1>

受信したテキスト: <%=request.getParameter("name") %>

</body>
</html>

文字化けの解消

テキストに英数字を入力した場合は正常にデータが渡されるが、日本語だと文字化けする。それを解消する方法について。

POSTメソッドを使う

form で POST メソッドを使い、受信側の result.jsp でパラメータのデータ取得前に以下のスクリプトレットを追加すればよい。

<form action="result.jsp" method="post">
<%
    request.setCharacterEncoding("utf-8");
%>

GETメソッドでの対応

GETメソッドではURLにデータが含まれるため、URLデータのエンコードを指定する必要がある。

パッケージエクスプローラの Servers の下の ローカルホストの Tomcat v7.0 サーバー – config を展開し、その下の server.xml をダブルクリックして開く。画面下の「ソース」タブを選択し、”8080″を検索する(たぶん64行目)。
Connector ディレクティブの最後にuseBodyEncodingForURI=”true”の設定を追加する。

    <Connector connectionTimeout="20000"
    		   port="8080"
    		   protocol="HTTP/1.1"
    		   redirectPort="8443"
                   useBodyEncodingForURI="true" />
 

文字列に「あああ」を入力して送信したときに、URLが以下のようになっていれば設定が反映された動作になっている(name=の後の部分)。

http://localhost:8080/jsp/result.jsp?name=%E3%81%82%E3%81%82%E3%81%82

Spring MVC/Roo

「はじめに」を読んでみる。
わからない単語をリストアップする。
それぞれの単語を調べてみる。

  • MVC
  • IaaS
  • Struts
  • DI
  • AOP
  • Bean

STSのインストール

STSインストールプログラム:\\kgakusei1\share\澤田\eclipse
インストール先: C:\Users\se3\springsource
JDKのパス:C:\All-in-One-Eclipse4.3\java\7

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です