Conectando e manipulando Aparche Derby em Java e Java DB usando apenas recursos necessarios para realizar a interacao Local (Embedded) e Serviodor (Web /Java DB/Service...). O NetBeans tambem e servidor/gerenciador de dados e por isso esse tutorial se aplica tambem para Oracle, MySQ e etc... O Proximo sera para MySQL.O que e o Derby?Apache Derby e um sistema de gerenciamento de banco de dados relacional Java que pode ser embutido em programas Java e usado para processamento de transacoes online. Consome apenas 2 MB de espaco em disco.1 O Apache Derby e desenvolvido como um projeto open source sob a Apache 2.0 licence. O Derby era anteriormente distribuido como IBM Cloudscape. Atualmente e distribuido como Sun Java DB.Vamos la!Requerimentos:*Conhecimento basico de SQL*Conhecimento basico em Java.*Orientacao de Objetos(import/classes/metodos/funcoes).*Usar uma IDE (NetBenas/Eclipse).Gerenciador Derby ativado(Service ou NetBeans aberto) no Sistema para conectar a Servidor localhost.(Local DB nao precisa de nada disso)Recomendacoes:JDK 1.8*JRE 1.8*NetBeans 8.*Criando um novo projeto em NetBeans 8.*> Arquivo > Novo Projeto > Java > Aplicacao Java...Criando novo projeto Java no NetBeansApos criar...Modelo class principal Java by Luiz R.Vamos logo importar o Derby.jar e voce pode fazer isso de dentro do seu NetBeans ou download do Site do Apache Derby. Para importacao offline, vc clica com o botao direito em Bibliotecas > Adicionar Biblioteca > importar > Driver JDBC do Java DB, com isso ele vai importar o pacote Derby.jar, Derbycliente.jar e Derbyweb.jar. Para este tutorial voce so precisa do Derby.jar. Pode fazer tambem selecionando "Adicionar JAR/Pasta" ao inves de biblioteca e importar o derby.jar.Importando bibliotecas no JavaVamos apagando o que for desnecessario do modelo pre definido... Ate ficar assim:Observe que eu estou usando um tema Monokai com modelo ja modificado por mim e o seu deve ser o padrao/diferente, caso esteja interessado eu disponibilizo ele aqui.Iniciando a conexao SQLObserve que eu acrescentei import java.sql.*; que e uma importacao padrao, porem o "*" quer dizer que quero usar todas a classes do java.SQL,Try/Catch sera muito importante porque o Java nao tolera e o programa vai tentar executar dentro do bloco try, se ocorrer um erro fatal o programa nao vai mostrar bugs nem cancelamento de processo, ele vai dar catch e dizer que ocorreu um problema. Exeption/SQLExeption pode ser incrementada com uma variavel pra armazenar o erro ex: (Exception Err), Err vai ser a variavel. Criei um objeto(conn) que estabeleceu uma conexao com o Embedded Driver "org.apache.derby.jdbc.EmbeddedDriver" atraves do Derby.jar usando a String "jdbc:derby:.\\LocalDB;create=true;" como parametros para criar o Banco de dados Local DB. (pode copiar, e codigo!).package conectderby;import java.sql.*;//by Luiz R.public class ConectDerby{ public static void main(String[] args) { Connection conn=null; try{ Class.forName("org.apache.derby.jdbc.EmbeddedDriver"); conn = DriverManager.getConnection("jdbc:derby:.\\LocalDB"); System.out.println("Conectado com sucesso..."); }catch(ClassNotFoundException | SQLException Err){ System.out.println("Erro ao tentar conectar em Bando de dados localdb... "+Err); } //PROXIMO PASSO COM ERRO OU NAO.. try{ if(conn==null){ System.out.println("Criando bando de dados local..."); conn = DriverManager.getConnection("jdbc:derby:.\\LocalDB;create=true;"); } Statement sql = conn.createStatement(); System.out.println("Banco de dados LocalDB criado com sucesso..."); /* DAKI PRA BAIXO ANTES DE close() PODE MANIPULAR TODO O DERBY EM SQL sql.executeUpdate("CREATE/INSERT/DELETE/ETC..."); PARA EXECUTAR COMANDOS QUE ATUALIZEM A TABELA sql.executeQuery("SELECT..."); PARA OBTER DADOS DA TABELA E IMPRIMIR