База данных используется для хранения различных типов данных, которые огромны и имеют емкость в гигабайтах. JSP может соединяться с такими базами данных для создания и управления записями.
В этом уроке мы узнаем о том, как создать таблицу в базе данных, и как создавать записи в этих таблицах с помощью JSP.
В этом уроке вы узнаете
Создать таблицу
В базе данных MYSQL мы можем создать таблицу в базе данных с любым клиентом MYSQL.
Здесь мы используем PHPMyadminclient, и там у нас есть опция «new» для создания новой таблицы, используя скриншот ниже.
В этом случае мы должны предоставить имя таблицы как guru_test, и мы создадим два поля ’emp_id и emp_name.
Emp_idis, имеющий тип данных int
Emp_name имеет тип данных как varchar
Другой вариант заключается в использовании командной строки и изменений в каталоге MYSQL:
C: \>
C: \> Program Files \ MY SQL \ bin
C: \> Program Files \ MySql \ bin>
Мы можем войти в базу данных следующим образом:
C: \ Program Files \ MYSQL \ bin> mysql –u gururoot –p
Введите пароль: *******
Mysql>
Создайте таблицу guru_test в базе данных с именем GuruTest, как показано в командной строке MYSQL:
Mysql> use GuruTest; MySql> create table guru_test( Emp_idint NOT NULL, Emp_namevarchar(11), ); Once you execute this you get the following: Query OK, 0 rows affected(0.10 sec) MySQl> select * from guru_test; Query OK, 0 rows affected(0.10 sec)
Сначала записи вставляются с использованием запроса INSERT, а затем мы можем использовать запрос SELECT, чтобы проверить, создана ли таблица или нет.
Создать записи
После создания таблицы нам нужно создать записи в таблице guru_test с помощью запроса вставки, который показан ниже:
Записи, введенные здесь:
- 1 и гуру emp1
- 2 и гуру emp2
MySql>INSERT INTO `couch_tomato_db`.`guru_test` (`emp_id`, `emp_name`) VALUES ('1', 'guru emp1'); Query OK, 1 row affected (0.05 sec) MySQL>INSERT INTO `couch_tomato_db`.`guru_test` (`emp_id`, `emp_name`) VALUES ('2', 'guru emp2'); Query OK, 1 row affected (0.05 sec)
Операции JSP: вставка, обновление, удаление, выбор
Используя JSP, мы можем выполнять несколько операций в базе данных. Мы можем вставить записи, а также мы можем удалить записи, которые не требуются. Если какая-либо запись должна быть отредактирована, тогда мы можем сделать, используя обновление. Операция Selecto поможет получить необходимые записи.
Выбрать
Операция Select используется для выбора записей из таблицы.
Пример :
В этом примере мы собираемся узнать об операции выбора при извлечении записей из таблицы guru_test, которая была создана в предыдущем разделе.
- <%@ 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"%>
- <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Guru Database JSP1</title>
- </head>
- <body>
- <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
- url="jdbc:mysql://localhost/GuruTest"
- user="gururoot" password="guru"/>
- <sql:query dataSource="${snapshot}" var="result">
- SELECT * from guru_test;
- </sql:query>
- <table>
- <tr>
- <th>Guru ID</th>
- <th>Name</th>
- </tr>
- <c:forEach var="row" items="${result.rows}">
- <tr>
- <td><c:out value="${row.emp_id}"/></td>
- <td><c:out value="${row.emp_name}"/></td>
- </tr>
- </c:forEach>
- </table>
- </body>
- </html>
Пояснение к коду:
Строка кода 1: Здесь мы импортируем библиотеки Java, io, uti и SQL .
Строка кода 3: Здесь мы импортируем базовую библиотеку JSTL и даем ее префикс как gurucore, который поможет получить вывод.
Строка кода 4: Здесь мы импортируем библиотеку SQL из jstl и даем ее префикс как gurusql, который поможет выполнять операции SQL.
Строка кода 15-17: Здесь, используя gurusql, мы соединяем источник данных, называя переменную «guru» и драйвер как драйвер JDBC. Также добавьте имя пользователя и пароль с помощью «gururoot» и «guru».
Строка кода 19-21: здесь мы используем SQL-запрос запроса select.
Строка кода 31-32: мы печатаем выходные данные для emp id и имени emp, которые извлекаются из результатов запроса, и с помощью цикла foreach мы печатаем выходные данные.
Когда вы выполните приведенный выше код, мы получим вывод, как показано ниже;
Вывод:
Здесь обе записи будут выбраны из базы данных.
1 гуру emp1
2 гуру emp2
Вставить
Оператор вставки используется для вставки записей в базу данных.
Пример:
В этом примере мы собираемся узнать о вставке записей в таблицу guru_test
- <%@ 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="gurucore"%>
- <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="gurusql"%>
- <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Guru Database JSP1</title>
- </head>
- <body>
- <gurusql:setDataSource var="guru" driver="com.mysql.jdbc.Driver"
- url="jdbc:mysql://localhost/GuruTest"
- user="gururoot" password="guru"/>
- <gurusql:update dataSource="${guru}" var="guruvar">
- INSERT INTO guru_test VALUES (3, 'emp emp3');
- </gurusql:update>
- </body>
- </html>
Пояснение к коду:
Строка кода 19-20: здесь мы вставляем записи в таблицу guru_test из GuruTestdatabase. Вставленные записи: empID — 3 и empname — emp emp3.Эти записи будут вставлены в таблицу
Когда вы выполняете код, записи вставляются в таблицу как guru_test со значением 3 и emp emp3.
Примечание: здесь мы не показываем вывод, так как мы просто вставляем запись в таблицу. Мы можем получить запись, используя запрос select как «select * from guru_test». Если запись была вставлена тогда, мы получили бы значение как 3 и emp3.Если запись не вставлена, то 3 не будет отображаться в записях в таблице.
удалять
Это операция удаления, при которой мы удаляем записи из таблицы guru_test.
Пример:
Здесь мы удалим запрос на удаление записи из таблицы guru_test. Запись, которую нужно удалить, должна быть установлена в переменной «guruid», а соответствующая запись удаляется из базы данных.
- <%@ 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="gurucore"%>
- <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="gurusql"%>
- <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Guru Database JSP1</title>
- </head>
- <body>
- <gurusql:setDataSource var="guru" driver="com.mysql.jdbc.Driver"
- url="jdbc:mysql://localhost/GuruTest"
- user="gururoot" password="guru"/>
- <gurucore:set var="guruid" value="3"/>
- <gurusql:update dataSource="${guru}" var="guruvar">
- DELETE FROM guru_test WHERE emp_id = ?
- <gurusql:param value="${guruid}" />
- </gurusql:update>
- </body>
- </html>
Пояснение к коду:
Строка кода 18: мы устанавливаем переменную гуру, значение которой равно 3, и которая должна быть удалена из базы данных. Это всегда первичный ключ таблицы. В этом случае первичным ключом является emp_id.
Строка кода 19-22: здесь мы используем запрос на удаление, который устанавливает параметр в предложении where. Здесь параметр guruid, установленный в строке кода 18. Соответствующая запись удаляется.
Вывод:
Когда вы выполняете вышеуказанный код, запись с emp_id как 3 удаляется.
Примечание. В этом примере мы не можем отобразить вывод, так как мы удаляем запись из таблицы. Чтобы проверить, удалена ли эта запись, нам нужно использовать запрос select «select * from guru_test». В этом случае, если мы получим 3 в качестве emp id, запрос на удаление не будет выполнен, иначе запись была успешно удалена.
Обновить
Обновление используется для редактирования записей в таблице.
Пример:
- <%@ 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="gurucore"%>
- <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="gurusql"%>
- <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Guru Database JSP1</title>
- </head>
- <body>
- <gurusql:setDataSource var="guru" driver="com.mysql.jdbc.Driver"
- url="jdbc:mysql://localhost/GuruTest"
- user="gururoot" password="guru"/>
- <gurucore:set var="guruid" value="2"/>
- <gurusql:update dataSource="${guru}" var="guruvar">
- UPDATE guru_test SET emp_name='emp guru99'
- <gurusql:param value="${guruid}" />
- </gurusql:update>
- </body>
- </html>
Пояснение к коду:
Строка кода 18: Здесь мы устанавливаем переменную guruid как 2. Это идентификатор, где мы хотим обновить запись.
Строка кода 19-22: здесь мы используем запрос на обновление для обновления записи в таблице guru_test записи, которая установлена в точке 18. Здесь emp guru2 заменен на emp guru99
Вывод:
Когда вы выполняете вышеуказанный код, запись withemp_id 2 изменяется на 99. Итак, теперь вывод будет показывать emp «guru99» вместо emp «guru2».
Резюме:
В этом руководстве мы узнали о подключении JSP к базе данных и доступу к ней. Также мы узнали о различных операциях, выполняемых с таблицей в базе данных, таких как создание, удаление, обновление и т. Д.