12 Mart 2020 Perşembe

Lang3 DiffBuilder Sınıfı

Giriş
Şu satırı dahil ederiz. DiffBuilder bir DiffResult döner. DiffResult aslında Diff nesneleri listedir.
import org.apache.commons.lang3.builder.Diff;
import org.apache.commons.lang3.builder.DiffBuilder;
import org.apache.commons.lang3.builder.DiffResult;
Kullanım
- DiffBuilder nesnesini kurarken karşılaştırılacak nesneler verilir.
- append() metodu ile karşılaştırılacak alanlar eklenir.
- build() metodu ile DiffResult alınır

Örnek
Şöyle yaparız
DiffResult<Employee> diff = new DiffBuilder(emp1, emp2, ToStringStyle.SHORT_PREFIX_STYLE)
  .append("name", emp1.getName(), emp2.getName())
  .append("age", emp1.getAge(), emp2.getAge())
  .append("fulltime", emp1.getFulltime(), emp2.getFulltime())
  .build();
Örnek
Elimizde şöyle bir kod olsun.
@Data
public class PersonDTO implements Diffable<PersonDTO> {

  private String id;
  private String firstName;
  private String lastName;
  private List<AddressDTO> addresses;

  @Override
  public DiffResult diff(PersonDTO personDTO) {
    return new DiffBuilder(this, personDTO, SHORT_PREFIX_STYLE)
      .append("id", this.id, personDTO.getId())
      .append("firstName", this.firstName, personDTO.getFirstName())
      .append("lastName", this.lastName, personDTO.getLastName())
      .append("addresses", addresses, personDTO.getAddresses())
      .build();
  }
}
Şöyle yaparız
PersonDTO person1 = ...
PersonDTO person2 = ...

DiffResult diff = person1.diff(person2);

for(Diff<?> d: diff.getDiffs()) {
  System.out.println(d.getFieldName() 
    + "= FROM[" + d.getLeft() + "] TO [" + d.getRight() + "]");

}

5 Mart 2020 Perşembe

Lang3 RandomUtils Sınıfı

Giriş
Şu satırı dahil ederiz.
import org.apache.commons.lang3.RandomUtils;
nextInt metodu
Şöyle yaparız.
RandomUtils.nextInt(11, 20)
nextLong metodu
Örnek
Şöyle yaparız.
long generatedId = RandomUtils.nextLong()
Örnek
Şöyle yaparız
long rand = RandomUtils.nextLong(2000, 10000);

4 Mart 2020 Çarşamba

Camel DefaultExchange Sınıfı

Giriş
Şu satırı dahil ederiz.
import org.apache.camel.Exchange;
import org.apache.camel.support.DefaultExchange;
import org.apache.camel.impl.DefaultCamelContext;
Maven
Şu satırı dahil ederiz
<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-core</artifactId>
  <version>2.13.0</version>
</dependency>
constructor
Şöyle yaparız
Exchange exchange = new DefaultExchange(new DefaultCamelContext());

3 Mart 2020 Salı

POI Excel CellStyle Arayüzü

setDataFormat metodu
Örnek
Şöyle yaparız.
CellStyle doubleStyle = workbook.createCellStyle();
doubleStyle.setDataFormat(workbook.createDataFormat().getFormat("#,##0.#######"));
Örnek
Şöyle yaparız.
CellStyle style = wb.createCellStyle(); 

CreationHelper createHelper = wb.getCreationHelper(); 
short dateFormat = createHelper.createDataFormat().getFormat("yyyy-MM-dd-hh.mm.ss"); 
style.setDataFormat(dateFormat);

1 Mart 2020 Pazar

MutableInt Sınıfı

increment metodu
Şöyle yaparız.
MutableInt counter = new MutableInt();
counter.increment();