diff --git a/src/main/java/com/example/App.java b/src/main/java/com/example/App.java
index 9407ea49..67beba1f 100644
--- a/src/main/java/com/example/App.java
+++ b/src/main/java/com/example/App.java
@@ -10,7 +10,48 @@ public class App {
     private static final String JDBC_URL = "jdbc:postgresql://localhost/postgres";
 
     public static void main(String[] args) {
-        new App();
+        System.out.println();
+        System.out.println("Aplicação Java de Exemplo\n");
+
+        Cliente cliente = new Cliente();
+
+        cliente.setRenda(1500);
+        cliente.setSexo('F');
+        cliente.setNome("Bento");
+        cliente.setCpf("777777");
+        System.out.println("");
+
+        Cliente cliente1 = new Cliente();
+
+        cliente1.setRenda(2000);
+        cliente1.setSexo('M');
+        cliente1.setNome("Miguel");
+        cliente1.setCpf("777777");
+        System.out.println("");
+
+
+        System.out.println("Sexo: "+cliente.getNome());
+        System.out.println("Renda: "+cliente.getRenda());
+        System.out.println("Sexo: "+cliente.getSexo());
+        System.out.println("Sexo: "+cliente.getCpf());
+
+        if(cliente.getCpf().equals(cliente1.getCpf()))
+            System.out.println("Clientes tem o mesmo CPF!");
+        else System.out.println("Clientes tem os CPF diferentes!");
+
+        System.out.println("");
+
+        System.out.println("Sexo: "+cliente1.getNome());
+        System.out.println("Renda: "+cliente1.getRenda());
+        System.out.println("Sexo: "+cliente1.getSexo());
+        System.out.println("Sexo: "+cliente1.getCpf());
+
+        if(cliente.getCpf().equals(cliente1.getCpf()))
+            System.out.println("Clientes tem o mesmo CPF!");
+        else System.out.println("Clientes tem os CPF diferentes!");
+     
+
+        //new App();
     }
 
     public App(){
diff --git a/src/main/java/com/example/AppList.java b/src/main/java/com/example/AppList.java
new file mode 100644
index 00000000..ceb4795c
--- /dev/null
+++ b/src/main/java/com/example/AppList.java
@@ -0,0 +1,116 @@
+package com.example;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+public class AppList {
+    private static final String PASSWORD = "";
+    private static final String USERNAME = "gitpod";
+    private static final String JDBC_URL = "jdbc:postgresql://localhost/postgres";
+
+    public static void main(String[] args) {
+
+        List<Cliente> listaClientes = new ArrayList<>();
+        Cliente cliente1 = new Cliente();
+
+        cliente1.setNome("Manoel");
+        cliente1.setRenda(1500);
+        listaClientes.add(cliente1);
+
+
+        Cliente cliente2 = new Cliente();
+
+        cliente2.setNome("Bento");
+        cliente2.setRenda(7770);
+
+        listaClientes.add(cliente2);
+        listaClientes.add(cliente2);
+        listaClientes.add(cliente1);
+        listaClientes.add(cliente2);
+        listaClientes.add(cliente1);
+        listaClientes.add(cliente2);
+
+        for (Cliente cliente : listaClientes) {
+            System.out.println(cliente);
+        }
+
+
+
+    }
+
+
+    private void listarDadosTabela(Connection conn, String tabela) {
+        var sql = "select * from " + tabela;
+        //System.out.println(sql);
+        try {
+            var statement = conn.createStatement();
+            var result = statement.executeQuery(sql);
+
+            var metadata = result.getMetaData();
+            int cols = metadata.getColumnCount();
+
+            for (int i = 1; i <= cols; i++) {
+                System.out.printf("%-25s | ", metadata.getColumnName(i));
+            }
+            System.out.println();
+
+            while(result.next()){
+                for (int i = 1; i <= cols; i++) {
+                    System.out.printf("%-25s | ", result.getString(i));
+                }
+                System.out.println();
+            }
+        } catch (SQLException e) {
+            System.err.println("Erro na execução da consulta: " + e.getMessage());
+        }
+        
+    }
+
+    private void localizarEstado(Connection conn, String uf) {
+        try{
+            //var sql = "select * from estado where uf = '" + uf + "'"; //suscetível a SQL Injection
+            var sql = "select * from estado where uf = ?";
+            var statement = conn.prepareStatement(sql);
+            //System.out.println(sql);
+            statement.setString(1, uf);
+            var result = statement.executeQuery();
+            if(result.next()){
+                System.out.printf("Id: %d Nome: %s UF: %s\n", result.getInt("id"), result.getString("nome"), result.getString("uf"));
+            }
+            System.out.println();
+        } catch(SQLException e){
+            System.err.println("Erro ao executar consulta SQL: " + e.getMessage());
+        }
+        
+    }
+
+    private void listarEstados(Connection conn) {
+        try{
+            System.out.println("Conexão com o banco realizada com sucesso.");
+
+            var statement = conn.createStatement();
+            var result = statement.executeQuery("select * from estado");
+            while(result.next()){
+                System.out.printf("Id: %d Nome: %s UF: %s\n", result.getInt("id"), result.getString("nome"), result.getString("uf"));
+            }
+            System.out.println();
+        } catch (SQLException e) {
+            System.err.println("Não foi possível executar a consulta ao banco: " + e.getMessage());
+        }
+    }
+
+    private Connection getConnection() throws SQLException {
+        return DriverManager.getConnection(JDBC_URL, USERNAME, PASSWORD);
+    }
+
+    private void carregarDriverJDBC() {
+        try {
+            Class.forName("org.postgresql.Driver");
+        } catch (ClassNotFoundException e) {
+            System.err.println("Não foi possível carregar a biblioteca para acesso ao banco de dados: " + e.getMessage());
+        }
+    }
+}
diff --git a/src/main/java/com/example/AppScanner.java b/src/main/java/com/example/AppScanner.java
new file mode 100644
index 00000000..1cc5c21a
--- /dev/null
+++ b/src/main/java/com/example/AppScanner.java
@@ -0,0 +1,122 @@
+package com.example;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.util.Scanner;
+
+public class AppScanner {
+    private static final String PASSWORD = "";
+    private static final String USERNAME = "gitpod";
+    private static final String JDBC_URL = "jdbc:postgresql://localhost/postgres";
+
+    public static void main(String[] args) {
+        System.out.println();
+        System.out.println("Aplicação Java de Exemplo\n");
+
+        Cliente cliente = new Cliente();
+        Scanner scanner = new Scanner(System.in);
+
+        System.out.println("Digite o nome:");
+        cliente.setNome(scanner.nextLine());
+
+        
+        System.out.println("Digite o sexo:");
+        String sexo = scanner.nextLine();
+        cliente.setSexo(sexo.charAt(0));
+
+        System.out.println("Digite o CPF:");
+        cliente.setCpf(scanner.nextLine());
+
+        System.out.println("Digite a renda:");
+        cliente.setRenda(scanner.nextDouble());
+
+        System.out.println("");
+
+        System.out.println("Nome: "+cliente.getNome());
+        System.out.println("Renda: "+cliente.getRenda());
+        System.out.println("Sexo: "+cliente.getSexo());
+        System.out.println("CPF: "+cliente.getCpf());
+
+      
+
+
+
+
+       
+    }
+
+
+
+    private void listarDadosTabela(Connection conn, String tabela) {
+        var sql = "select * from " + tabela;
+        //System.out.println(sql);
+        try {
+            var statement = conn.createStatement();
+            var result = statement.executeQuery(sql);
+
+            var metadata = result.getMetaData();
+            int cols = metadata.getColumnCount();
+
+            for (int i = 1; i <= cols; i++) {
+                System.out.printf("%-25s | ", metadata.getColumnName(i));
+            }
+            System.out.println();
+
+            while(result.next()){
+                for (int i = 1; i <= cols; i++) {
+                    System.out.printf("%-25s | ", result.getString(i));
+                }
+                System.out.println();
+            }
+        } catch (SQLException e) {
+            System.err.println("Erro na execução da consulta: " + e.getMessage());
+        }
+        
+    }
+
+    private void localizarEstado(Connection conn, String uf) {
+        try{
+            //var sql = "select * from estado where uf = '" + uf + "'"; //suscetível a SQL Injection
+            var sql = "select * from estado where uf = ?";
+            var statement = conn.prepareStatement(sql);
+            //System.out.println(sql);
+            statement.setString(1, uf);
+            var result = statement.executeQuery();
+            if(result.next()){
+                System.out.printf("Id: %d Nome: %s UF: %s\n", result.getInt("id"), result.getString("nome"), result.getString("uf"));
+            }
+            System.out.println();
+        } catch(SQLException e){
+            System.err.println("Erro ao executar consulta SQL: " + e.getMessage());
+        }
+        
+    }
+
+    private void listarEstados(Connection conn) {
+        try{
+            System.out.println("Conexão com o banco realizada com sucesso.");
+
+            var statement = conn.createStatement();
+            var result = statement.executeQuery("select * from estado");
+            while(result.next()){
+                System.out.printf("Id: %d Nome: %s UF: %s\n", result.getInt("id"), result.getString("nome"), result.getString("uf"));
+            }
+            System.out.println();
+        } catch (SQLException e) {
+            System.err.println("Não foi possível executar a consulta ao banco: " + e.getMessage());
+        }
+    }
+
+    private Connection getConnection() throws SQLException {
+        return DriverManager.getConnection(JDBC_URL, USERNAME, PASSWORD);
+    }
+
+    private void carregarDriverJDBC() {
+        try {
+            Class.forName("org.postgresql.Driver");
+        } catch (ClassNotFoundException e) {
+            System.err.println("Não foi possível carregar a biblioteca para acesso ao banco de dados: " + e.getMessage());
+        }
+    }
+}
diff --git a/src/main/java/com/example/Cliente.java b/src/main/java/com/example/Cliente.java
new file mode 100644
index 00000000..0f6b8b56
--- /dev/null
+++ b/src/main/java/com/example/Cliente.java
@@ -0,0 +1,56 @@
+package com.example;
+
+public class Cliente{
+    private double renda;
+    private char sexo;
+    private boolean especial;
+    private String nome;
+    private String cpf;
+
+    public String getCpf() {
+        return cpf;
+    }
+
+    public void setCpf(String cpf) {
+        this.cpf = cpf;
+    }
+
+    public Cliente(){
+        System.out.println("Criando classe Cliente");
+    }
+    
+    public String getNome() {
+        return nome;
+    }
+    public void setNome(String nome) {
+        if(nome.isBlank())
+            System.out.println("Nome é obrigatório: ");
+        else
+            this.nome = nome.toUpperCase();
+    }
+    public double getRenda() {
+        return renda;
+    }
+    public void setRenda(double renda) {
+        this.renda = renda;
+    }
+    public char getSexo() {
+        return sexo;
+    }
+    public void setSexo(char sexo) {
+        this.sexo = sexo;
+    }
+    public boolean isEspecial() {
+        return especial;
+    }
+    public void setEspecial(boolean especial) {
+        this.especial = especial;
+    }
+ 
+    public String toString(){
+
+        return "Nome :"+nome+" - Renda :"+renda;
+    }
+    
+
+}
\ No newline at end of file
