初探JSP

       今天我正式开始接触JSP,今晚和大家聊一丢丢学习的内容,主要是关于JSTL标签的。虽然网上也有教程,但是

家自己去学习的时候,可能会因为忽略一些细节导致程序一直报错,因此我还是谈谈自己的学习经历。

       首先谈我学习的第一个标签:jsp:forward,英语不错的童鞋应该能够猜出来这个标签是用于页面跳转的,为什么

会先谈这个标签呢?这是出于网站安全考虑的,jsp文件存放的目录一般有两个:1. 直接存放在WebRoot目录下

严厉禁止) 2. 存放在WEB-INF目录下(强烈推荐!!)要是直接存储在WebRoot下面,则可以通过浏览器直

就访问到服务端页面代码,这样显然是非常危险的;而存放在WEB-INF下面,无法直接通过URL访问到相应页面,

必须经index.jsp进行中转,由index.jsp里面的jsp:forward page=""标签进行页面跳转,这样保证页面的代码安全。

       接着聊聊学到的四个标签:, <sql:setDataSource/>,<sql:query/>,分别讲讲使用场景:输出标签,赋值标签:<c:set var="salary" value="9000"/>,表示变量名是salary,值是9000;另外两个sql标签,下面附图说明:

初探JSP_第1张图片

<sql:setDataSource/>设置数据库源,表明是MySQL数据库,本地的soccer数据库;

表明要执行的sql语句,并且将查询结果存储在result变量里面;

这里面可能会出现driver驱动找不到的报错:原因就是因为忘记引入mysql-connect.jar文件,下面附图:

初探JSP_第2张图片

将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:每次循环的变量名。有可能有些朋友发现无法使用,那肯定是因为在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,我会每天推送一篇原创文章,让大家都能有所收获!

初探JSP_第3张图片

         

你可能感兴趣的:(jsp,mysql,jstl,web-inf,Java开发)