JSTL使用时的问题,老是提示找不到合适的驱动

今天在使用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~

你可能感兴趣的:(sql,tomcat,jdbc,db2,Go)