Java 6 SE kommt bereits mit
- Derby. Funktionen für Stammdatencache etc find also bereits vorhanden.
- JNLP (WebStart)
- Scripting Support
- Remote Monitoring der JVM ist über Netzwerk bereits vorhanden (Java Monitoring an Management Console)
- JPA kann vom Glassfish-Projekt verwendet werden (2 jar’s). Die direkte nutzung von JDBC wird nicht mehr benötigt
- java.util.logging reicht für clientseitiges Logging aus.
- java.util.concurrent: ein einfacher Thread-Pool
- java.rmi: Remothe Method Invocation: einfaches Kommunikationsprotokoll für Client-Server-Kommunikation
- java.util.ServiceLoader – sucht nach implementierungen eines Interfaces (from meta-inf/services) -> eigenen Wrapper für ServiceLoader bauen (S.13)
- java.beans.XMLEncoder und java.beans.XMLDecoder – ein einfacher Web zu persistenten Beans! Allerdinsg sind keine Beziehugen zwischen Objekten möglich
- java.util.preferences – Zurgiff auf Windows Registry
JMX
- wurde entwickelt um Management- und Monitoring-Funktionen anzubieten
- ist in Java 6 SE enthalten. JSR 3 stammt genu genommena us dem Ahr 2001…
- beziet sich auf ein zu definierendes Objekt, weches Daten veröffentlicht. Dieses muss „nur“ registriert werden…
- Registrierung im MBeanServer
- Achtung: eine MBan darf nur ein mal registriert sein, ansonsten wird eine Exception ausgelöst
RMI
- Remote Method Invokation
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface HelloWorldService extends Remote{
public String helloFromServer(String greeting) throws RemoteException;
}
- Server benötige eine Klasse mit main Methode (aslo qusi der Server)
- Client: fragt über Naming.lookup(„rmi://adress“) Service ab
Scripting Integration
- Vorteile: kann schneller sein in Entwicklungszeit und Ausführung
- Fluid Kernel: Fragmente können dynamisch nachgeladen vwerden – während der Laufzeit!
- JSR-233 (scripting fo the Java Platform)
- Zugriff von den Scriptsprachen auch die Java-Libs möglich!
- siehe Package javax.scripting
ScriptEngineManager engineManager = new ScriptEngineManager();
scriptEngine = engineManager.getEngineByName(„JavaScript“);
- …
- in Java 6: JavaScript hat zur Zeit eine wesentlich höhere Ausführungsgeschwindigkeit als Groovie (etwa Faktor 10!)
JPA
- vollkommener Verzicht auf DAO’s!
- DAO’s nur für Stored Procedures zwingend notwendig
- Eclipse DALI zur generierung von JPA aus RDBs
SWING
- Andere Themes / Layout Manager verwenden
- Matisse GUI Builder
- großer Performancegewinn in Java 6! Außerdem: Java Swing erhält eine native Unterstützung in Windows Vista, was die Ausführungsgeschwindigkeit nochmals wesentlich erhöhen wird!
…
thanks to Adam Bien! (adam-bien.com)