consultation bd rmseleuldj/cours/sys_emb/bd_j2me.pdf · title: microsoft powerpoint - consultation...
TRANSCRIPT
Consultation d’une base de
données sur un téléphone portable
(sous J2ME)
Réalisé par: Eddakaki Moncef
Bourhaleb Mohammed
Encadré par : Mr.Eleuldj
PLAN
-Introduction
-Rappel
-Présentation des APIs disponibles pour la persistance des données :
• RMS(Record Management System)KXML…
-Démonstration
-Conclusion
Introduction• le marché du téléphone portable est en pleine expansion avec
plus de 35% de croissance par année.
• Ces téléphones sont d’année en année plus puissants, plus aptes à remplir des tâches qui étaient précédemment dévolues à des PDA, voire des ordinateurs portables.
• J2ME offre l’avantage de la portabilité et de la réutilisation de
composants Java.
RappelL'API du CLDC (Connected Limited Device Configuration)se compose de quatre packages :
• java.io : classes pour la gestion des entrées/sorties par flux
• java.lang : classes de base du langage java :String…
• java.util : classes utilitaires notamment pour gérer les collections, la date et l'heure, ...
• javax.microedition.io : classes pour gérer des connections génériques
Rappel (Suite)MIDP est un profile standard qui n'est pas défini pour une machine particulière mais pour un ensemble de machines embarquées possédant des ressources et une interface graphique limitée.
Rappel (Suite)L'API du MIDP se compose des API du CDLC et de trois packages essentiels:
• javax.microedition.midlet : cycle de vie de l'application
• javax.microedition.lcdui : interface homme machine
• javax.microedition.rms : persistance des données
KXML, RMS ?• KXML permet de pouvoir gérer des documents XML au
sein du code J2ME
• prévu pour s'adapter dans le JAVA KVM
• Très léger (api de taille petite).
RMS• RMS (Record Management System) est
une API de stockage persistent
• RMS (J2ME) SGBD ( autres plateformes )
• méthodes de géstion des Records store
RMS • openRecordStore et closeRecordStore
• listRecordStore.
• deleteRecordStore
• Les opérations de base sur les enregistrementsaddRecord, deleteRecord ,getRecord, setRecord, getRecordSize
RMS• quelques particularités :
RecordEnumeration(lister tous les enregistrements du Record store)
RecordFilter(définir un filtre )
RecordComparator(doit être implémentée pour que des enregistr-ements puissent être comparés et donc triés )
RMS• RecordFilter• public boolean matches(byte[] arg0)
{String enregistrement = new String(arg0);[…]if(enregistrement.equals(AgendaDemo.type)){
return true;}else{
return false;}
}
RMS• RecordComparator• public int compare(byte[] arg0, byte[] arg1)
{String prenom1 = new String(arg0);String prenom2 = new String(arg1);[…]if(prenom1.compareTo(prenom2)<0){
return PseudoComparator.PRECEDES;}else if(prenom1.compareTo(prenom2)>0){
return PseudoComparator.FOLLOWS;}else{
return PseudoComparator.EQUIVALENT;}
}
RMS
• getNumRecords• getName• getNextRecordID
J2ME sous EclipseIl faut, en plus du Wireless Toolkit, disposer du plugin eclipseme permettant :
• La Création d’un Projet Milet Suite
• La Création d’une Midlet
• support de Eclipse pour lancer un émulateur J2ME
J2ME sous Eclipse(Suite)
DémonstrationCréation d’une Midlet Suite : RDVAgenda comportant deux
Midlets :
• L’une permettant la saisie de la date et de l’heure du RDV.
• L’autre permettent d’afficher la liste des RDV.
Conclusion
• même si les possibilités du RMS sont relativement simples, il est possible d’obtenir des résultats avancés, comme lagestion des tris ou des filtres des résultatsobtenus.
• l’usage de RMS pour la persistance desdonnées, reste suffisant pour des application mobiles.
Merci pour votre attention