<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>H2 on Car Store</title><link>https://professor-enoqueleal.github.io/tags/h2/</link><description>Recent content in H2 on Car Store</description><generator>Hugo</generator><language>pt</language><lastBuildDate>Thu, 07 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://professor-enoqueleal.github.io/tags/h2/index.xml" rel="self" type="application/rss+xml"/><item><title>LAB 8 - Implementando a funcionalidade de Login com Spring Security</title><link>https://professor-enoqueleal.github.io/posts/laboratorio-8-tsw/</link><pubDate>Thu, 07 May 2026 00:00:00 +0000</pubDate><guid>https://professor-enoqueleal.github.io/posts/laboratorio-8-tsw/</guid><description>&lt;h2 id="objetivo">Objetivo&lt;/h2>
&lt;p>Neste laboratório iremos implementar a funcionalidade de autenticação pora os formulários da camada web da aplicação &lt;code>carstore-spring-boot&lt;/code>. Para isso, iremos utilizar o Spring Security Starter. O foco é permitir que usuários façam login via uma página HTML (Thymeleaf) e que a sessão seja mantida pelo container de sessão do Spring Security.&lt;/p>
&lt;p>Ao final você deverá saber:&lt;/p>
&lt;ul>
&lt;li>Incluir dependências do Spring Security no &lt;code>pom.xml&lt;/code>;&lt;/li>
&lt;li>Configurar um &lt;code>SecurityConfig&lt;/code> moderno (filter chain) com &lt;code>PasswordEncoder&lt;/code>;&lt;/li>
&lt;li>Criar um formulário de login com Thymeleaf e integrar ao fluxo do Spring Security;&lt;/li>
&lt;li>Fornecer um usuário em memória para testes;&lt;/li>
&lt;li>Testar a autenticação via navegador usando a UI e o console H2.&lt;/li>
&lt;/ul>
&lt;h2 id="pré-requisitos">Pré-requisitos&lt;/h2>
&lt;ul>
&lt;li>Ter completado os laboratórios anteriores (Parte 1 JDBC e Parte 2 JPA);&lt;/li>
&lt;li>Projeto &lt;code>carstore-spring-boot&lt;/code> compilando localmente;&lt;/li>
&lt;li>IDE (IntelliJ/VS Code) com Maven e JDK 11+ configurados.&lt;/li>
&lt;/ul>
&lt;h2 id="visão-geral-das-tarefas">Visão geral das tarefas&lt;/h2>
&lt;ol>
&lt;li>Adicionar dependência &lt;code>spring-boot-starter-security&lt;/code> no &lt;code>pom.xml&lt;/code>.&lt;/li>
&lt;li>Criar &lt;code>SecurityConfig&lt;/code> com &lt;code>SecurityFilterChain&lt;/code> e &lt;code>PasswordEncoder&lt;/code> (BCrypt).&lt;/li>
&lt;li>Criar um template &lt;code>login.html&lt;/code> e roteador &lt;code>LoginController&lt;/code>.&lt;/li>
&lt;li>Testar com um usuário em memória.&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h3 id="tarefa-1-importando-a-dependência-do-spring-security">Tarefa 1: Importando a dependência do Spring Security&lt;/h3>
&lt;p>No &lt;code>pom.xml&lt;/code> do projeto &lt;code>carstore-spring-boot&lt;/code>, adicione os starters &lt;code>spring-boot-starter-security&lt;/code> e &lt;code>thymeleaf-extras-springsecurity6&lt;/code>:&lt;/p></description></item><item><title>LAB 7 - Integração com banco de dados via JDBC - PARTE 1</title><link>https://professor-enoqueleal.github.io/posts/laboratorio-7-tsw-part-1/</link><pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate><guid>https://professor-enoqueleal.github.io/posts/laboratorio-7-tsw-part-1/</guid><description>&lt;h2 id="visão-geral-e-objetivos-do-laboratório">Visão geral e objetivos do laboratório&lt;/h2>
&lt;p>Neste laboratório vamos adicionar e configurar a persistência na nossa aplicação spring-boot (&lt;code>carstore-spring-boot&lt;/code>). O objetivo é apresentar duas abordagens comuns para trabalhar com bancos relacionais em aplicações Spring:&lt;/p>
&lt;ul>
&lt;li>Uso direto de JDBC com &lt;code>JdbcTemplate&lt;/code> (menos boilerplate que DriverManager);&lt;/li>
&lt;li>Uso de JPA (Jakarta Persistence / Hibernate) diretamente via &lt;code>EntityManager&lt;/code> (nesta aula não usaremos repositórios automáticos; focaremos em JPA puro).&lt;/li>
&lt;/ul>
&lt;p>Ao final desse laboratório você deverá ser capaz de:&lt;/p></description></item></channel></rss>