O projeto funcionará no padrão de arquitetura MVC (Model-View-Controler). Veja mais detalhes sobre este padrão neste link.
Criando um novo projeto
Crie um novo projeto - Menu File - New - Project. Na parte 1.2 você pode ver como dar os primeiros passos na ferramenta. As duas primeiras janelas você clica em Next e na terceira, digite o nome do projeto de sua preferência. Neste guia adotei o nome CadCliente.
Abrindo o conteúdo do projeto clicando na seta à esquerda do projeto, clique com o botão direito do mouse em src para criar os pacotes.
Opção New - Package:
Pacote controle, onde ficam as classes que atribuem os métodos da classe DAO à um objeto, para posteriormente fazer as alterações nos formulários. Neste caso, no formulário de cadastro de clientes.
1 package br.com.cliente.bean; 2 3 public class Cliente { 4 private Integer id; 5 private String nome; 6 private String endereco; 7 private String municipio; 8 private String cep; 9 private String tel; 10 private String cel; 11 private String cpf; 12 private String cnpj; 13 private String genero;
Crie os métodos assessores, com o curso abaixo dos atributos, pressione Alt + Insert no seu teclado e selecione Getters and Setters:
1 package br.com.cliente.bean; 2 3 public class Cliente { 4 private Integer id; 5 private String nome; 6 private String endereco; 7 private String municipio; 8 private String cep; 9 private String tel; 10 private String cel; 11 private String cpf; 12 private String cnpj; 13 private String genero; 14 15 public Integer getId() { 16 return id; 17 } 18 public void setId(Integer id) { 19 this.id = id; 20 } 21 public String getNome() { 22 return nome; 23 } 24 public void setNome(String nome) { 25 this.nome = nome; 26 } 27 public String getEndereco() { 28 return endereco; 29 } 30 public void setEndereco(String endereco) { 31 this.endereco = endereco; 32 } 33 public String getMunicipio() { 34 return municipio; 35 } 36 public void setMunicipio(String municipio) { 37 this.municipio = municipio; 38 } 39 public String getCep() { 40 return cep; 41 } 42 public void setCep(String cep) { 43 this.cep = cep; 44 } 45 public String getTel() { 46 return tel; 47 } 48 public void setTel(String tel) { 49 this.tel = tel; 50 } 51 public String getCel() { 52 return cel; 53 } 54 public void setCel(String cel) { 55 this.cel = cel; 56 } 57 public String getCpf() { 58 return cpf; 59 } 60 public void setCpf(String cpf) { 61 this.cpf = cpf; 62 } 63 public String getCnpj() { 64 return cnpj; 65 } 66 public void setCnpj(String cnpj) { 67 this.cnpj = cnpj; 68 } 69 public String getGenero() { 70 return genero; 71 } 72 public void setGenero(String genero) { 73 this.genero = genero; 74 } 75 76 77 @Override 78 public String toString() { 79 // TODO Auto-generated method stub 80 return getNome(); 81 } 82 }
Após os métodos assessores, é preciso subscrever o método toString, que servirá mais adiante na pesquisa do formulário. Usando o recurso da IDE IntelliJ, pressione novamente Alt + Insert e a opção toString...
Para concluir esta parte 2, mais três classes auxiliares no pacote br.com.controle.util:
- a classe Principal com o método main, que dá a "partida" ao sistema;
- a classe MaskCampos, para as máscaras de preenchimento usando MaskFormatter;
- a classe Conectar, para fazer a conexão ao banco e a interface Dao, com métodos a serem implementados posteriormente na classe ClenteDao.
Da mesma forma que você criou a classe Cliente, clique com o botão direito do mouse agora no pacote br.com.cliente.util para criar a classe Principal, e digite o método main manualmente (o que recomendo aos iniciantes para ajudar a fixar na memória), ou o atalho psvm:
public static void main(String[] args){O código da classe MaskCampos é o seguinte, com um método para cada campo que haverá no futuro formulaŕio (maskTel, maskCel, maskCpf, maskCep, maskCnpj):
}
6: public class MaskCampos{ 7: DefaultFormatterFactory dff; 8: public MaskFormatter maskTel(JFormattedTextField textField) throws ParseException{ 9: MaskFormatter mask; 10: mask = new MaskFormatter("(##)####-####"); 11: mask.setOverwriteMode(true); 12: 13: mask.setValidCharacters("0123456789"); 14: mask.setPlaceholderCharacter('_'); 15: dff = new DefaultFormatterFactory(mask); 16: textField.setFormatterFactory(dff); 17: return mask; 18: } 19: public MaskFormatter maskCel(JFormattedTextField textField) throws ParseException{ 20: MaskFormatter mask; 21: mask = new MaskFormatter("(##)#####-####"); 22: mask.setOverwriteMode(true); 23: mask.setValidCharacters("0123456789"); 24: dff = new DefaultFormatterFactory(mask); 25: textField.setFormatterFactory(dff); 26: return mask; 27: } 28: public MaskFormatter maskCpf(JFormattedTextField textField) throws ParseException{ 29: MaskFormatter mask; 30: mask = new MaskFormatter("###.###.###-##"); 31: mask.setOverwriteMode(true); 32: mask.setValidCharacters("0123456789"); 33: mask.setPlaceholderCharacter('_'); 34: dff = new DefaultFormatterFactory(mask); 35: textField.setFormatterFactory(dff); 36: return mask; 37: } 38: public MaskFormatter maskCep(JFormattedTextField textField) throws ParseException{ 39: MaskFormatter mask; 40: mask = new MaskFormatter("#####-###"); 41: mask.setOverwriteMode(true); 42: mask.setValidCharacters("0123456789"); 43: mask.setPlaceholderCharacter('_'); 44: dff = new DefaultFormatterFactory(mask); 45: textField.setFormatterFactory(dff); 46: return mask; 47: } 48: public MaskFormatter maskCnpj(JFormattedTextField textField) throws ParseException{ 49: MaskFormatter mask; 50: mask = new MaskFormatter("##.###.###/####-##"); 51: mask.setOverwriteMode(true); 52: mask.setValidCharacters("0123456789"); 53: mask.setPlaceholderCharacter('_'); 54: dff = new DefaultFormatterFactory(mask); 55: textField.setFormatterFactory(dff); 56: return mask; 57: } 58: }
Estes métodos serão usados posteriormente na classe do pacote view, onde estará o formulário de cadastro.
Concluindo...
1 package br.com.crissantosinfo.util;O código para fazer a conexão com o banco (nas publicações seguintes terá a orientação para criar o banco de dados no MySQL):
2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.SQLException; 6 7 public class Conector { 8 static String url = "jdbc:mysql://localhost/cadastrocliente"; 9 static String usuario = "root"; 10 static String senha = ""; 11 static Connection con; 12 13 public static Connection getConexao() throws SQLException{ 14 try{ 15 16 if(con == null){ 17 con = (Connection) DriverManager.getConnection(url, usuario, senha); 18 } 19 return con; 20 }catch(SQLException e){ 21 throw new SQLException(e.getMessage()); 22 } 23 }
E a interface Dao - (botão direito em br.com.nomedoseusite.util - New - Class) e escolha abaixo a opção Interface:
A interface terá os seguintes métodos, correspondente ao CRUD do banco de dados:
1 package br.com.cliente.util; 2 3 import java.util.List; 4 5 public interface Dao { 6 void insert(Object o); 7 void update(Object o); 8 void delete(Object o); 9 Object select(int i); 10 List select(); 11 }
Nenhum comentário:
Postar um comentário