当前位置: 首页 > 知识库问答 >
问题:

在JSTL中连接JDBC

韶宏邈
2023-03-14

我正试图通过JSTL连接JDBC。我的Localhost ie:Xampp连接也完成了,但我还是遇到了无法解决的错误。请帮忙!我使用的是Netbeans 8.0.2。下面是代码。[1]: https://i.stack.imgur.com/R4AUp.png[这是我得到的错误][1]

<%@page import="java.io.*,java.util.*,java.sql.*" %>
<%@page import="javax.servlet.http.*,javax.servlet.*" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="s" %>  
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Hello World!</h1>
        <form method="post">
            <table bgcolor="orange">
                <tr>
                    <th>Book_Id</th>
                    <td><input type="text" name="t1"></td>
                </tr>
                <tr>
                    <th>Name</th>
                    <td><input type="text" name="t2"></td>
                </tr>
                <tr>
                    <th>Author</th>
                    <td><input type="text" name="t3"></td>
                </tr>
                <tr>
                    <th>Price</th>
                    <td><input type="text" name="t4"></td>
                </tr>
                <tr>
                    <td colspan="2">
                        <input type="submit" name="b1" value="Insert">
                        <input type="submit" name="b2" value="Update">
                        <input type="submit" name="b3" value="Delete"
</td> 
 </tr>
 </table>
  </form>
        <c:if test="${pageContext.request.method='get'}">
            <c:set var="a" value="${param.t1}"/>
            <c:set var="b" value="${param.t2}"/>
            <c:set var="c" value="${param.t3}"/>
            <c:set var="d" value="${param.t4}"/>
            <s:setDataSource var="db" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/books" user="root" password=""/>
            <c:if test="${param.b1!=null}">
                <mysql:update datasource="${db}" sql="insert into book values {'${a}','${b}','${c}','${d}'}">
                </mysql:update>
                <c:out value="Record Inserted"/>
 </c:if>
            <c:if test="${param.b2!=null}">
                <mysql:update datasource="${db}" sql="Update book set bname='${b}',author='${c}',price='${d}' where book_id='${a}'">
                </mysql:update>
                <c:out value="Record Updated"/>
</c:if>
</c:if>
     </body>
    </html>




 

我还添加了“mysql-connector-java-5.1.23-bin”。jar'是Web服务器的lib目录。

共有1个答案

卢权
2023-03-14
<c:if test="${pageContext.request.method='get'}">

应该是:

<c:if test="${pageContext.request.method=='get'}">
 类似资料:
  • 问题内容: 我们使用JDBC的标准代码部分是… 问题1:使用连接池时,是否应该在最后关闭连接?如果是这样,合并的目的就不会丢失吗?如果不是,那么DataSource如何知道何时释放Connection的特定实例并可以重用?我对此感到有些困惑,任何指针都表示赞赏。 问题2:以下方法是否接近标准?看起来像是尝试从池中获取连接,并且如果无法建立DataSource,请使用老式的DriverManager

  • 我正在尝试使用重试逻辑来获取JDBC连接,以防出现SQL异常,例如: 我目前无法测试,因此需要一些帮助。 如果我遇到异常,然后重试后可以登录,这将很好地工作。但是如果我们没有得到异常,它将到达finally块并关闭连接。最后试着抓住里面的while循环。 所以如果我关闭我的连接,流动如果达到 while(null==连接) 我的连接对象在关闭后会变为null吗? 或者是否有其他方法来实现重试部分?

  • 我们刚刚从dbcp迁移到tomcat jdbc连池。我们在加载中尝试了系统,收到了以下异常: 请注意: 不忙的连接在哪里?忙的数字在这之后一直在下降,但我们仍然没有得到任何连接。 有什么想法吗? 配置: env:ubuntu和tomcat 6. db-mysql

  • JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问。在 developerworks 上其新系列的第一篇文章中,软件工程师 Mark Kolb 向您展示了如何使用 JSTL 标记来避免在 JSP 页面中使用脚本编制元素。您还将了解如何通过从

  • 问题内容: 要指定SQLite连接属性,请使用org.sqlite.SQLiteConfig,它的内容如下: 使用c3p0创建连接池的过程如下: 问题:如何创建结合了两者的数据源,让我设置诸如连接池的最大池大小和sqlite的同步模式之类的东西? 问题答案: 尝试 现在,数据源将是c3p0 PooledDataSource,它包装了已根据需要配置的SQLite未池化数据源。 请参阅C3P0的文档,

  • 问题内容: 所以人们可能会告诉我这是一个坏主意,但我至少想让它尝试一下。 编辑 此应用程序的目的是仅当设备与oracle db位于同一网络中或通过VPN连接到网络时才可以工作。数据库中的信息将无法全局访问,这就是为什么我需要直接连接到oracle db的原因。 现在根据这个线程 他成功查询了oracle db。 因此,我有一个相当基本的类,在初始化时将尝试与我的数据库建立连接。 在我的主要活动on