quarta-feira, 30 de julho de 2014

Inserir código fonte em uma postagem de blog


Utilize a ferramenta abaixo:

http://codeformatter.blogspot.com.br/2009/06/about-code-formatter.html

Java: Converter Tif em Pdf

O código abaixo converte todos os TIFs de um determinado diretório em PDFs.

 import java.io.File;  
 import java.io.FileOutputStream;  
 import com.itextpdf.text.Document;  
 import com.itextpdf.text.Image;  
 import com.itextpdf.text.PageSize;  
 import com.itextpdf.text.Rectangle;  
 import com.itextpdf.text.pdf.PdfContentByte;  
 import com.itextpdf.text.pdf.PdfWriter;  
 import com.itextpdf.text.pdf.RandomAccessFileOrArray;  
 import com.itextpdf.text.pdf.codec.TiffImage;  
 public class TifToPdf {  
      public static void main(String[] args) {         
   int arquivosConvertidos = 0;  
   File[] arquivos = null;    
   File file = new File("C:\\SCAN\\");   
   arquivos = file.listFiles();   
   String tiff;  
   String pdf;  
   int i = 0;   
   for (int j = arquivos.length; i < j; i++) {  
     tiff = arquivos[i].getAbsolutePath();  
     pdf = tiff.substring(0, tiff.lastIndexOf('.') + 1) + "pdf";  
     Document document = new Document(PageSize.LETTER, 0, 0, 0, 0);  
     try {  
      PdfWriter writer = PdfWriter.getInstance(document,new FileOutputStream(pdf));  
      int pages = 0;  
      document.open();  
      PdfContentByte cb = writer.getDirectContent();  
      RandomAccessFileOrArray ra = null;  
      int comps = 0;  
      try {  
        ra = new RandomAccessFileOrArray(tiff);  
        comps = TiffImage.getNumberOfPages(ra);  
      }   
      catch (Throwable e) {  
        System.out.println("Exceção em " + tiff + " "  
         + e.getMessage());  
        continue;  
      }  
      System.out.println("Processando: " + tiff);  
      System.out.print("página (s): ");  
      for (int c = 0; c < comps; ++c) {  
        try {  
         Image img = TiffImage.getTiffImage(ra, c + 1);  
         if (img != null) {  
          System.out.print(c + 1 + " ");  
          img.scalePercent(7200f / img.getDpiX(), 7200f / img.getDpiY());  
          document.setPageSize(new Rectangle(img.getScaledWidth(), img.getScaledHeight()));  
          img.setAbsolutePosition(0, 0);  
          cb.addImage(img);  
          document.newPage();  
          ++pages;  
         }  
        }   
        catch (Throwable e) {  
         System.out.println("Exceção " + tiff + " página "  
          + (c + 1) + " " + e.getMessage());  
        }  
      }  
      ra.close();  
      document.close();  
      }   
      catch (Throwable e) {  
        e.printStackTrace();  
      }  
           ++arquivosConvertidos;  
           System.out.println("");  
      System.out.println("Arquivo convertido: " + pdf);  
     }  
        System.out.println("Conversão finalizada!");  
        System.out.println("Total de arquivos: " + arquivos.length);  
        System.out.println("Arquivos convertidos: " + arquivosConvertidos);  
   }  
 }  

quinta-feira, 17 de julho de 2014

Hibernate: java.sql.dataTruncation

Esse erro ocorre quando a informação que estamos tentando inserir em determinada coluna é maior do que o tamanho da coluna.

Ex:

CodigoVarchar(3)

A exceção será lançada ao tentar inserir o valor (4000).

quarta-feira, 16 de julho de 2014

Java: Ordenar coleção por múltiplas colunas


public class Licenca implements Serializable, Comparable<Licenca>{
@OneToOne
private Patrimonio patrimonio;

@Override
public int compareTo(SoftwareLicenca o) {
int compareResult = -1;
int compareResult1 = -1;

                // Valida
if( (patrimonio != null && patrimonio.getUsuario().getUnidadeOperacional()) &&
(o != null &&o.getUsuario().getUnidadeOperacional())  ){

compareResult = patrimonio.getUnidadeOperacional().getNome().compareTo(o.getPatrimonio().getUnidadeOperacional().getNome());
compareResult1 = patrimonio.getUsuario().getNome().compareTo(o.getPatrimonio().getUsuario().getNome());

return 0 == compareResult ? compareResult1 : compareResult;
}
return compareResult;
}

}


// Ordenando
public List<Licenca> getLicencas() {
ArrayList<Licenca> l = new ArrayList<Licenca>();
if(licencas != null){
l.addAll(this.licencas);
Collections.sort(p);
}
return p;

}

segunda-feira, 14 de julho de 2014

Hibernate: org.hibernate.AnnotationException: No identifier specified for entity

Para resolver o problema adicione a anotação @Id.

@Id
private Integer id;

quinta-feira, 10 de julho de 2014

Java: Exemplos de utilização da classe Calendar

Calendar cal = Calendar.getInstance();

int day = cal.get(Calendar.DATE);
int month = cal.get(Calendar.MONTH) + 1;
int year = cal.get(Calendar.YEAR);
int dow = cal.get(Calendar.DAY_OF_WEEK);
int dom = cal.get(Calendar.DAY_OF_MONTH);
int doy = cal.get(Calendar.DAY_OF_YEAR);

System.out.println("Current Date: " + cal.getTime());
System.out.println("Day: " + day);
System.out.println("Month: " + month);
System.out.println("Year: " + year);
System.out.println("Day of Week: " + dow);
System.out.println("Day of Month: " + dom);
System.out.println("Day of Year: " + doy);

terça-feira, 8 de julho de 2014

Hibernate: Criteria com 3 OR

Criterion c1 = Restrictions.eq("indimportador", "S");
Criterion c2 = Restrictions.eq("indexportador", "S");
Criterion c3 = Restrictions.eq("indagente", "S");
c.add(Restrictions.or( Restrictions.or(c1,c2), c3) );