Hibernate ORM i J2EE: Znaczenie i różnica między atrybutem CASCADE i INVERSE na definicji relacji

Nieznajomość znaczenia atrybutów cascade oraz inverse nie uniemożliwia korzystania z Hibernate (znanego ORM dla J2EE). Sprawi jednak, że nieświadomie będziemy ofiarą mniejszej wydajności pracy naszej aplikacji z powodu zbędnych, dodatkowych zapytań do bazy danych.

Czytaj całość...

JSF2: Managed Bean scopes – Czas życia Zarządzanych Ziaren

JSF bardzo ułatwia tworzenie aplikacji internetowych w wygodny i szybki sposób. Aby móc w pełni wykorzystać dobrodziejstwa płynące z JSF, trzeba jednak znać czas życia Ziarna, aby uniknąć zbytniego obciążenia serwera przez niepotrzebne wywołania oraz aby uniknąć rozczarowania poprzez NULL zamiast referencji do któregoś z nieserializowanych obiektów.

Czytaj całość...

Wyrażenia regularne (regex) w Java: operatory zachłanne (greedy) vs. leniwe (lazy, reluctant)

O wyrażeniach regularnych pisać można wiele, a niewiele osób chce o tym czytać, gdyż każdy albo umie albo myśli, że umie tyle ile mu potrzeba.

Jest jednak kilka ciekawych faktów związanych z wyrażeniami regularnymi (nie koniecznie tylko w Javie), o których nie każdy wie, a powinien – taką właśnie kwestią jest podział na operatory zachłanne i leniwe.

Czytaj całość...

Odpowiednik w Java funkcji explode() z języka PHP

W języku PHP istnieje niezwykle przydatna funkcja explode(), która zamienia string na tablicę string’ów dzieląc go w miejscu wystąpienia określonego znaku. Zilustruje to poniższy przykład.

< ?php 
    $sString = ":aaa:111::bbb:";
    print_r( explode(":", $sString) );
?>

Czytaj całość...

Java i przekazywanie parametrów (argumentów) przez linię poleceń

Jeżeli chodzi o Javę, to mamy 2 sposoby przekazania argumentów do aplikacji z poziomu linii poleceń. Możemy to wykonać poprzez znane z innych języków argumenty linii poleceń oraz możemy to zrobić przez tzw. atrybuty (z ang. properties).

Najpierw przykładowe wywołanie przykładowej klasy z przekazanymi zarówno argumentami i atrybutami.

java -Dprop1=lorem -Dprop2=”lorem ipsum” PropApp dolor „sit amet”

Czytaj całość...

Zmienne środowiskowe, a Java – odczytywanie zmiennych środowiskowych

Kwestia odczytu zmiennych środowiskowych w Javie, nie jest tak oczywistą sprawą, jak by się mogło wydawać. Wynika to z tego, iż Java jest platformą wielo-systemową, a zmienne środowiskowe nie należą, wbrew pozorom, do standardu przestrzeganego w każdym systemie operacyjnym. Dodatkowo, dochodzi kwestia rozmiaru liter w nazwach zmiennych środowiskowych oraz nawet samego nazywania poszczególnych zmiennych środowiskowych w różnych wersjach OSów.

Czytaj całość...

org.apache.commons.lang – Instalacja i użycie Apache Commons Lang na przykładzie klasy WordUtils i NetBeans

Apache Commons to zbiór niezwykle przydatnych klas, które rozszerzają zbiór tych, które standardowo należą do JDK. Apache Commons składa się z wielu pakietów (package), a jednym z nich jest org.apache.commons.lang. Pakiet ten składa się z tylko jednej klas o nazwie WordUtils, która dostarcza kilku przydatnych metod do manipulowania stringami.

Czytaj całość...

Java i SimpleDateFormat – aktualne czas i data, a strefy czasowe

Java API oferuje kilka klas, które mają pomóc programiście w obchodzeniu się z datami, godzinami oraz strefami czasowymi. Istnieje Date, którego większość metod została zdeprecjonowania, gdyż klasa ta miała problemy z obsługą stref czasowych i na chwilę obecną służy tylko jako klasa enkapsulująca timestamp, czyli liczby milisekund od początku ery UNIXów, czyli 1970 roku licząc czasem UTC/GMT. Istnieje klasa Calendar, która jest właśnie następcą tej pierwszej i oferuje ona cały zestaw funkcjonalności związanych z datami/godzinami z uwzględnieniem stref czasowych. Jest jednak o wiele wygodniejszy sposób na uwzględnienie stref czasowych niż posługiwanie się klasą Calendar – znana wszystkim klasa SimpleDateFormat również posiada bezpośrednią obsługę stref czasowych.

Czytaj całość...

Instalacja i konfiguracja Apache Ant na Windows oraz przykładowy plik build.xml

Aby ściągnąć Apache Ant wchodzimy na oficjalną stronę projektu

http://ant.apache.org/bindownload.cgi

i klikamy odpowiedni link. W czasie pisania niniejszego artykułu, linkiem do najnowszej wersji w formacie ZIP było

http://www.idg.pl/mirrors/apache//ant/binaries/apache-ant-1.8.3-bin.zip

Czytaj całość...

Błąd „The JDK is missing and is required to run some NetBeans modules” podczas uruchamiania NetBeans’a

Podczas uruchamiania platformy NetBeans w edycji przeznaczonej dla języka Java lub po uaktualnieniu platformy o moduły do obługi języka Java, może nasz spotkać przykra niespodzianka. Okazać się może, że zamiast uruchomionej aplikacji, naszyn oczom ukaże się okno dialogowe z błędem następującej treści.

The JDK is missing and is required to run some NetBeans modules

Czytaj całość...