blogspot.com-GA4

星期六, 10月 30, 2010

JSTL SQL 語法查詢方式

JSTL 查詢 SQL語法的方式

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<sql:setDataSource dataSource="jdbc/sample2" />
<sql:query var="result" >
select NAME from APP.CUSTOMER
</sql:query>
<c:forEach items="${result.rows}" var="row" >
${row.NAME}<br>
</c:forEach>
</body>
</html>


JSTL 雖然提供了這種方式,不過我還是喜歡把DB 處理的部分分開處理,不過在做簡單的頁面的時候這種方式確實方便了很多

星期一, 10月 25, 2010

JSTL 判斷式、日期格式轉換

先設定要使用的 JSTL 語法標籤

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>


1. 判斷日期是否有輸入值有的話,沒有顯示No Value,有的話進行格式化轉換
※ 傳入格式為 字串 yyyyMMdd ,先轉為Date 型態再將其轉為 特定日期格式

<c:choose>
<c:when test="${empty queryDTO.issueDate}">No Value</c:when>
<c:otherwise>
<fmt:parseDate var="tmpObj" value="${queryDTO.issueDate}" type="DATE" pattern="yyyyMMdd" />
<fmt:formatDate value="${tmpObj}" pattern="yyyy/MM/dd" />
</c:otherwise>
</c:choose>


2. 先做字串分割,在進行日期格式轉換

<c:choose>
<c:when test="${empty queryDTO.seDate}">No Value</c:when>
<c:otherwise>
<fmt:parseDate var="tmpObj" value="${fn:substring(queryDTO.seDate,0,8)}" type="DATE" pattern="yyyyMMdd" />
<fmt:formatDate value="${tmpObj}" pattern="yyyy/MM/dd" />
~
<fmt:parseDate var="tmpObj" value="${fn:substring(queryDTO.seDate,9,17)}" type="DATE" pattern="yyyyMMdd" />
<fmt:formatDate value="${tmpObj}" pattern="yyyy/MM/dd" />
</c:otherwise>
</c:choose>

星期五, 10月 08, 2010

HTML Select Javascript 控制

HTML Select Javascript 控制

// 1. 取值方式
document.forms[0].demoSel.options[document.forms[0].demoSel.selectedIndex].value

// 2. 選取對應 下拉
var compElements = document.forms[0].demoSel;
for (var i=0; i< compElements.length; i++){
//loop through all form elements
if (compElements[i].value == company_id+","+company_brief){
compElements[i].checked = true;
}
}

星期日, 10月 03, 2010

fm 日期格式轉換

jstl 1.0
<@taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%>

jstl 1.1
<@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
※ 其 taglib 設定需確認 web.xml 中設定

<fmt:parseDate> 標籤用於解析一個日期,並將結果作為 java.lang.Date 類型的實例返回。
<fmt:parseDate> 標籤看起來和 <fmt:formatDate> 標籤的作用正好相反。

// 轉換 String -> Date
<fmt:parseDate var="tmpObj" value="${sourceStr}" type="DATE" pattern="yyyyMMdd" />
pattern: 來源格式
//轉換 Date -> String
<fmt:formatDate var="tmpStr" value="${tmpObj}" pattern="yyyy/MM/dd" />
pattern: 轉出格式