Najlepszy samouczek połączenia z bazą danych JSP W 2024 r. W tym samouczku możesz dowiedzieć się Tworzenie danych testowych,operacje SELECT,operacja INSERT,operacja usuwania,operacja UPDATE,
Ten poradnik zakłada, że wiesz, działa aplikacja JDBC. Przed rozpoczęciem nauki JSP dostęp do bazy danych, odwiedź połączenia MySQL Java , aby zainstalować i skonfigurować skojarzone sterowniki.
Uwaga:
Pakiet Jar można pobrać z witryny zapewnia: MySQL Connector-Java-1.5.39-bin.jar
Po pobraniu mysql-connector-java-5.1.39-bin.jar skopiowany Tomcat katalogu lib.
Od podstawowej koncepcji na początek stwórzmy prostą tabelę i utworzyć kilka rekordów w tabeli.
Następnie tworzymy w3big w bazie danych MySQL, tworzenie stron internetowych i tabelę danych, struktura tabeli jest następująca:
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;
Włóż jakieś dane:
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');
Dane tabeli poniżej:
Następny przykład pokazuje, jak używać tag JSTL SQL, aby uruchomić SQL SELECT:
<%@ 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>
Odwiedzić ten przykład JSP, wyniki przedstawiają się następująco:
Ten przykład pokazuje, jak używać tag JSTL SQL, aby uruchomić instrukcji INSERT:
<%@ 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>
Odwiedzić ten przykład JSP, wyniki przedstawiają się następująco:
Ten przykład pokazuje, jak używać tag JSTL SQL, aby uruchomić SQL DELETE:
<%@ 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>
Odwiedzić ten przykład JSP, wyniki przedstawiają się następująco:
Ten przykład pokazuje, jak używać tag JSTL SQL do uruchomienia instrukcji SQL UPDATE:
<%@ 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>
Odwiedzić ten przykład JSP, wyniki przedstawiają się następująco: