sexta-feira, 23 de setembro de 2016

Gerar Objetos ou Entities Automaticamente Usando Plugin JBoss do Eclipse

Considero o Eclipse uma grande ferramenta. Nenhuma outra IDE faz o que ela faz. Pelo fato de ser open source toda uma comunidade desenvolve para ela. Hoje vamos aprender a gerar a camada model automaticamente com o plugin JBoss. A ferramenta irá varrer as tabelas do banco de dados e transforma-las em objetos.

Vamos abrir a ferramenta levando em consideração a instalação do suporte a Java realizada. Iniciamos pela caixa input de atalho digitando marketplace. Vamos pesquisar na caixa de busca do marketplace o plugin Jboss Tools e instalar.





No meu caso a ferramenta já está instalada. Se não estiver então clique em Install e proceda com a instalação e reinicie a ferramenta.


Agora clique em File>>New>>Other e selecione na pasta JPA a opção New JPA Project.






Nós vamos criar um projeto somente para realizar a importação.

Defina na próxima janela o nome do projeto, selecione Target Runtime com a versão do Java e em configuration selecione Basic JPA Configuration. Clique em Finish.




Agora que o projeto foi criado clique com o botão direito sobre o projeto e selecione a opção JPA Tools>>Generate Entities from Tables. Irá aparecer uma nova janela, clique em add connections conforme a seta na imagem.




Selecione o bando de dados desejado, no meu caso é o MySQL.



Deverá abrir uma nova janela com o titulo New Connection Profile. Haverá um botão "+" para New Driver Definition.








Nesta nova janela eu selecionei a ultima versão do driver de conexão Mysql 5.1. O Plugin não encontrou a conexão, então foi necessário fazer o download do driver e deixar em uma pasta acessível. Na segunda aba, JAR List, foi necessário adicionar o arquivo .jar da pasta acessível. Na terceira aba, Properties, configuramos a conexão com o banco:






Agora é só proceder com Next,  Next, Selecione em Key Generator o campo Identity, Finish.



Selecione o Schema as tabelas deverão aparecer.







Selecione as tabelas e proceda até Finish.


Veja um objeto criado:

  1. package model;
  2.  
  3. import java.io.Serializable;
  4. import javax.persistence.*;
  5. import java.util.Date;
  6.  
  7.  
  8. /**
  9.  * The persistent class for the tb_prod database table.
  10.  *
  11.  */
  12. @Entity
  13. @Table(name="tb_prod")
  14. @NamedQuery(name="TbProd.findAll", query="SELECT t FROM TbProd t")
  15. public class TbProd implements Serializable {
  16.     private static final long serialVersionUID = 1L;
  17.  
  18.     @Id
  19.     @GeneratedValue(strategy=GenerationType.IDENTITY)
  20.     @Column(name="prod_id")
  21.     private int prodId;
  22.  
  23.     @Column(name="prod_desc")
  24.     private String prodDesc;
  25.  
  26.     @Temporal(TemporalType.TIMESTAMP)
  27.     @Column(name="prod_gendate")
  28.     private Date prodGendate;
  29.  
  30.     @Temporal(TemporalType.TIMESTAMP)
  31.     @Column(name="prod_moddate")
  32.     private Date prodModdate;
  33.  
  34.     public TbProd() {
  35.     }
  36.  
  37.     public int getProdId() {
  38.         return this.prodId;
  39.     }
  40.  
  41.     public void setProdId(int prodId) {
  42.         this.prodId = prodId;
  43.     }
  44.  
  45.     public String getProdDesc() {
  46.         return this.prodDesc;
  47.     }
  48.  
  49.     public void setProdDesc(String prodDesc) {
  50.         this.prodDesc = prodDesc;
  51.     }
  52.  
  53.     public Date getProdGendate() {
  54.         return this.prodGendate;
  55.     }
  56.  
  57.     public void setProdGendate(Date prodGendate) {
  58.         this.prodGendate = prodGendate;
  59.     }
  60.  
  61.     public Date getProdModdate() {
  62.         return this.prodModdate;
  63.     }
  64.  
  65.     public void setProdModdate(Date prodModdate) {
  66.         this.prodModdate = prodModdate;
  67.     }
  68.  
  69. }


Nenhum comentário:

Postar um comentário