JSP-chapter04(1)
🎁JSP 9個の主要デフォルトオブジェクト
-(実際のタイプ)HttpservletRequest、ServeretRequest
-クライアントのリクエスト情報を保存
-<%request.setCharacterEncoding("UTF-8");%>
-(実際のタイプ)HttpServeretResponse、ServeretResponse
-レスポンス情報の保存
-<%response.getBufferSize();%>
-(実際のタイプ)HttpSession
-HTTPセッション情報の保存
-<%session.setAttribute("id", "a001");%>
-(実際のタイプ)オブジェクト
-JSPページを実装するJavaクラスインスタンス
-(実際のタイプ)JspWriter
-JSPページ生成の結果を出力
-<%out.印刷("犬の糞");%>
-JSPページに関する情報
-(実際のタイプ)サーブレットContext
-Webアプリケーションに関する情報を保存します(Webブラウザ間の互換性)
-<%application.setAttribute("name"、"犬の糞");%>
-JSP設定
-(実際のタイプ)Throwable
-例外オブジェクト.エラー・ページでのみ使用する
🎁九九段出力練習 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String danStr = request.getParameter("dan")==null?"2":request.getParameter("dan");
int danInt = Integer.parseInt(danStr);
%>
<!DOCTYPE html>
<html>
<head>
<title>구구단 출력</title>
<script type="text/javascript">
function fn_chg(getObj) {
alert(getObj.value);
//select객체의 선택된 value값을 varDan변수에 저장함(대입)함
var varDan = getObj.value;
location.href="<%=request.getContextPath()%>/chapter05/useOut.jsp?dan=" + varDan;
}
</script>
</head>
<body>
<!-- <h2>2단</h2> -->
<select id="sel" name="sel" onchange="fn_chg(this)">
<%for(int dan= 2; dan <=9; dan++) { %>
<!-- 선택한 값이 화면에 보여지게 함 -->
<option value="<%=dan%>" <%if(dan == danInt) {out.print("selected='selected'");} %>><%=dan%>단</option>
<%} %>
</select>
<table border="1" style="width: 30%;">
<%for(int i=1; i<=9; i++) {%>
<tr>
<td><%out.print(danStr +" x" + i + "=" + (danInt*i)); %></td>
</tr>
<%} %>
</table>
</body>
</html>
パラメータがない場合は、デフォルトの2番目のセグメントを選択します)
パラメータがある場合(セグメント6が選択されている場合)
🎁カレンダー練習の作成 <%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%
String dd = request.getParameter("dd")==null? "1" :request.getParameter("dd");
int ddInt = Integer.parseInt(dd);
%>
<!DOCTYPE html>
<html>
<head>
<title>달력</title>
<script type="text/javascript">
function fn_chg(obj) {
var dd = obj.value;
location.href="<%=request.getContextPath()%>/chapter05/callendar.jsp?dd="+dd;
}
</script>
</head>
<body>
<!-- 1일~31일까지 채우기. 선택된 날짜를 ?dd=1 => 달력에 해당 날짜에 배경색 넣기 -->
<select name="sel" id="sel" onchange="fn_chg(this)">
<%for(int i=1; i <=31; i++) {%>
<option value="<%=i%>" <%if(ddInt ==i) {out.print("selected='selected'");} %>><%=i %>일</option>
<%} %>
</select>
<table border="1" style="width: 50%;">
<tr>
<th>일</th>
<th>월</th>
<th>화</th>
<th>수</th>
<th>목</th>
<th>금</th>
<th>토</th>
</tr>
<tr>
<%
//blank는 7이 주어지고, 행이 끝나면 다시 7이 충전이 됨
//날짜를 출력할 때마다 1씩 감소. 31일을 출력하며 4가 남게됨
int blank = 7;
for(int i=1; i<=31; i++) {
if(ddInt == i) {
out.print("<td style='background-color:gold;'>" + i + "</td>");
}else {
out.print("<td>" + i + "</td>");
}
blank--;
if(i%7==0) {
out.print("</tr><tr>");
blank=7; //7까지 다 찍고 나면 blank를 다시 초기화해줌
}
}
for(int j=0; j<blank; j++) { //31까지 찍고 남은 칸이 2칸이라면, 2칸은 빈칸으로 만들어줌
out.print("<td> </td>");
}
%>
</tr>
</table>
</body>
</html>
パラメータなし(デフォルトは1日出力)
パラメータがある場合(13日を選択した場合)
Reference
この問題について(JSP-chapter04(1)), 我々は、より多くの情報をここで見つけました
https://velog.io/@rkdwltn5/JSP-chapter041
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
String danStr = request.getParameter("dan")==null?"2":request.getParameter("dan");
int danInt = Integer.parseInt(danStr);
%>
<!DOCTYPE html>
<html>
<head>
<title>구구단 출력</title>
<script type="text/javascript">
function fn_chg(getObj) {
alert(getObj.value);
//select객체의 선택된 value값을 varDan변수에 저장함(대입)함
var varDan = getObj.value;
location.href="<%=request.getContextPath()%>/chapter05/useOut.jsp?dan=" + varDan;
}
</script>
</head>
<body>
<!-- <h2>2단</h2> -->
<select id="sel" name="sel" onchange="fn_chg(this)">
<%for(int dan= 2; dan <=9; dan++) { %>
<!-- 선택한 값이 화면에 보여지게 함 -->
<option value="<%=dan%>" <%if(dan == danInt) {out.print("selected='selected'");} %>><%=dan%>단</option>
<%} %>
</select>
<table border="1" style="width: 30%;">
<%for(int i=1; i<=9; i++) {%>
<tr>
<td><%out.print(danStr +" x" + i + "=" + (danInt*i)); %></td>
</tr>
<%} %>
</table>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%
String dd = request.getParameter("dd")==null? "1" :request.getParameter("dd");
int ddInt = Integer.parseInt(dd);
%>
<!DOCTYPE html>
<html>
<head>
<title>달력</title>
<script type="text/javascript">
function fn_chg(obj) {
var dd = obj.value;
location.href="<%=request.getContextPath()%>/chapter05/callendar.jsp?dd="+dd;
}
</script>
</head>
<body>
<!-- 1일~31일까지 채우기. 선택된 날짜를 ?dd=1 => 달력에 해당 날짜에 배경색 넣기 -->
<select name="sel" id="sel" onchange="fn_chg(this)">
<%for(int i=1; i <=31; i++) {%>
<option value="<%=i%>" <%if(ddInt ==i) {out.print("selected='selected'");} %>><%=i %>일</option>
<%} %>
</select>
<table border="1" style="width: 50%;">
<tr>
<th>일</th>
<th>월</th>
<th>화</th>
<th>수</th>
<th>목</th>
<th>금</th>
<th>토</th>
</tr>
<tr>
<%
//blank는 7이 주어지고, 행이 끝나면 다시 7이 충전이 됨
//날짜를 출력할 때마다 1씩 감소. 31일을 출력하며 4가 남게됨
int blank = 7;
for(int i=1; i<=31; i++) {
if(ddInt == i) {
out.print("<td style='background-color:gold;'>" + i + "</td>");
}else {
out.print("<td>" + i + "</td>");
}
blank--;
if(i%7==0) {
out.print("</tr><tr>");
blank=7; //7까지 다 찍고 나면 blank를 다시 초기화해줌
}
}
for(int j=0; j<blank; j++) { //31까지 찍고 남은 칸이 2칸이라면, 2칸은 빈칸으로 만들어줌
out.print("<td> </td>");
}
%>
</tr>
</table>
</body>
</html>
パラメータなし(デフォルトは1日出力)パラメータがある場合(13日を選択した場合)
Reference
この問題について(JSP-chapter04(1)), 我々は、より多くの情報をここで見つけました https://velog.io/@rkdwltn5/JSP-chapter041テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol