Das beste JSP Datenbankverbindung-Tutorial im Jahr 2024. In diesem Tutorial können Sie Erstellen von Testdaten,SELECT-Operationen,INSERT-Operation,DELETE-Operation,UPDATE-Operation, lernen
Dieses Tutorial geht davon aus, dass Sie die JDBC-Anwendung kennen funktioniert. Bevor Sie JSP Datenbankzugriff erlernen, besuchen Sie bitte die Java - MySQL - Verbindung die zugehörigen Treiber zu installieren und zu konfigurieren.
Hinweis:
Jar Paket , das Sie die Website herunterladen können bietet: mysql-connector-java-5.1.39-bin.jar
Nach dem Download des mysql-connector-java-5.1.39-bin.jar zu tomcat lib Verzeichnis kopiert.
Vom Grundkonzept mit zu beginnen, lassen Sie uns eine einfache Tabelle zu erstellen, und ein paar Datensätze in der Tabelle erstellen.
Als Nächstes erstellen wir in MySQL-Datenbank, erstellen Websites und Datentabelle w3big, ist die Tabellenstruktur wie folgt:
CREATE TABLE `websites` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称', `url` varchar(255) NOT NULL DEFAULT '', `alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名', `country` char(10) NOT NULL DEFAULT '' COMMENT '国家', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
Legen Sie einige Daten:
INSERT INTO `websites` VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '本教程', 'http://www.w3write.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');
Datentabelle unten dargestellt:
Das nächste Beispiel zeigt, wie JSTL SQL-Tag verwenden, um die SQL-SELECT-Anweisung auszuführen:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> <html> <head> <title>SELECT 操作</title> </head> <body> <!-- JDBC 驱动名及数据库 URL 数据库的用户名与密码,需要根据自己的设置 useUnicode=true&characterEncoding=utf-8 防止中文乱码 --> <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/w3big?useUnicode=true&characterEncoding=utf-8" user="root" password="123456"/> <sql:query dataSource="${snapshot}" var="result"> SELECT * from websites; </sql:query> <h1>JSP 数据库实例 - 本教程</h1> <table border="1" width="100%"> <tr> <th>ID</th> <th>站点名</th> <th>站点地址</th> </tr> <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.url}"/></td> </tr> </c:forEach> </table> </body> </html>
Besuchen Sie diese JSP Beispiel sind die Ergebnisse wie folgt:
Dieses Beispiel zeigt, wie JSTL SQL-Tag verwenden, um die SQL-Anweisung INSERT auszuführen:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> <html> <head> <title>SELECT 操作</title> </head> <body> <!-- JDBC 驱动名及数据库 URL 数据库的用户名与密码,需要根据自己的设置 useUnicode=true&characterEncoding=utf-8 防止中文乱码 --> <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/w3big?useUnicode=true&characterEncoding=utf-8" user="root" password="123456"/> <!-- 插入数据 --> <sql:update dataSource="${snapshot}" var="result"> INSERT INTO websites (name,url,alexa,country) VALUES ('本教程移动站', 'http://m.w3write.com', 5093, 'CN'); </sql:update> <sql:query dataSource="${snapshot}" var="result"> SELECT * from websites; </sql:query> <h1>JSP 数据库实例 - 本教程</h1> <table border="1" width="100%"> <tr> <th>ID</th> <th>站点名</th> <th>站点地址</th> </tr> <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.url}"/></td> </tr> </c:forEach> </table> </body> </html>
Besuchen Sie diese JSP Beispiel sind die Ergebnisse wie folgt:
Dieses Beispiel zeigt, wie JSTL SQL-Tag verwenden, um die SQL-DELETE-Anweisung auszuführen:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> <html> <head> <title>SELECT 操作</title> </head> <body> <!-- JDBC 驱动名及数据库 URL 数据库的用户名与密码,需要根据自己的设置 useUnicode=true&characterEncoding=utf-8 防止中文乱码 --> <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/w3big?useUnicode=true&characterEncoding=utf-8" user="root" password="123456"/> <!-- 删除 ID 为 11 的数据 --> <sql:update dataSource="${snapshot}" var="count"> DELETE FROM websites WHERE Id = ? <sql:param value="${11}" /> </sql:update> <sql:query dataSource="${snapshot}" var="result"> SELECT * from websites; </sql:query> <h1>JSP 数据库实例 - 本教程</h1> <table border="1" width="100%"> <tr> <th>ID</th> <th>站点名</th> <th>站点地址</th> </tr> <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.url}"/></td> </tr> </c:forEach> </table> </body> </html>
Besuchen Sie diese JSP Beispiel sind die Ergebnisse wie folgt:
Dieses Beispiel zeigt, wie JSTL SQL-Tag verwenden, um die SQL-Anweisung UPDATE auszuführen:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> <html> <head> <title>SELECT 操作</title> </head> <body> <!-- JDBC 驱动名及数据库 URL 数据库的用户名与密码,需要根据自己的设置 useUnicode=true&characterEncoding=utf-8 防止中文乱码 --> <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/w3big?useUnicode=true&characterEncoding=utf-8" user="root" password="123456"/> <!-- 修改 ID 为 3 的名字:本教程改为 w3big --> <c:set var="SiteId" value="3"/> <sql:update dataSource="${snapshot}" var="count"> UPDATE websites SET name = 'w3big' WHERE Id = ? <sql:param value="${SiteId}" /> </sql:update> <sql:query dataSource="${snapshot}" var="result"> SELECT * from websites; </sql:query> <h1>JSP 数据库实例 - 本教程</h1> <table border="1" width="100%"> <tr> <th>ID</th> <th>站点名</th> <th>站点地址</th> </tr> <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.url}"/></td> </tr> </c:forEach> </table> </body> </html>
Besuchen Sie diese JSP Beispiel sind die Ergebnisse wie folgt: