Conexão de banco de dados JSP

⚡ Resumo Inteligente

A conexão de banco de dados JSP permite que um aplicativo web armazene e gerencie grandes volumes de dados, vinculando páginas JSP a um banco de dados relacional. Este recurso explica como criar uma conexão de banco de dados JSP. MySQL Inserir registros em uma tabela e realizar operações de seleção, inserção, atualização e exclusão usando as tags SQL do JSTL.

  • 🗄️ Objetivo: Os bancos de dados armazenam gigabytes de dados que o JSP pode criar, ler e gerenciar.
  • 🧱 Criar tabela: Crie uma tabela guru_test com emp_id e emp_name usando um MySQL cliente ou prompt.
  • ???? Conexão: A tag sql:setDataSource fornece o driver JDBC. URL, nome de usuário e senha.
  • 🔁 CRU Operações: As operações de seleção, inserção, atualização e exclusão são executadas por meio de tags SQL do JSTL.
  • 🔑 parâmetros: Use sql:param e uma chave primária, como emp_id, para selecionar registros específicos.

Conexão de banco de dados JSP

Conectando ao banco de dados em JSP

O banco de dados é usado para armazenar diversos tipos de dados, que são volumosos e possuem capacidade de armazenamento em gigabytes. O JSP pode se conectar a esses bancos de dados para criar e gerenciar registros.

Neste tutorial aprenderemos como criar uma tabela no banco de dados e como criar registros nessas tabelas através de JSP.

Criar a tabela

In Banco de dados MYSQLPodemos criar uma tabela no banco de dados com qualquer cliente MySQL. Aqui, estamos usando o cliente PHPMyAdmin, e nele temos a opção "novo" para criar uma nova tabela, conforme mostrado na captura de tela abaixo.

Criar tabela no banco de dados JSP

Neste caso, precisamos fornecer o nome da tabela como guru_test e criaremos dois campos, emp_id e emp_name.

  • Emp_id tem o tipo de dados int.
  • Emp_name tem o tipo de dados varchar.

Criar tabela no banco de dados JSP

Outra opção é usar o prompt de comando e acessar o diretório do MySQL:

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

Podemos acessar o banco de dados da seguinte forma:

C:\Program Files\MYSQL\bin>mysql –u gururoot –p
Enter Password: *******
Mysql>

Crie a tabela guru_test no banco de dados com o nome como GuruFaça o teste da seguinte forma no prompt do MySQL:

