初探JSP

       今天我正式開始接觸JSP,今晚和大家聊一丟丟學習的內容,主要是關於JSTL標籤的。雖然網上也有教程,但是

家自己去學習的時候,可能會因爲忽略一些細節導致程序一直報錯,因此我還是談談自己的學習經歷。

       首先談我學習的第一個標籤:jsp:forward,英語不錯的童鞋應該能夠猜出來這個標籤是用於頁面跳轉的,爲什麼

會先談這個標籤呢?這是出於網站安全考慮的,jsp文件存放的目錄一般有兩個:1. 直接存放在WebRoot目錄下

嚴厲禁止) 2. 存放在WEB-INF目錄下(強烈推薦!!)要是直接存儲在WebRoot下面,則可以通過瀏覽器直

就訪問到服務端頁面代碼,這樣顯然是非常危險的;而存放在WEB-INF下面,無法直接通過URL訪問到相應頁面,

必須經index.jsp進行中轉,由index.jsp裏面的jsp:forward page=""標籤進行頁面跳轉,這樣保證頁面的代碼安全。

       接着聊聊學到的四個標籤:<c:out/>, <c:set/>,<sql:setDataSource/>,<sql:query/>,分別講講使用場景:<c:out/>輸出標籤,<c:set/>賦值標籤:<c:set var="salary" value="9000"/>,表示變量名是salary,值是9000;另外兩個sql標籤,下面附圖說明:


<sql:setDataSource/>設置數據庫源,表明是MySQL數據庫,本地的soccer數據庫;

<sql:query/>表明要執行的sql語句,並且將查詢結果存儲在result變量裏面;

這裏面可能會出現driver驅動找不到的報錯:原因就是因爲忘記引入mysql-connect.jar文件,下面附圖:


將jar文件拷貝到lib目錄即可識別

最後講講如何循環讀取數據:

<c:forEach var="row" items="${result.rows}">

<tr>

<td><c:out value="${row.id}"/></td>

<td><c:out value="${row.name}"/></td>

<td><c:out value="${row.grade}"/></td>

</tr>

</c:forEach>


items:循環讀取的數據,var:每次循環的變量名。有可能有些朋友發現<c:out/>無法使用,那肯定是因爲在jsp頁面頂部忘記寫標籤,下面補上標籤:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

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


     好了,今天分享到此結束,我接下來會繼續學習JSP,然後和大家一同進步!

        大家可以關注我的微信公衆號:icode,我會每天推送一篇原創文章,讓大家都能有所收穫!


         
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章