今天在使用JSTL标签查询数据库时一翻风顺,心里高兴着呢.想着以后再也不用在页面上写那些什么ResultSet,getString什么的了,程序写好后在Tomcat下面测试顺利通过.但是移植到WSAD上后,老是提示找不到合适的驱动,我把DB2的驱动放到class_path,甚至扔到JRE的包目录下,提示错误还是死活不改,搞了半天搞不出来,想死的心都有了,晚上又想解决办法,觉得应该是实现类本身就有问题,想到既然实现类本身有问题,我何不自己生成一个DataSource放到attribut中.结果完美解决了这个问题
<sql:setDataSource>
部份源码
<%@ page import="java.sql.*, javax.sql.DataSource, javax.naming.InitialContext" %>
<%
Context JNDI_Context = new InitialContext();
//JNDI查找数据源
DataSource dataSource = (DataSource) JNDI_Context.lookup("jdbc/DB2_EDW");
%>
<c:set var="dataSource " value="<%=dataSource %>" scope="application"/>
这里要注意.其实没必要写上dataSource .getConnection();我查看了源代码,这一步操作是在<sql:query>标签中实现的.
学习呀,要知其然,还要知其所以然,java学习之其所以然,研究源码就是一个很好的方法!我将会继续对JSTL标签的实现进行研究.Hot pursuit,Go,Go,go~
分享到:
相关推荐
**JSTL(JSP Standard Tag Library)**是Java服务器页面(JSP)的一个标准标记库,它提供了许多预定义的标签,以增强JSP页面的功能性和可维护性。JSTL旨在减少JSP页面中的Java脚本,提高代码的可读性和可重用性。 *...
5. **检查代码结构**:确认`<c:if>`标签的关闭标签`</c:if>`是否正确,以及是否在合适的语境中使用,有时不正确的代码结构也可能导致编辑器的解析错误。 6. **使用HTML注释**:一种临时解决方案是,将`<c:if>`标签...
运作方式为当条件符合时,就会持续重复执行<c:forEach>的本体内容。 语法 语法1:迭代一集合对象之所有成员 <c:forEach [var="varName"] items="collection" [varStatus="varStatusName"] [begin="begin"] [end=...
在Java Web开发中,`<c:if>`标签是JSTL(JavaServer Pages Standard Tag Library)的一部分,用于实现条件判断。JSTL是Java EE生态中的一个标准库,提供了许多预定义的标签来简化JSP页面的编写,提高代码的可读性...
SQL指令标签用于实现数据库操作,包括<sql:query>、<sql:update>、<sql:param>、<sql:dateParam>和<sql:transaction>五个标签。 <sql:query>标签 <sql:query>标签用于查询数据,语法如下: <sql:query sql=”sql...
### JSTL中if标签使用方法详解 JSTL(JavaServer Pages Standard Tag Library)是为简化JSP页面开发而设计的一组标准标签库。它提供了处理数据、条件逻辑等功能的强大工具,使得开发者无需编写复杂的Java代码即可...
Jstl介绍?. Core标签库? 用于显示的?<c:out>?标签? 用于赋值的?<c:set>?标签? 用于删除的 <c:remove>?标签? 用于异常捕获的?<c:catch> 标签 用于判断的?<c:if> 标签 用于复杂判断的 <c:choose>?、 <c:when>?、...
- `<sql:setDataSource>`: 定义数据源。 - `<sql:query>`: 执行SQL查询。 - `<sql:update>`: 执行SQL更新操作。 - `<sql:transaction>`: 包裹一组数据库操作,以保证原子性。 **6. JSTL处理XML** - `<x:parse>`: ...
- **<sql:setDataSource>**:用于设置数据库连接的数据源。 - **<sql:query>**:用于执行SQL查询语句。 - **<sql:update>**:用于执行SQL更新语句。 - **<sql:transaction>**:用于管理数据库事务。 - **<sql:param>...
开发人员在编写JSP页面时需要导入这个包,以便使用JSTL提供的各种标签。这个包不包含实际的实现,而是为编译时类型检查和依赖管理提供接口定义。 2. **jstl-impl-1.2.jar**:这是JSTL的实现库,包含了实现JSTL API...
- `<sql:setDataSource>`:定义数据源,用于连接数据库。 - `<sql:update>`:执行更新操作,如SQL的UPDATE语句。 - `<sql:query>`:执行查询操作,返回结果集。 - `<sql:execute>`:执行任意的SQL命令,包括DDL...
例如,`<sql:setDataSource>`定义数据源,`<sql:query>`执行SQL查询,`<sql:update>`用于更新数据库,而`<sql:transaction>`则可以管理事务。以下是一个简单的查询示例: ```jsp <%@ taglib prefix="sql" uri=...
<% Map<String, String> map = new HashMap<>(); map.put("key1", "value1"); map.put("key2", "value2"); request.setAttribute("myMap", map); %> ... <!-- 遍历键 --> <c:forEach items="${myMap.keySet()}" var=...
- **<sql:setDataSource>**:配置数据源。 #### 十、格式化与国际化标签 - **<fmt:message>**:用于显示本地化消息。 - **<fmt:formatDate>**:用于格式化日期。 - **<fmt:formatNumber>**:用于格式化数字。 ####...
以上只是JSTL 1.2语法的一部分,实际上还有更多的标签和功能,如循环标签(`<c:forEach>`、`<c:forTokens>`)、条件操作(`<c:if>`、`<c:choose>`等)、URL操作(`<c:url>`、`<c:redirect>`)等,它们极大地简化了...
在 JSP 中使用 JSTL 的核心标签库时,必须使用指令 <%@ taglib %>,并且设定 prefix 和 uri 的值,例如:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>。 三、JSTL 的核心标签库(CORE) ...
**JSTL(JavaServer Pages Standard Tag Library)标签库**是Java Web开发中的一个重要组成部分,它为JavaServer Pages(JSP)提供了一套标准的标签,使得开发者可以通过使用标签来代替传统的Java脚本,从而使代码...
`<sql:update>`、`<sql:query>`和`<sql:delete>`用于执行SQL更新、查询和删除操作,`<sql:transaction>`则用于管理数据库事务。 4. **XML标签(XML Tags)**:这些标签用于处理XML文档,如解析、转换和操作XML数据...
- `<sql:update>`、`<sql:query>` 和 `<sql:transaction>`:执行SQL更新、查询和事务操作。 7. **JSTL的优缺点** 优点:提高代码可读性,减少Java脚本,易于维护,支持XML处理,与JSF等其他技术兼容。 缺点:...