Mysql> use GuruTest;
MySql> create table guru_test(
Emp_id int NOT NULL,
Emp_name varchar(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)

Primeiro, os registros são inseridos usando o INSERT consulta, e então podemos usar o SELECT consulta para verificar se a tabela foi criada ou não.

Criar registros

Após criar uma tabela, precisamos inserir registros na tabela guru_test usando a consulta de inserção, conforme mostrado abaixo:

Os registros inseridos aqui são:

  • 1 e guru emp1
  • 2 e guru 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ções: Inserir, Atualizar, Excluir, Selecionar

Usando JSP, podemos realizar diversas operações no banco de dados. Podemos inserir registros e também excluir registros desnecessários. Se algum registro precisar ser editado, podemos fazer isso usando uma operação de atualização. A operação de seleção (SELECT) ajudará a buscar os registros necessários.

Selecionar

A operação Select é usada para selecionar os registros da tabela.

Exemplo:

Neste exemplo, vamos aprender sobre a operação de seleção para buscar registros da tabela guru_test, que foi criada na seção anterior.

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

Explicação do código:

Code Linha 1: Aqui estamos importando as classes io, util e SQL bibliotecas de java.

Code Linha 3: Aqui estamos importando a biblioteca principal do JSTL e atribuindo o prefixo "c" a ela, o que ajudará a obter a saída.

Code Linha 4: Aqui estamos importando a biblioteca SQL do JSTL e atribuindo o prefixo "sql" a ela, o que facilitará a realização de operações SQL.

Code Linha 15-17: Aqui, usando SQL, estamos conectando à fonte de dados nomeando a variável como “snapshot” e o driver como um driver JDBC. Também adicionamos o nome de usuário e a senha como “gururoot” e “guru”.

Code Linha 19-21: Aqui estamos usando a consulta SQL da consulta select.

Code Linha 31-32: Estamos imprimindo o resultado para o ID do funcionário e o nome do funcionário, que são obtidos a partir dos resultados da consulta, e usando um loop foreach para imprimir o resultado.

Ao executar o código acima, obteremos a seguinte saída:

Saída:

Aqui, ambos os registros serão obtidos do banco de dados:

  • 1 guru emp1
  • 2 guru emp2

inserção

O operador Insert é usado para inserir registros no banco de dados.

Exemplo:

Neste exemplo, vamos aprender sobre como inserir registros na tabela 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>

Explicação do código:

Code Linha 19-20: Aqui estamos inserindo registros na tabela guru_test do GuruBanco de dados de teste. Os registros inseridos são: empID – 3 e empname – emp emp3Esses registros serão inseridos na tabela. Ao executar o código, os registros são inseridos na tabela guru_test, com o valor 3 e emp emp3.

Observação: Aqui não estamos mostrando a saída, pois estamos apenas inserindo o registro na tabela. Podemos obter o registro usando a consulta SELECT como 'SELECT * FROM guru_test'. Se o registro fosse inserido, obteríamos o valor 3 e e.mp3Se o registro não for inserido, o número 3 não será exibido nos registros da tabela.

Apagar

Esta é a operação de exclusão, onde removemos os registros da tabela guru_test.

Exemplo:

Aqui, usaremos a consulta DELETE para excluir o registro da tabela guru_test. O registro que deve ser excluído precisa ser definido na variável “guruid”, e o registro correspondente é excluído do banco de dados.

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

Explicação do código:

Code Linha 18: Estamos definindo uma variável guruid cujo valor é 3, que deve ser deletada do banco de dados. Esta é sempre uma chave primária da tabela. Neste caso, a chave primária é emp_id.

Code Linha 19-22: Aqui estamos usando uma consulta DELETE que define um parâmetro na cláusula WHERE. Nesse caso, o parâmetro é `guruid`, definido na linha de código 18. O registro correspondente é excluído.

Saída:

Ao executar o código acima, o registro com emp_id como 3 é excluído.

Observação: Neste exemplo, não podemos mostrar a saída, pois estamos excluindo o registro da tabela. Para verificar se o registro foi excluído, precisamos usar a consulta SELECT "SELECT * FROM guru_test". Nesse caso, se o resultado for 3 como ID do funcionário, a consulta de exclusão falhou; caso contrário, o registro foi excluído com sucesso.

Atualizar

A atualização é usada para editar os registros da tabela.

Exemplo:

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

Explicação do código:

Code Linha 18: Aqui estamos definindo uma variável guruid como 2. Este é o ID onde queremos atualizar o registro.

Code Linha 19-22: Aqui estamos usando uma consulta de atualização para atualizar o registro na tabela guru_test, que está definido no ponto 18. Aqui, emp guru2 é substituído por emp guru99.

Saída:

Ao executar o código acima, o registro com emp_id 2 é alterado para 99. Portanto, a saída agora mostrará emp “guru99” em vez de emp “guru2”.

Perguntas Frequentes

Sim. Assistentes de IA podem gerar tags SQL JSTL ou código JDBC para conectar JSP a MySQL, construir consultas e mapear linhas de resultados. Você ainda deve verificar o driver, URLe as credenciais antes de executar.

Sim. As ferramentas de IA podem sinalizar consultas com strings concatenadas e sugerir consultas parametrizadas ou instruções preparadas. Isso reduz o risco de injeção de SQL, embora a revisão manual de segurança de todas as entradas do banco de dados ainda seja recomendada.

JDBC (Java A Conectividade de Banco de Dados (DBC) é a API que permite Java e as aplicações JSP se conectam a um banco de dados. Elas carregam um driver, como o com.mysql.jdbc.Driver, e executam instruções SQL através da conexão.

Não. As tags SQL do JSTL são adequadas para aprendizado e protótipos. Para produção, a lógica do banco de dados pertence a servlets, DAOs ou um framework.ping O JSP focava na apresentação em vez de consultas diretas.

Resuma esta postagem com: