22 Şubat 2016 Pazartesi

ResultSetMetaData Sınıfı

getColumnCount metodu
Select cümlesinden sonra kaç sütun olduğunu bulmak için kullanılabilir.
ResultSet resultSet = statement.executeQuery("Select * from TABLE_NAME");
ResultSetMetaData metaData = resultSet.getMetaData();
int colCount = metaData.getColumnCount();
getColumnName metodu
Şöyle yaparız.
ResultSetMetaData metaData = rs.getMetaData();
int columns = metaData.getColumnCount();
for (int i = 1; i <= columns; i++) {
  metaData.getColumnName(i);
}
getColumnType metodu
Şöyle yaparız.
int type = metaData.getColumnType(1);
if (type == Types.TIMESTAMP) {
  ...
} else if (type == Types.VARCHAR || type == Types.CHAR) {
  ...
}
getColumnTypeName metodu
Veritabanına mahsus sütun tipini string olarak alırız. Şöyle yaparız.
String typeName = metaData().getColumnTypeName(1);

12 Şubat 2016 Cuma

XSSFFont Sınıfı

constructor
Şöyle yaparız.
XSSFFont font = workbook.createFont();
font.setBold(true);
CellStyle nesnesine atama
Şöyle yaparız.
XSSFCellStyle style = ...;
XSSFFont font = ...;
...
style.setFont(font);

POI Excel İçin XSSFCellStyle Sınıfı

constructor
Örnek
Şöyle yaparız.
XSSFCellStyle headStyle = workbook.createCellStyle();
Örnek
Şöyle yaparız.
CellStyle style = workBook.createCellStyle();
setFillForegroundColor metodu
Hücrenin rengini verir.
Örnek
Şöyle yaparız.
style.setFillForegroundColor(new XSSFColor(new java.awt.Color(255, 255, 255)));
Örnek
Şöyle yaparız.
style.setFillForegroundColor(HSSFColor.GOLD.index);
setFillPattern metodu
Örnek
Şöyle yaparız.
style.setFillPattern(CellStyle.SOLID_FOREGROUND);
Örnek
Şöyle yaparız.
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
setFont metodu
Şöyle yaparız.
XSSFFont font = workbook.createFont();
font.setBold(true);
style.setFont(font);
Diğer
Hücreye Atama
Örnek
Şöyle yaparız.
XSSFCell cell = ...;
cell.setCellStyle(style);
Örnek
Şöyle yaparız.
CellStyle style = workBook.createCellStyle();
style.setFillForegroundColor(HSSFColor.GOLD.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

...

Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue(...);
headerRow.createCell(1).setCellValue(...);
headerRow.createCell(2).setCellValue(...);
headerRow.createCell(3).setCellValue(...);
headerRow.createCell(4).setCellValue(...);

for (int c = 0; c < 5; c++) {
 headerRow.getCell(c).setCellStyle(style);
}

Workbook Sınıfı

Giriş
Bu sınıf tamamen arayüzlere yönelik çalışıyor. XSSFWorkbook sınıfına da bakılabilir.
constructor
Şöyle yaparız.
InputStream is = new FileInputStream("test.xlsx");
Workbook wb = WorkbookFactory.create(is);
getSheetAt metodu
Şöyle yaparız.
Sheet sheet = wb.getSheetAt(0);

6 Şubat 2016 Cumartesi

Security Sınıfı

addProvider metodu
Şöyle yaparız.
Security.addProvider(...);



5 Şubat 2016 Cuma

Schema ve Validator Sınıfları

SchemaFactory Sınıfı
newInstance metodu
Factory şöyle yaratılır.
SchemaFactory f = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
Şöyle de yapabilirdik.
SchemaFactory factory = 
            SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
newSchema metodu
XSD dosyasını yüklemek için kullanılır. Dosyadan yüklemek için şöyle yaparız.
Schema schema = factory.newSchema(new File("/tmp/checkxsd.xsd"));
Stream'den yüklemek için şöyle yaparız.
InputStream xsd = ...;
Schema schema = factory.newSchema(new StreamSource(xsd));
String'den yükleme için şöyle yaparız.

Schema schema = factory.newSchema(new StreamSource(new StringReader(xsd)))
Schema Sınıfı
newValidator metodu
Şöyle yaparız.
Validator validator = schema.newValidator();
Validator Sınıfı
setErrorHandler metodu
Bir ErrorHandler sınıfı tanımlarız
public class LoggingErrorHandler implements ErrorHandler {

  @Override
  public void warning(SAXParseException exc) {..}

  @Override
  public void error(SAXParseException exc) {...}

  @Override
  public void fatalError(SAXParseException exc) throws SAXParseException {...}
}
Bu sınıfı Validator nesnesine veririz.
LoggingErrorHandler errorHandler = new LoggingErrorHandler();
validator.setErrorHandler(errorHandler);
validate metodu
Verilen XML'i doğrular.
Validator validator = schema.newValidator();
validator.validate(new StreamSource(new File("/home/my-pc/MyXMLFile.xml"))
Şöyle de yapabiliriz.
InputStream xml = ...;
Validator validator = schema.newValidator();
validator.validate(new StreamSource(xml));
Eğer hata varsa exception atar.
Validator validator = schema.newValidator();
Source source = new StreamSource(myXmlFile);

try {
    validator.validate(source);
    return null;
}catch (SAXException ex) {
    String validationMessage = ex.getMessage();
    return validationMessage;
}