- 浏览: 168817 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
guiqing85:
补着用:
function getValueById(rpt, ...
JavaScript内置对象属性及方法 -
yzhw:
从数据库生成实体时可能会遇到这样的问题,描述太长了,发个连接, ...
(转)扩展hibernate生成数据库的命名规则 -
anfythyn:
请问,遗留问题解决了吗?
找出重复数 -
chyanog:
data = data % 10
纯属多余,这样就错了。事实上 ...
求N!的结果末尾有多少个零 -
guiqing85:
...
java 异常 Execption
1 EL
Expression Language
1)语法
表达式 VS EL表达式语言 (JSP2.0)
<%= %> <=> ${}
<%=name%> <=> ${name}
2)文字
在 EL 表达式中,数字、字符串、布尔值和 null 都可以被指定为文字值。
字符串可以用单引号或双引号定界。布尔值被指定为 true 和 false 。
例子:
表达式 值
${100} 100
${-168.18} -168.18
${3.8E18} 3.8E18
${3.8e-18} 3.8e-18
${3.14159265} 3.14159265
${"Hello JSP EL!"} Hello JSP EL! 等价于 <%="Hello JSP EL!"%>
${'Hello JSP EL...'} Hello JSP EL...
${true}//can be TRUE? true
${false}//can be FALSE? false
${str==null} true
3)EL 运算符
类别 运算符
算术运算符 +、-、*、/(或 div)和 %(或 mod)
关系运算符 ==(或 eq)、!=(或 ne)、<(或 lt)
>(或 gt)、<=(或 le)和>=(或 ge)
逻辑运算符 &&(或 and)、||(或 or)和 !(或 not)
验证运算符 empty
empty 判断一个变量是否为null或是否包含有效数据
if(name==null||name.equlas(""))等价于
${empty name}
表达式 值
${3+5} 8
${3+5.1} 8.1
${"Hello"+",narci!"} error,没有重载
${5*2} 10
${9.3/3} 3.1
${9.3 div 3} 3.1
${8 div 0} Infinity
${9%2} 1
${9 mod 2}
1
<% String name="";
request.setAttribute("name",name);
%>
${empty name} true
${8*6>68?"Yes":"No"} No
4)变量和JavaBean属性数据输出
表达式语言输出变量,是到范围对象(pageContext,request,session,
application)中查找相应属性。而非直接在页面中查找实例或局部变量.
表达式语言查找变量的顺序是:
pageContext -> request -> session->application,
所有范围都未找到时,赋值null
5)存取器
[] ->输出对象属性值,输出数组或集合中对应索引值
. ->输出对象属性值
<%
Student stu=new Student();
stu.setName("Alice");
session.setAttribute("stu",stu);
%>
${stu["name"]} ${stu['name']} ${stu.name}
List aList = new ArrayList();
aList.add("China");
aList.add(88);
aList.add(168.18);
session.setAttribute("aList", aList);
${aList[0]}
${aList[1]}
${aList[2]}
Map map = new HashMap();
map.put("name", "Kitty");
map.put("age", "25");
map.put("date", new Date());
map.put("aList", aList);
session.setAttribute("map", map);
${map.date}
${map["date"]
${map['date']
${map.aList[0]}
${map["aList"][0]}
6)隐式对象(内建对象)
el提供了自己的一套内建对象,方便在页面内对各种常用数据信息的访问.
pageContext
pageScope
requestScope
sessionScope
applicationScope
param request.getParameter()
paramValues
header request.getHeader()
headerValues
cookie request.getCookies()
initParam context param
例子:
用户登录
<input type="text" name="stuName"/>
<input type="password" name="stuSex"/>
<input type="password" name="stuAge"/>
<--提交-->
<jsp:useBean id="stu" scope="session" class="vo.Student"/>
<jsp:setProperty name="name" property="name" value="${param.stuName}"/>
<jsp:setProperty name="sex" property="password" value="${param.stuSex}"/>
<jsp:setProperty name="sex" property="password" value="${param.stuAge}"/>
<%
pageContext.setAttribute("name", "page");
request.setAttribute("name", "request");
session.setAttribute("name", "session");
application.setAttribute("name", "application");
%>
${name} //pageContext -> request -> session->application
${pageScope.name}
${requestScope.name}
${sessionScope.name}
${applicationScope.name}
兴趣 <input type="checkbox" name="habit" value="Reading"/>看书
<input type="checkbox" name="habit" value="Game"/>玩游戏
<input type="checkbox" name="habit" value="Travel"/>旅游
<input type="checkbox" name="habit" value="Music"/>听音乐
<input type="checkbox" name="habit" value="Tv"/>看电视
//提交
${paramValues.habit[0]}"
${paramValues.habit[1]}"
${paramValues.habit[2]}"
${paramValues.habit[3]}"
${paramValues.habit[4]}"
web.xml
...
<context-param>
<param-name>server</param-name>
<param-value>Tomcat5.5</param-value>
</context-param>
...
${initParam.server}
${header["host"]}
${header["accept"]}
${header["user-agent"]}
可以自由设置是否支持表达式语言
<%@page isELIgnored="false"%> : default:false可以使用EL
${name}
配置web.xml也可达到同样的效果(同时存在,那种起作用?)
(禁用脚本和EL)
...
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>true</el-ignored>
<scripting-invalid>true</scripting-invalid>
</jsp-property-group>
</jsp-config>
....
2 JSTL
JSP Standard Tag Library
1)如何使用JSTL
a、复制jstl的jar包(jstl.jar,standard.jar)到/WEB-INF/lib
b、在使用jstl功能的jsp页面中增加指令
<%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
<%@taglib prefix=“x” uri=“http://java.sun.com/jsp/jstl/xml”%>
<%@taglib prefix=“fmt” uri=“http://java.sun.com/jsp/jstl/fmt>
<%@taglib prefix=“sql” uri=“http://java.sun.com/jsp/jstl/sql”%>
<%@taglib prefix=“fn”uri=“http://java.sun.com/jsp/jstl/functions”%>
2)core:
一般用途
在JSTL中,一般用途的标签主要是指具有输出,设置变量,
和错误处理等功能的标签,他们在jsp中使用很频繁,它们有:
a、<c:set>
语法:<c:set value=”value” var=”varName”
[scope= “{page|request|session|application}”]/ >
<c:set value=”value” target=”target” property=”propertyName”/ >
这个标签用于在某个范围(page,request,session,application)里面设置特定的值
(默认为page),或者设置某个已经存在的javabean的属性。
例子:
<c:set var="counter" value="200"/>
${counter}//输出
<c:set var="china">
the People's Replublic of China
</c:set>
${china}
可以指定范围,默认是page
<c:set value="20" var="maxIdelTime" scope="session"/>
${maxIdelTime}
设置JavaBean的值
<jsp:useBean id="stu" class="vo.Student"/>
<c:set value="Sofei" target="${stu}" property="name"/>
${stu.name}
b、<c:remove>
语法:
<c:remove var=”varName” [scope= “{page|request|session|application}”]/ >
它的作用是删除某个变量或者属性。
例子:
<c:set value="10000" var="maxUser" scope="application"/>
<c:set value="10" var="count" scope="session"/>
<c:set value="10" var="count"/>
${maxUser}
${count}
<c:remove var="maxUser" scope="application"/>
<c:remove var="count" scope="session"/>
${maxUser}
${count}
c、<c:out>
语法:<c:out value=”value” [escapeXml]=”{true|false}”
[default=”defaultValue”]/>
注意:escapeXml的作用是是否将代码交给xml解析器解释,
true为交给xml解析器解释,false为交给浏览器解释
例子:
<c:set var="sessionAttr" value="sessionValue" scope="session"/>
<c:set var="pageAttr" value="pageValue" scope="page"/>
<c:set var="requestAttr" value="requestValue" scope="request"/>
<c:out value="以下输出的是前面设置的属性<br>" escapeXml="false"/>
<c:out value="${sessionAttr}"/><br>
<c:out value="${pageAttr}"/><br>
<c:out value="${requestAttr}"/><br>
<c:out value="${nodefined}" default="没有nodefined这个变量"/>
d、<c:catch>
它的作用是捕捉由嵌套在它里面的标签所抛出来的异常。类似于<%try{}catch{}%>
语法:<c:catch [var=”varName”]>nested actions</c:catch>
例子:
<c:catch var="error">
<%
Integer.parseInt("abc");
%>
</c:catch>
<c:out value="${error}"/>
<c:out value="${error.message}"/>
<c:out value="${error.cause}"/>
条件判断
<c:if test="${param.age<20}">
<font size="4" color="red">年龄尚小,不能结婚!</font>
</c:if>
<c:if test="${!empty param.count}">
<c:choose>
<c:when test="${param.count>200}">
<h2>欢迎你,VIP用户</h2>
</c:when>
<c:otherwise>
<h2>感谢关注,继续努力!</h2>
</c:otherwise>
</c:choose>
</c:if>
循环
a、 <c:if>
语法:
<c:if test=”testCondition” var=”varName”
[scope=“{page|request|session|application}”]>
Body内容
</c:if>
例子:
<c:set var="age" value="16"/>
<c:if test="${age<18}">
<h1 align=center>您尚未成年,不能进入游戏中心!</h1>
</c:if>
b、<c:choose>
例子:
<c:set var="tax" value="5000" />
<c:choose>
<c:when test="${tax <=0}">
<hr>您今年没有纳税!
</c:when>
<c:when test="${tax<=1000&&tax>0}">
<hr>您今年缴纳的税款为${tax},加油!
</c:when>
<c:when test="${tax<=3000&&tax>1000}">
<hr>您今年缴纳的税款为${tax},再接再励哦!
</c:when>
<c:otherwise>
<hr>您今年纳税超过了3000元,多谢您为国家的繁荣富强作出了贡献!
</c:otherwise>
</c:choose>
c、<c:forEach>
语法: <c:forEach [var=”varName”] items=”collection” [varStatus=”varStatusName”]
[begin=”begin”] [end=”end”] [step=”step”]>
Body 内容
</c:forEach>
例子:
<%
List aList=new ArrayList();
aList.add("I");
aList.add("am");
aList.add("an");
aList.add("excellent");
aList.add("student");
request.setAttribute("aList",aList);
%>
<center>
<table border=1>
<c:forEach var="word" items="${aList}">
<tr><td>${word }</td></tr>
</c:forEach>
</table>
</center>
<c:forEach items='${header}' var='h'>
<ul>
<li>Header name:<c:out value="${h.key}"/>
<li>Header name:<c:out value="${h.value}"/>
</ul>
</c:forEach>
等价于:
<c:forEach items='${headerValues}' var='hv'>
<ul>
<li>Header name: <c:out value='${hv.key}'/></li>
<c:forEach items='${hv.value}' var='value'>
<li>Header Value: <c:out value='${value}'/></li>
</c:forEach>
</ul>
</c:forEach>
另外一种用法:
<c:forEach var="count" begin="10" end="100" step="10">
<c:out value="${count}"/><br>
</c:forEach>
URL
a、<c:import> 相当于<jsp:include>
<c:import url="footer.jsp" charEncoding="GBK">
<c:param name="name" value="Java"/>
</c:import>
b、<c:url>
用于构造URL,主要的用途是URL的重写。
<c:url var="footer1" value="footer.jsp"/>
<c:url var="footer2" value="footer.jsp" scope="page">
<c:param name="name" value="Sofie"/>
</c:url>
<c:out value="${footer1}"/>
<c:out value="${footer2}"/>
c、<c:redirect>
<c:redirect url="${footer2}"/>
SQL
<sql:setDataSource>
<sql:query>
<sql:update>
<sql:transaction>
<sql:param>
a、查询
<%@page contentType="text/html; charset=GBK"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<sql:setDataSource var="ds" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/tarena" user="narci" password="11" />
<sql:query var="rs" dataSource="${ds}" sql="select * from student" />
//stu.字段名
<c:forEach var="stu" items="${rs.rows}">
<tr>
<td>${stu.student_id}</td>
<td>${stu.student_name}</td>
<td>${stu.student_sex}</td>
<td>${stu.student_age}</td>
<td>${stu.student_desc}</td>
</tr>
</c:forEach>
b、插入记录
<sql:update dataSource="${ds}"
sql="insert into student values(108,'Tany','m',32,'***')" var="i">
</sql:update>
<hr>插入${i}条记录.
c、更新记录
<sql:update dataSource="${ds}"
sql="UPDATE student SET student_name='TingTing' WHERE student_id=108" var="i">
</sql:update>
<hr>更新${i}条记录.
${i}条记录写入
<sql:param>
作用:设置sql语句中“?”表示的占位符号的值。
<sql:update dataSource="${ds}"
sql="UPDATE student SET student_name=? WHERE student_id=?" var="i">
<sql:param value="Killer" />
<sql:param value="108" />
</sql:update>
Expression Language
1)语法
表达式 VS EL表达式语言 (JSP2.0)
<%= %> <=> ${}
<%=name%> <=> ${name}
2)文字
在 EL 表达式中,数字、字符串、布尔值和 null 都可以被指定为文字值。
字符串可以用单引号或双引号定界。布尔值被指定为 true 和 false 。
例子:
表达式 值
${100} 100
${-168.18} -168.18
${3.8E18} 3.8E18
${3.8e-18} 3.8e-18
${3.14159265} 3.14159265
${"Hello JSP EL!"} Hello JSP EL! 等价于 <%="Hello JSP EL!"%>
${'Hello JSP EL...'} Hello JSP EL...
${true}//can be TRUE? true
${false}//can be FALSE? false
${str==null} true
3)EL 运算符
类别 运算符
算术运算符 +、-、*、/(或 div)和 %(或 mod)
关系运算符 ==(或 eq)、!=(或 ne)、<(或 lt)
>(或 gt)、<=(或 le)和>=(或 ge)
逻辑运算符 &&(或 and)、||(或 or)和 !(或 not)
验证运算符 empty
empty 判断一个变量是否为null或是否包含有效数据
if(name==null||name.equlas(""))等价于
${empty name}
表达式 值
${3+5} 8
${3+5.1} 8.1
${"Hello"+",narci!"} error,没有重载
${5*2} 10
${9.3/3} 3.1
${9.3 div 3} 3.1
${8 div 0} Infinity
${9%2} 1
${9 mod 2}
1
<% String name="";
request.setAttribute("name",name);
%>
${empty name} true
${8*6>68?"Yes":"No"} No
4)变量和JavaBean属性数据输出
表达式语言输出变量,是到范围对象(pageContext,request,session,
application)中查找相应属性。而非直接在页面中查找实例或局部变量.
表达式语言查找变量的顺序是:
pageContext -> request -> session->application,
所有范围都未找到时,赋值null
5)存取器
[] ->输出对象属性值,输出数组或集合中对应索引值
. ->输出对象属性值
<%
Student stu=new Student();
stu.setName("Alice");
session.setAttribute("stu",stu);
%>
${stu["name"]} ${stu['name']} ${stu.name}
List aList = new ArrayList();
aList.add("China");
aList.add(88);
aList.add(168.18);
session.setAttribute("aList", aList);
${aList[0]}
${aList[1]}
${aList[2]}
Map map = new HashMap();
map.put("name", "Kitty");
map.put("age", "25");
map.put("date", new Date());
map.put("aList", aList);
session.setAttribute("map", map);
${map.date}
${map["date"]
${map['date']
${map.aList[0]}
${map["aList"][0]}
6)隐式对象(内建对象)
el提供了自己的一套内建对象,方便在页面内对各种常用数据信息的访问.
pageContext
pageScope
requestScope
sessionScope
applicationScope
param request.getParameter()
paramValues
header request.getHeader()
headerValues
cookie request.getCookies()
initParam context param
例子:
用户登录
<input type="text" name="stuName"/>
<input type="password" name="stuSex"/>
<input type="password" name="stuAge"/>
<--提交-->
<jsp:useBean id="stu" scope="session" class="vo.Student"/>
<jsp:setProperty name="name" property="name" value="${param.stuName}"/>
<jsp:setProperty name="sex" property="password" value="${param.stuSex}"/>
<jsp:setProperty name="sex" property="password" value="${param.stuAge}"/>
<%
pageContext.setAttribute("name", "page");
request.setAttribute("name", "request");
session.setAttribute("name", "session");
application.setAttribute("name", "application");
%>
${name} //pageContext -> request -> session->application
${pageScope.name}
${requestScope.name}
${sessionScope.name}
${applicationScope.name}
兴趣 <input type="checkbox" name="habit" value="Reading"/>看书
<input type="checkbox" name="habit" value="Game"/>玩游戏
<input type="checkbox" name="habit" value="Travel"/>旅游
<input type="checkbox" name="habit" value="Music"/>听音乐
<input type="checkbox" name="habit" value="Tv"/>看电视
//提交
${paramValues.habit[0]}"
${paramValues.habit[1]}"
${paramValues.habit[2]}"
${paramValues.habit[3]}"
${paramValues.habit[4]}"
web.xml
...
<context-param>
<param-name>server</param-name>
<param-value>Tomcat5.5</param-value>
</context-param>
...
${initParam.server}
${header["host"]}
${header["accept"]}
${header["user-agent"]}
可以自由设置是否支持表达式语言
<%@page isELIgnored="false"%> : default:false可以使用EL
${name}
配置web.xml也可达到同样的效果(同时存在,那种起作用?)
(禁用脚本和EL)
...
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>true</el-ignored>
<scripting-invalid>true</scripting-invalid>
</jsp-property-group>
</jsp-config>
....
2 JSTL
JSP Standard Tag Library
1)如何使用JSTL
a、复制jstl的jar包(jstl.jar,standard.jar)到/WEB-INF/lib
b、在使用jstl功能的jsp页面中增加指令
<%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
<%@taglib prefix=“x” uri=“http://java.sun.com/jsp/jstl/xml”%>
<%@taglib prefix=“fmt” uri=“http://java.sun.com/jsp/jstl/fmt>
<%@taglib prefix=“sql” uri=“http://java.sun.com/jsp/jstl/sql”%>
<%@taglib prefix=“fn”uri=“http://java.sun.com/jsp/jstl/functions”%>
2)core:
一般用途
在JSTL中,一般用途的标签主要是指具有输出,设置变量,
和错误处理等功能的标签,他们在jsp中使用很频繁,它们有:
a、<c:set>
语法:<c:set value=”value” var=”varName”
[scope= “{page|request|session|application}”]/ >
<c:set value=”value” target=”target” property=”propertyName”/ >
这个标签用于在某个范围(page,request,session,application)里面设置特定的值
(默认为page),或者设置某个已经存在的javabean的属性。
例子:
<c:set var="counter" value="200"/>
${counter}//输出
<c:set var="china">
the People's Replublic of China
</c:set>
${china}
可以指定范围,默认是page
<c:set value="20" var="maxIdelTime" scope="session"/>
${maxIdelTime}
设置JavaBean的值
<jsp:useBean id="stu" class="vo.Student"/>
<c:set value="Sofei" target="${stu}" property="name"/>
${stu.name}
b、<c:remove>
语法:
<c:remove var=”varName” [scope= “{page|request|session|application}”]/ >
它的作用是删除某个变量或者属性。
例子:
<c:set value="10000" var="maxUser" scope="application"/>
<c:set value="10" var="count" scope="session"/>
<c:set value="10" var="count"/>
${maxUser}
${count}
<c:remove var="maxUser" scope="application"/>
<c:remove var="count" scope="session"/>
${maxUser}
${count}
c、<c:out>
语法:<c:out value=”value” [escapeXml]=”{true|false}”
[default=”defaultValue”]/>
注意:escapeXml的作用是是否将代码交给xml解析器解释,
true为交给xml解析器解释,false为交给浏览器解释
例子:
<c:set var="sessionAttr" value="sessionValue" scope="session"/>
<c:set var="pageAttr" value="pageValue" scope="page"/>
<c:set var="requestAttr" value="requestValue" scope="request"/>
<c:out value="以下输出的是前面设置的属性<br>" escapeXml="false"/>
<c:out value="${sessionAttr}"/><br>
<c:out value="${pageAttr}"/><br>
<c:out value="${requestAttr}"/><br>
<c:out value="${nodefined}" default="没有nodefined这个变量"/>
d、<c:catch>
它的作用是捕捉由嵌套在它里面的标签所抛出来的异常。类似于<%try{}catch{}%>
语法:<c:catch [var=”varName”]>nested actions</c:catch>
例子:
<c:catch var="error">
<%
Integer.parseInt("abc");
%>
</c:catch>
<c:out value="${error}"/>
<c:out value="${error.message}"/>
<c:out value="${error.cause}"/>
条件判断
<c:if test="${param.age<20}">
<font size="4" color="red">年龄尚小,不能结婚!</font>
</c:if>
<c:if test="${!empty param.count}">
<c:choose>
<c:when test="${param.count>200}">
<h2>欢迎你,VIP用户</h2>
</c:when>
<c:otherwise>
<h2>感谢关注,继续努力!</h2>
</c:otherwise>
</c:choose>
</c:if>
循环
a、 <c:if>
语法:
<c:if test=”testCondition” var=”varName”
[scope=“{page|request|session|application}”]>
Body内容
</c:if>
例子:
<c:set var="age" value="16"/>
<c:if test="${age<18}">
<h1 align=center>您尚未成年,不能进入游戏中心!</h1>
</c:if>
b、<c:choose>
例子:
<c:set var="tax" value="5000" />
<c:choose>
<c:when test="${tax <=0}">
<hr>您今年没有纳税!
</c:when>
<c:when test="${tax<=1000&&tax>0}">
<hr>您今年缴纳的税款为${tax},加油!
</c:when>
<c:when test="${tax<=3000&&tax>1000}">
<hr>您今年缴纳的税款为${tax},再接再励哦!
</c:when>
<c:otherwise>
<hr>您今年纳税超过了3000元,多谢您为国家的繁荣富强作出了贡献!
</c:otherwise>
</c:choose>
c、<c:forEach>
语法: <c:forEach [var=”varName”] items=”collection” [varStatus=”varStatusName”]
[begin=”begin”] [end=”end”] [step=”step”]>
Body 内容
</c:forEach>
例子:
<%
List aList=new ArrayList();
aList.add("I");
aList.add("am");
aList.add("an");
aList.add("excellent");
aList.add("student");
request.setAttribute("aList",aList);
%>
<center>
<table border=1>
<c:forEach var="word" items="${aList}">
<tr><td>${word }</td></tr>
</c:forEach>
</table>
</center>
<c:forEach items='${header}' var='h'>
<ul>
<li>Header name:<c:out value="${h.key}"/>
<li>Header name:<c:out value="${h.value}"/>
</ul>
</c:forEach>
等价于:
<c:forEach items='${headerValues}' var='hv'>
<ul>
<li>Header name: <c:out value='${hv.key}'/></li>
<c:forEach items='${hv.value}' var='value'>
<li>Header Value: <c:out value='${value}'/></li>
</c:forEach>
</ul>
</c:forEach>
另外一种用法:
<c:forEach var="count" begin="10" end="100" step="10">
<c:out value="${count}"/><br>
</c:forEach>
URL
a、<c:import> 相当于<jsp:include>
<c:import url="footer.jsp" charEncoding="GBK">
<c:param name="name" value="Java"/>
</c:import>
b、<c:url>
用于构造URL,主要的用途是URL的重写。
<c:url var="footer1" value="footer.jsp"/>
<c:url var="footer2" value="footer.jsp" scope="page">
<c:param name="name" value="Sofie"/>
</c:url>
<c:out value="${footer1}"/>
<c:out value="${footer2}"/>
c、<c:redirect>
<c:redirect url="${footer2}"/>
SQL
<sql:setDataSource>
<sql:query>
<sql:update>
<sql:transaction>
<sql:param>
a、查询
<%@page contentType="text/html; charset=GBK"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<sql:setDataSource var="ds" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/tarena" user="narci" password="11" />
<sql:query var="rs" dataSource="${ds}" sql="select * from student" />
//stu.字段名
<c:forEach var="stu" items="${rs.rows}">
<tr>
<td>${stu.student_id}</td>
<td>${stu.student_name}</td>
<td>${stu.student_sex}</td>
<td>${stu.student_age}</td>
<td>${stu.student_desc}</td>
</tr>
</c:forEach>
b、插入记录
<sql:update dataSource="${ds}"
sql="insert into student values(108,'Tany','m',32,'***')" var="i">
</sql:update>
<hr>插入${i}条记录.
c、更新记录
<sql:update dataSource="${ds}"
sql="UPDATE student SET student_name='TingTing' WHERE student_id=108" var="i">
</sql:update>
<hr>更新${i}条记录.
${i}条记录写入
<sql:param>
作用:设置sql语句中“?”表示的占位符号的值。
<sql:update dataSource="${ds}"
sql="UPDATE student SET student_name=? WHERE student_id=?" var="i">
<sql:param value="Killer" />
<sql:param value="108" />
</sql:update>
发表评论
-
javaWeb中相对路径,绝对路径问题
2009-12-07 23:02 17741.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件 ... -
JSP学习笔记(四) JSP实现文件上传 JSP数据验证 JSP分页实现
2009-12-07 22:30 16691 实现文件上传 <form action=" ... -
JSP学习笔记(三) JSP内建对象 web应用欢迎文件 MVC思想
2009-12-07 22:28 8651 内建对象 JSP中的隐含对象:不用我们手工去创建的对象 / ... -
JSP学习笔记(二) Jsp调用JavaBean Jsp异常处理 JAAS实现安全
2009-12-07 22:17 16071 Jsp调用JavaBean 分离页面的显示代码和业务逻辑代 ... -
JSP学习笔记(一)
2009-12-07 22:14 10211 What is JSP. 1)什么是JSP JSP: Ja ... -
Servlet 路径问题
2009-12-07 00:15 0form 表单中的(1)action="/aaa/b ... -
Servlet学习笔记(五)Filter Listener
2009-12-07 00:10 18021 Filter. 2 Listener. 3 exercis ... -
Servlet学习笔记(四)Cookie Session
2009-12-07 00:06 13661 Trace state:Cookie. 2 Trace s ... -
Servlet学习笔记(三)connection pool datasource dao
2009-12-07 00:01 15611 Access Resources. 2 Connectio ... -
Servlet学习笔记(二)servletconfig servletcontext requestdispatcher
2009-12-06 23:59 20101 IDE+Tomcat Server. 2 Servlet ... -
Servlet学习笔记(一)javaWeb应用基本
2009-12-06 23:53 11711 B/S concept B/S结构(Browser/S ... -
JSTL function 标签 使用
2009-12-01 09:37 860<taglib> <tag ... -
JSTL foreach
2009-11-26 23:42 3013为循环控制,它可以将集合(Collection)中的成员循序浏 ... -
EL表达式
2009-11-26 22:42 1623EL 隐式对象 类别 ...
相关推荐
EL表达式语言主要用于简化Java Servlets和JSP页面中的数据访问,而JSTL则提供了一套丰富的标签库,帮助开发者更高效地处理常见任务。 EL表达式: 1. EL是一种简洁的脚本语言,用于获取和设置JavaBeans或其他可绑定...
### EL (Expression Language) 和 JSTL (JavaServer Pages Standard Tag Library) 学习笔记 #### 1. EL 表达式概述 - **EL 表达式的引入**:自 JSP 2.0 以来,EL 表达式成为官方规范的一部分,在 Servlet 2.4 及...
首先,EL表达式是用在JSP页面或其他Java EE组件中的一种特殊语法,其基本形式为`${expression}`。这里的`expression`可以是Java对象、属性、方法调用等。EL引擎会自动解析这个表达式,并返回表达式的值。例如,`${...
JSTL是JSP开发的重要工具,通过提供一系列预定义的标签和EL表达式,简化了JSP页面的编写,提升了代码的可维护性和安全性。了解并熟练掌握JSTL,对于任何从事JSP开发的程序员来说都是非常有价值的。
4. **笔记**:可能是作者在学习过程中整理的要点和难点,包括理解EL和JSTL的关键点、常见问题及解决方案。 5. **代码**:可能包含示例代码,演示了EL和JSTL的用法,这些代码可以作为学习者参考和实践的模板。 通过...
jsp学习笔记(java的web开发),还包括EL表达式 和JSTL。可快速入门,也可当手册使用。 更多:http://download.csdn.net/user/daillo/all
### JSTL与EL:深度解析与学习指南 在探讨JSTL(JavaServer Pages Standard Tag Library)与EL(Expression Language)之前,我们先来理解它们在Java Web开发中的核心地位。JSTL与EL是Java Web应用开发中不可或缺的...
通过这份“JSP学习笔记”,你可以深入理解JSP的工作原理,掌握如何使用JSP进行动态网页开发,同时了解与之相关的Java Web技术,如Servlet、EL和JSTL。在实际项目中,这些知识将帮助你构建高效、可扩展的Web应用。
《jsp学习笔记总结(收集)》 在IT领域,Java Server Pages(JSP)是一种用于构建动态网页的技术,它将HTML、CSS、JavaScript等客户端代码与Java代码结合在一起,使得开发者能够轻松地创建数据驱动的Web应用程序。...
EL表达式通常以美元符号 `$` 开头,包裹在花括号 `{}` 中,如 `${expression}`。它可以直接访问JavaBeans的属性,例如 `${user.sex}`。此外,也可以使用方括号 `[]` 来访问集合或数组元素,如 `${booklist[0].price}...
`EL表达式.doc` 文件应该涵盖了EL的基本语法和常见用法,如访问属性、调用方法、三元运算符等。EL的引入使得JSP页面的数据绑定更加直观,提升了开发效率。 `JSTL字符串处理函数.htm` 文件可能详细介绍了JSTL提供的...
JSP四大域对象和JSTL、EL表达式
在这个"Servlet & JSP学习笔记NetBeans源代码"压缩包中,你将找到一系列与Servlet和JSP相关的示例代码,这些代码是基于NetBeans IDE编写的,并且是在Tomcat服务器上运行的。 Tomcat是一个开源的轻量级Web服务器和...
在JSP页面中,${}内可以写EL表达式,如 `${user.name}` 获取`user`对象的`name`属性。 **二、JSTL的表达式语言(EL)** EL简化了在JSP页面中获取和操作Java对象的方式。它支持算术运算、比较运算、逻辑运算以及对...
由于这部分内容是电子书中的学习笔记,电子书的内容并未直接给出,因此只能根据电子书的标题“JSP&Servlet学习笔记”和描述来推测可能涉及的知识点,而没有具体的电子书内容可以分析。如需进一步学习,建议查阅相关...
【标题】:jsp学习笔记,不错的入门级资料 【描述】:这是一份在达内科技学习过程中编写的jsp学习笔记,旨在为初学者提供一个基础到深入的学习路径。笔记内容丰富,覆盖了jsp的基本概念、语法特性以及常用功能,...
总结来说,JSP学习笔记主要涵盖了JSP的基本概念、结构、指令、动作、内置对象、EL、JSTL以及它们在实际开发中的应用。通过深入理解和实践这些知识点,你将能够轻松驾驭JSP,构建出高效且易于维护的web应用。
### JSP学习笔记 #### 一、JSP基础 ##### 1.1 什么是JSP JSP(JavaServer Pages)是由Sun Microsystems公司提出的一种基于Java的动态网页技术标准。它利用了Java语言的强大功能来简化Web应用的开发。通过在HTML...
- 掌握JSP的语法和标签,了解EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)。 - 实践开发,创建简单的Web应用,逐步增加复杂度。 - 学习使用开发工具,如Eclipse或IntelliJ IDEA,以及...
在《JSP学习笔记截屏1》中,我们可以预见到这是一份关于学习JSP过程中的记录,包含了韩顺平老师的视频教程内容和个人的学习心得。韩顺平老师是一位知名的Java和Web开发领域的讲师,他的课程通常深入浅出,易于理解,...