sábado, 27 de agosto de 2011

Criação de Componente Personalizado NetBeans

Boa Noite

 - Bem para quem nao esta acostumado com a Ide netbeans, vai ver muita gente com dor de cabeça por que nao consegue personalizar a criação do  componente durante a criação, pois dizem que o codigo esta protegido... isso e meia verdade, vou usar como exemplo um JTable.


-Clicando no botao dentro do Circulo irá abrir a tela abaixo:

-Como podem ver digitei o codigo personalizado, que no caso utilizei um objeto da classe DefaultTableModel , detalhe essa classe tem o construtor sobrecarregado passei um Array com o Nome de cada Coluna no primeiro argumento e no segundo argumento um inteiro que será o total de linhas a iniciar esse modelo, notem como o codigo ficou na Ide apos essa inserção:


Observe a Linha 113.... como pode ver o codigo esta na parte que teoricamente nao se pode mexer bem simples, abraços.



quinta-feira, 5 de maio de 2011

Inserindo Dados Tipo String em um JDataChooser

Bom dia,

Mais uma vez, apenas para eu não esquecer ^^', abaixo a forma que utilizo para passar dados de por exemplo um JTable(Object), para um JDataChosser.

  1. //Para Realizar essa conversao e necessario ter um bloco Try
  2. try {
  3. //Variavel temporaria Tipo Date receber um Data em Formato Simples, o pattern foi especificado no arumento,  e depois informado a Data que esta no JTable.
  4. Date temp = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm").parse(tabela.getValueAt(tabela.getSelectedRow(), 1).toString())
  5. //insere a variavel temporaria NO JDATACHOOSER;
  6. JDATACHOOSER.setDate(temp);
  7. }catch (ParseException parseException)//Exceção do Tipo parse
  8.  {
  9.        JOptionPane.showMessageDialog(rootPane, "Não foi possivel Recuperar a Data.\n"+parseException);
  10. }

quarta-feira, 20 de abril de 2011

Mapeamento one-to-many Hibernate.

Boa Tarde


Pois, bem vou dividir como resolver um pequeno problema que tive que levou algumas semanas auhaua, bem apos ler em varios foruns, resolvi ir ler a documentação e fazer o tutorial disponivel na documentação, bem nao obtive muito sucesso, eu nao conseguiua salvar as coleções, sempre aparecia uma execessao , do tipo NullPointerException a qual na minha opniao e um saco, se alguem tentar traduzir saberá que se refere a algo que nao foi instanciado, nao foi criado nao tem referencia, ate que eu me recordei de uma pequena coisinha a se fazer quando se quer add dados a coleção diretamente a classe, abaixo o codigo.


  1. public class Parent {
  2.     private int id;
  3.     private String  nome;
  4.     private Set<Childrem> children;  
  5.     public int getId() {
  6.         return id;
  7.     }
  8.     public void setId(int id) {
  9.         this.id = id;
  10.     }
  11.     public String getNome() {
  12.         return nome;
  13.     }
  14.     public void setNome(String nome) {
  15.         this.nome = nome;
  16.     }
  17.     public Set<Childrem> getChildren() {
  18.         return children;
  19.     }
  20.     public void setChildren(Set<Childrem> children) {
  21.         this.children = children;
  22.     }

  1. public class Childrem {
  2.     private Parent parent_id;
  3.     private int id;
  4.     private String nomeChildrem;
  5.     public Childrem() {
  6.     }        
  7.     public Parent getParent_id() {
  8.         return parent_id;
  9.     }
  10.     public void setParent_id(Parent parent_id) {
  11.         this.parent_id = parent_id;
  12.     }
  13.     public String getNomeChildrem() {
  14.         return nomeChildrem;
  15.     }
  16.     public void setNomeChildrem(String nomeChildrem) {
  17.         this.nomeChildrem = nomeChildrem;
  18.     }
  19.     public int getId() {
  20.         return id;
  21.     }
  22.     public void setId(int id) {
  23.         this.id = id;
  24.     }
  25. }

Acredito que qualquer um saiba que ai estao as duas classes agora o mapeamento.


  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
  3. <hibernate-mapping>
  4.   <class name="Classes.Parent" >
  5.     <id name="id" >
  6.         <generator class="native" />
  7.     </id>
  8.     <property name="nome"/>
  9.     <set name="children" inverse="true"  cascade="all-delete-orphan">
  10.         <key column="parent_id" not-null="true"/>
  11.         <one-to-many class="Classes.Childrem" />
  12.     </set>
  13.   </class>
  14.   <class name="Classes.Childrem"><!--Classe Childrem-->
  15.       <id name="id" >
  16.           <generator class="native"  /><!--Autoincrement-->
  17.       </id>
  18.      <property name="nomeChildrem" />
  19.      <many-to-one  name="parent_id" column="parent_id" notnull="true" /><!--RELACIONAMENTO EM CHIDREM-->
  20.   </class>
  21. </hibernate-mapping>


Mas a Sacada nao esta ai, e sim em como vai declarar o Set, veja abaixo a classe.


  1. Parent p = new Parent();
  2. Childrem c = new Childrem();
  3. Childrem b = new Childrem();
  4. p.setChildren(new HashSet<Childrem>());//Aqui esta new HashSet, depois so add.
  5. p.getChildren().add(b);
  6. p.getChildren().add(c);
  7. session.save(p);
  8. session.flush();
   

quinta-feira, 14 de abril de 2011

iReport 4.0.1 - Quais os jars necerrarios ?

Boa Tarde.


Bem bem, nem todos sabem quais são os jars necessarios para o funcionamento de um relatorio feito no iReport dentro de uma aplicação, bem como eu nao uso graficos, apenas o sulficiente como crosstable, subreports e mais alguma coisinha vo postar abaixo o nome e o link de Cada uma dos Jars necessarios. (Eu sempre esqueço quais sao auhaahua).


jasperreports-4.0.1,jar
commons-logging-1.1.jar
commons-digester-1.7.jar
iText-2.1.7.jar
poi-3.6.jar