Consultation d`une base de données sur un téléphone portable

publicité
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.
Rappel
L'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 enregistrements
addRecord, 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 enregistrements 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 Eclipse
Il 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émonstration
Cré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 la
gestion des tris ou des filtres des résultats
obtenus.
• l’usage de RMS pour la persistance des
données, reste suffisant pour des application
mobiles.
Merci pour votre attention
Téléchargement