標籤:ble blog 放棄 info nic 上下 efi 原創 並且
一、 同等編程方式jsp與asp.net的不同
app需要做一個簡單網站,和幾個使用者推廣連結,所以涉及到web這塊開發,原本昨天想直接使用asp.net來做,但是之後放棄了這個想法,因為資料提供者都是用的java servlet,最開始想直接使用靜態html頁面+servlet+ajax的方式來做,這種方式雖然在網站開發中對各種語言都是通用的,但是有個弊端,綁定資料這塊非常複雜,所以還是嘗試找了個兩個jsp案例來看看,如果比前面的方式更複雜,就直接用前面種方式了,下的案例來看了,感覺jsp這種編程方式之前在asp.net中使用過,有點不一樣的是asp.net如果用這類方式,前端繫結資料來自頁面內部,資料庫操作這塊都是在內部執行後傳回值前端取綁定, 但是jsp不一樣,jsp資料訪問這塊和html在一個頁面層,其實感覺同類的方式,jsp這塊比asp.net先進,不過asp.net使用這樣方式做編程的時候不多,只能算它一個附帶的功能,接下去我就主要說技術這塊了。
二、 jsp
使用jstl做資料庫操作,需要增加兩個庫,jstl、standard,從網上下載這兩個庫,直接copy進tomcat的lib檔案夾下,這兩個庫的作用,jstl負責資料庫這塊的操作,standard是使用jstl中標籤所需的庫,standard就相當於是使用jstl的輔助,並且這裡要注意一點,本人是在mac os下做的開發,直接在官方下載的這兩個庫的組合包會報錯,無法找到jstl需要的標籤輔助類,如果直接從官方下載的組合jar報錯,可以在網上分別下載jstl和standard放入tomcat lib。
1 <%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <%@ page import="java.io.*,java.util.*,java.sql.*"%> 4 <%@ page import="javax.servlet.http.*,javax.servlet.*" %> 5 6 <!--引入 資料庫操作庫 --> 7 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 8 <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> 9 10 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">11 12 13 <html>14 <head>15 <title>JSP Load Demo</title>16 </head>17 <body>18 <!-- 資料庫名稱 -->19 <sql:setDataSource var="ProjectDataBase" driver="com.mysql.jdbc.Driver"20 url="jdbc:mysql://120.25.172.21:3306/ProjectDataBase?useUnicode=true&characterEncoding=utf8"21 user="root" password="123456"/>22 <!-- 資料庫名稱 -->23 <sql:query dataSource="${ProjectDataBase}" var="result">24 SELECT * from infoSheet limit 0,15;25 </sql:query>26 27 <table border="1" width="100%">28 <tr>29 <th>I D</th>30 <th>標 題</th>31 <th>內 容</th>32 <th>發布時間</th> 33 </tr><!-- 將返回的資料集合迴圈綁定到table的行 -->34 <c:forEach var="row" items="${result.rows}">35 <tr> 36 <!-- 取資料庫返回的欄位值 -->37 <td><c:out value="${row.id}"/></td>38 <td><c:out value="${row.infoTitle}"/></td>39 <td><c:out value="${row.infoContent}"/></td>40 <td><c:out value="${row.publishTimes}"/></td>41 </tr>42 </c:forEach>43 </table>44 45 </body>46 </html>
java JSP(原創新手可進)