一、 同等编程方式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>
时间: 2024-10-05 19:44:07