Соединение с базой данных JSP

Подключение к базе данных в JSP

База данных используется для хранения различных типов данных, которые имеют огромный размер и имеют емкость в гигабайтах. JSP может подключаться к таким базам данных для создания записей и управления ими.

В этом уроке мы узнаем, как создать таблицу в базе данных и как создавать записи в этих таблицах с помощью JSP.

Создать таблицу

In База данных MYSQL, мы можем создать таблицу в базе данных с помощью любого клиента MYSQL. Здесь мы используем PHPMyadminclient, и там у нас есть опция «новый» для создания новой таблицы, используя скриншот ниже.

Создать таблицу в базе данных JSP

При этом нам нужно указать имя таблицы как guru_test и создать два поля: emp_id и emp_name.

Emp_id имеет тип данных как int

Emp_name имеет тип данных как varchar

Создать таблицу в базе данных JSP

Другой вариант — использовать командную строку и внести изменения в каталог MYSQL:

C:\>
C:\>cd Program Files\MY SQL\bin
C:\>Program Files\MySql\bin>

Мы можем войти в базу данных следующим образом:

C:\Program Files\MYSQL\bin>mysql –u gururoot –p
Enter Password: *******
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 Operaоперации: Вставить, Обновить, Удалить, Выбрать

Используя JSP, мы можем выполнять несколько операций в базе данных. Мы можем вставлять записи, а также удалять записи, которые не требуются. Если какая-либо запись нуждается в редактировании, мы можем сделать это с помощью обновления. Операция Select поможет извлечь требуемые записи.

Выберите

Операция 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: Здесь мы импортируем io, uti и SQL библиотеки Java.

Строка кода 3: Здесь мы импортируем основную библиотеку JSTL и присваиваем ей префикс gurucore, который поможет получить выходные данные.

Строка кода 4: Здесь мы импортируем библиотеку SQL jstl и присваиваем ей префикс gurusql, который поможет выполнять операции SQL.

Строка кода 15–17: Здесь, используя gurusql, мы подключаем источник данных, называя переменную «гуру», а драйвер — драйвером JDBC. Также добавляем имя пользователя и пароль с помощью «gururoot» и «guru».

Строка кода 19–21: Здесь мы используем SQL-запрос запроса выбора.

Строка кода 31–32: Мы печатаем выходные данные для идентификатора emp и имени 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 базы данных GuruTest. Вставленные записи: 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: Мы устанавливаем переменную guruid со значением 3, которую необходимо удалить из базы данных. Это всегда первичный ключ таблицы. В этом случае первичным ключом является emp_id.

Строка кода 19–22: Здесь мы используем запрос на удаление, который устанавливает параметр в предложении where. Здесь параметр — guruid, который устанавливается в строке кода 18. Соответствующая запись удаляется.

Вывод:

Когда вы выполняете приведенный выше код, запись с emp_id равным 3 удаляется.

Примечание: В этом примере мы не можем показать вывод, так как удаляем запись из таблицы. Чтобы проверить, удалена ли эта запись, нам нужно использовать запрос select «select * from guru_test». В этом случае, если мы получаем 3 в качестве emp id, то запрос delete не удался, в противном случае запись была успешно удалена.

Обновление ПО

Обновление используется для редактирования записей в таблице.

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

<%@ 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.

Вывод:

При выполнении приведенного выше кода запись с emp_id 2 изменится на 99. Таким образом, теперь вывод будет показывать emp”guru99″ вместо emp “guru2”.

Резюме

В этом уроке мы узнали о подключении JSP к базе данных и доступе к базе данных. Также мы узнали о различных операциях, выполняемых с таблицами в базе данных, таких как создание, удаление, обновление и т. д.