• Aucun résultat trouvé

[PDF] Java et le Web support de cours complet avec exemples d’application | Cours java

N/A
N/A
Protected

Academic year: 2021

Partager "[PDF] Java et le Web support de cours complet avec exemples d’application | Cours java"

Copied!
23
0
0

Texte intégral

(1)

J a va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

Jav

a

e

t

le

W

e

b

.

Thè m e : co de m ob ile e t le s nou ve lle s a rch it e ct u re s app lica ti ve s. q uo i? p ou r quo i fa ir e? co m m en t fa ir e? m o ts-cl é s: - app le t, se rvl e t, JD B C , R M I, C o rba , - p ro g ra m m a ti o n d ist ri b u ée

(2)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

c

od

e

m

o

b

il

e

.

dé fi n it ion : p rog ra m m e co m p ilé (code ), po rt ab le e t t ran sp o rt ab le tr an sp o rt ab le : lie u x d e st o ckage e t d ›e xé cu ti on d iff é re n ts po rt a b le : indépe n dan t de la p la te -f o rm e . P o u r quo i fa ir e? - ne p lu s gé re r le s c on fi gu ra ti on s de s po st e s cl ien ts, - d ist ri bue r f a ci le m e n t le s app lica ti on s e t le u rs v e rsi on s su c ce ss ive s. Ja va = code m ob ile + sé cu ri té .

(3)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

a

rc

h

it

e

c

tu

res a

pp

li

ca

ti

ve

s

.

co m m en ta ir e s: a rch it e ct u re s c la ssi que s (J a va n o n n é c e ssa ir e ) T yp e A ct iv it é su r le se rv eu r A ct iv it é su r le cli en t D es cr ip ti on 0 D on née s T ra ite m en ts P ré sen ta tio n se rv eu r : a pp lic at io n Ja va av ec J D B C cl ie nt : v ia te lne t pa r ex em pl e 1 D on née s T ra ite m en ts P ré sen ta tio n P ré se nt at io n se rv eu r : a pp lic at io n Ja va av ec J D B C cl ie nt : na vi ga te ur ( do cu m en ts san s ap pl et ) 2 D on née s T ra ite m en ts P ré se nt at io n se rv eu r : s er vl et av ec J D B C cl ie nt : na vi ga te ur ( do cu m en ts av ec ap pl et ) ex em pl e : n et w or k co m pu te r T ab le 1 T y p o lo g ie d e la p a rt it io n d e s a c ti vi s

(4)

va e t le W e b A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

n

o

u

ve

ll

es a

rc

h

it

ec

tu

re

s

a

p

p

li

c

a

ti

v

es

.

T yp e A ct iv it é su r le se rv eu r A ct iv it é su r le cli en t D es cr ip ti on 3 D on née s T ra ite m en ts T ra ite m en ts P ré se nt at io n se rv eu r : s er vl et av ec J D B C cl ie nt : na vi ga te ur ( do cu m en ts av ec ap pl et ) ex em pl e : n et w or k co m pu te r 4 D on née s T ra ite m en ts P ré se nt at io n se rv eu r : p ur se rv eu r de don née s cl ie nt : na vi ga te ur ( ap pl et + JD B C en lo ca l) ex em pl e : n et w or k co m pu te r 5 D on née s D onn ée s T ra ite m en ts P ré se nt at io n se rv eu r : p ur se rv eu r de don née s cl ie nt : na vi ga te ur ( ap pli ca tion + JD B C ) 6 D onn ée s T ra ite m en ts P ré se nt at io n A pp lic at ion ou a pp le t J av a su r le cli en t JD B C en lo ca l 7 D on née s T ra ite m en ts P ré sen ta tio n D onn ée s T ra ite m en ts P ré se nt at io n to ut : s er vl et, ap pl et, app lic at io ns , J D B C , R M I T ab le 2 T y p o lo g ie d e la p a rt it io n d e s a c ti vi s

(5)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

P

ili

e

rs

d

e

la

p

ro

g

ra

m

m

a

ti

o

n

d

is

tr

ibu

ée

B a s e d e do n nées : d ro it s d ›a ccè s, ind e xa ti on s, in te rr o ga ti on s, t ra n s a ct ion s. H y p e rt ex tes (W eb ) : in te rf a ce de p ré se n ta ti o n e t d e n a v iga ti on en tr e le s d o cu m e n ts. C o d e m ob il e Ja v a : co m po rt e m en t a sso ci é à de s d o cu m e n ts. p ou r quo i fa ir e? ... de u x e xe m p le s

(6)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 1

:

tr

ibu

n

a

l

d

é

ra

l.

con te xt e : - 5500 ca s tr a it é s c ha q ue a nnée , - st o ckag e da n s un e B D te xt ue lle B AS IS p lu s, - 30 juge s and cl e rcs o n t a ccè s à ce tt e ba se , - 250 e m p lo yé s (15 in fo rm a ti ci en s) , - dé ve lo p pe m e n t d ›app lica ti on s en A da83 /M o ti f1 .2 , - fu tu r p ro c he : c hange r de p la te -f o rm e se rveu r. dé ci si on : é cr ir e le s app lica ti on s le + p o s si b le in dépend e m m en t d u m a té ri e l. sou rce : h tt p :/ /j a va .s u n .co m /p rod u c ts/ jd k/ rm i/ e x a m p le s .h tm l

(7)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 1

:

tr

ibu

n

a

l

d

é

ra

l.

dé m a rr age du p ro je t : débu t 1 9 96 , - cli e n t W WW p ou r a ccéde r à la b a se , - R M I pa s e n co re là , - don c C G I/ Fo rm s. déb u t 1997 . - AP I R M I a rr ive , - au tr e s type s de cl ien ts en vi sagé s, - R M I : « m idde w a re » en tr e la B D e t le s c lien ts, - Ja va N a ti ve In te rf a ce e st u ti lisé pou r f a ir e u n p ilo te d ›a ccè s à la BD . sou rce : h tt p :/ /j a va .s u n .co m /p rod u c ts/ jd k/ rm i/ e x a m p le s .h tm l

(8)

va e t le W e b A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 1

:

tr

ibu

n

a

l

d

é

ra

l.

S e rv e u r BA S IS p lu s ge st io n na ir e d ›a cc è s C li e n t 1 ) de m a nde de c o nne xi o n co nne xi o n 2 ) 3 )ad re sse 4 ) a d re sse de la conne xi on ap p lica ti o n 5 ) a ccè s pa r R M I sou rce : sc h é m a é la bo ré d ›a p rè s h tt p :/ /j a v a .sun .c o m /p ro du ct s/ jd k /rm i/ e xa m p le s. h tm l

(9)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 1

:

c

o

m

m

e

n

ta

ir

e

s

.

- dé p lo ie m en t pa r in te rne t de s app lica ti o n s , - f a ci lit é de m ise en o eu vr e (p ro to en deu x jou rs) , - R MI e t JN I son t u ti lisé s, - d ist ri bu ti o n du code : e n p a rt ie su r le cl ien t, e n p a rt ie su r le se rveu r ( pa r R MI a ccéd e r au x donnée s).

(10)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

g

e

s

ti

on

d

e

n

o

tes

d

e

fr

a

is

sou rce : h tt p :/ /j a va .s u n .co m /m a rke ti n g /co lla te ra l/ ja v a rm i. h tm l con te xt e (f ict if ) : g e st ion de s n o te s de fr a is de l› en tr e p ri s e e n fon ct ion d ›u p o lit iq ue q u i peu t é vo lue r. app lica ti o n d ist ri bué e : cl ien t : in te rf a ce g ra p h iqu e de sa isi e de s n o te s de fr a is, co m m un ica ti o n a ve c le se rveu r vi a R M I. se rveu r : st o cke le s no te s d e fr a is d a n s u n e B D v ia JDBC . --> co n cep ti on cl a ssi q ue m u lt i-r ang s.

(11)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

g

e

s

ti

on

d

e

n

o

tes

d

e

fr

a

is

C o m m e n t an ti ci p e r d e s nou ve lle s po lit ique s d e no te s d e fr a is au n iv e au d u d e si gn de l› app lica ti on? A rch it e ct u re s po ssi b le s : a ) in st a lle r la po lit ique dan s le cl ien t, --> p rob lè m e d e m ise -à -j ou r de s c lien ts b ) le se rve u r vé ri fi e chaque en tr é e a jou té e à une no te de fr a is, e t ce re la ti ve m en t à la po lit iqu e a ct ue lle . --> p rob lè m e de c ha rge d u se rveu r e t de pe rf o rm an ce c) le se rveu r vé ri fi e chaqu e no te de f ra is, au m o m en t o ù e e st sou m ise , e t ce re la ti ve m en t à la po lit ique a ct ue lle . --> p rob lè m e d u tr a it e m en t p a r lo ts.

(12)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

g

e

s

ti

on

d

e

n

o

tes

d

e

fr

a

is

C o m po rt e m en t m ob ile : P o ssi b ili té vi a R M I, d e d é p la ce r d e s ob je ts d ›une a pp lica ti on d ist ri buée du c lie n t ve rs le se rveu r e t ré ci p roq u e m e n t. U ti lisa ti on dan s l› e xe m p le : L a p o lit iq u e (a ct ue lle o u fu tu re ) d e g e st io n d e s no te s de fr a is e st im p la n tée su r le se rveu r p a r un ob je t. C e t ob je t e st e n v o yé a u cl ien t lo rsq u ›i l s a isi t u ne n o te de fr a is.

(13)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

g

e

s

ti

on

d

e

n

o

tes

d

e

fr

a

is

C a s d ›u sage : 1 ) l› u ti lisa teu r e st p rê t à sa isi r une no te de fr a is, 2 ) le cl ien t d e m a n de u n o b je t q u i im p lan te la po lit ique cou ra n 3 ) le se rveu r lu i en vo ie u n e co p ie de l› im p lan ta ti on de l› o b je t. C o m m e n ta ir e s : - La p o lit iq ue d e g e st io n d e s no te s de fr a is e st tou jou rs d yna m ique . - P ou r la ch ange r, il su ff it de : 1 ) im p lan te r u n e n o u ve lle p o lit iq u e , 2 ) l› in st a lle r su r le se rveu r, 3 ) con fi gu re r le se rveu r po u r r e tou rne r d e s ob je ts de ce n ou veau typ e .

(14)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

g

e

s

ti

on

d

e

n

o

tes

d

e

fr

a

is

In té rê ts d e ce tt e app ro che : - La vé ri fi ca ti o n d e la p o lit iq u e s› e ff e ct ue su r le cl ien t. Il s so n t a ve rt is au p lu s tô t de le u rs e rr eu rs. - Il ne fau t n i a rr ê te r le s c lien ts, n i l e s m e ttr e à j o u r. L e s o b je ts s o n t m is-à -j o u r lo rsque le cli e n t en a b e so in . - P a s de su rcha rge du se rve u r pou r d e s vé ri fi ca ti on s qu p eu ven t ê tr e lo ca le s. - Fa ci lit é d e ge st io n de s é vo lu ti on s (si e lle s o n t é té a n ti ci pée s)

(15)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 2

:

im

p

la

n

ta

ti

o

n

.

In te rf a ce d e l› ob je t se rveu r. import jav a .rmi.*; public inte rface ExpenseServer ex tends Remote { Policy getPolicy () th rows RemoteException; void submitReport (Exp enseReport report) throws RemoteExceptio n, InvalidReportExcept ion; } M é th o de s q u e le cl ien t peu t in voque r su r le se rve u r.

(16)

va e t le W e b A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 2

:

im

p

la

n

ta

ti

o

n

.

import java .rmi.*; import java .rmi.server.*; class Expen seServerImpl extends U nicastRemoteObject implemen ts ExpenseServer { ExpenseServ

erImpl() throws Remote

Exception {

// .

..set up server state.

.. } public Poli cy getPolicy () { retur n new TodaysPolicy();} public void submitReport (ExpenseR eport report) { // ...write

the report into the d

b...

(17)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 2

:

im

p

la

n

ta

ti

o

n

.

in te rf a c e de l› ob je t po lit ique : public inte rface Policy { void checkValid (Expen seEntry entry) throws PolicyViolatio nException; } In te rf a ce co n nue du s e rveu r e t de s c lie n ts. In te rf a ce e s t im p lan tée pa r un ob je t su r le se rveu r.

(18)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 2

:

im

p

la

n

ta

ti

o

n

.

ob je t qu i i m p lan te la p o lit iq u e . ob je t dé fi n i su r le se rveu r. public clas s TodaysPolicy impleme nts Policy { public void checkValid (ExpenseEnt ry entry) throws Poli cyViolationException { if (entry.d ollars() < 20) {return ; // no receipt requir ed } else if ( entry.haveReceipt() == false) { throw n ew PolicyViolationExce ption; } // if } // method } // class

(19)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

xe

m

p

le 2

:

im

p

la

n

ta

ti

o

n

.

app le t cl ien t Policy curP olicy = server.getPoli cy(); // start a new expense report // show the

GUI to the user

while (user

keeps adding entries)

{ try { curPol icy. checkValid (entry);

// throws exception if not OK add the entry to the expense report } catch (Poli

cyViolationException e

) {

// sho

w the error to the use

r } } server. subm itReport (report);

(20)

va e t le W e b A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

a

rc

h

it

e

c

tu

re e

t

u

ti

li

s

a

ti

on

S e rve u r BD E xp en se S e rve rI m p C li e n t 1 ) té lé ch a rg e m en t de l› a pp le t JD B C 2 a ) R M I: a p pe l d e ge tP o licy a p p le t g e tP o licy su b m it R e p o rt H T T P T o d a yP o licy ch e ckV a lid 2 b )n e w 2 c) tr a n sf e rt su r le cl ien t 3 à n ) ch e ckV a lid .. . T o d a yP o licy che ckV a lid .. . n + 1 ) R M I: a p pe l d e sub m it R e po rt

(21)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le

2

:

n

o

u

ve

ll

e

po

li

ti

q

u

e

.

W ri te th is c la ss, in st a ll i t on th e se rve r, and te ll the se rve r to st han d ing ou t T o m o rr o w sP o licy o b je ct s in st e a d o f Toda ysP o licy ob je ct s, a nd yo u r en ti re syst e m w ill st a rt u s ing th e ne w p o licy. W hen th e cl ien t in vo ke s the se rve r' s ge tP o licy m e thod , R M I o the cli e n t che cks to se e if the re tu rned ob je ct is o f a kno w n type The fi rs t ti m e ea ch cli e n t en cou n te rs a To m o rr o w sP o licy o b je R M I w ill do w n loa d the im p le m en ta ti on fo r t he po licy b e fo re ge tP o licy re tu rn s. T h e cl ien t w ill , w it hou t e ff o rt , st a rt en fo rci ng the ne w po licy. sou rce : h tt p :/ /j a va .s u n .co m /m a rke ti n g /co lla te ra l/ ja v a rm i. h tm l

(22)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

E

x

e

m

p

le 2

:

c

o

m

m

e

n

ta

ir

e

s

.

- a rch it e ct u re fa cil e à m e tt re en oeu vr e , -m a in te n an ce de l ›a p p lic a ti on fa ci lit ée , si l e s é vo lu ti on s s on t an ti ci pée s. - vo ir page 14 .

(23)

Ja va e t le W e b (c) A . Le G ra nd C en tr e un ive rsi ta ir e d ’in fo rm a ti que

P

o

u

r

q

u

o

i

fa

ir

e

d

e

s

a

pp

li

ca

ti

on

s

d

is

tr

ib

u

ée

s

?

In té g ra ti o n de l› e xi st an t. -né ce ssi té liée à u n pa rc m a ch ine e t log ici e ls hé té rogène à fa ir e c o opé re r : --> JA V A - R M I - JN I - JD BC D é ve lopp e m en t à pa rt ir de 0 . - m ie u x g é re r le dép lo ie m en t e t la m a in tena n ce d e s a pp lica ti on s, - m ie u x ten ir co m p te de s pe rf o rm an ce s de ce rt a in s se rveu rs (se rveu r de g ro s c a lcu ls) . Q ue ls s on t le s c ri tè re s d ›une bonne d istr ibu ti on ?

Références

Documents relatifs

Starting with the received signal, the SISO equalizer delivers soft decisions about the transmitted coded bits.. A soft decision may be viewed as a real (or quantized) number whose

Dès 1796, l’agent américain Benjamin Hawkins témoigne de l’intérêt manifesté pour le coton par un groupe de femmes Cherokees qu’il rencontre à Etowah : «They said they

Due to the large number of use cases present in the literature, it is obvious that applying any process/method (e.g risk analysis) on them is a tough task. Therefore, there is a need

L'étude des thèmes et des motifs exploités lors de l'entrée solennelle de Charles Quint à Bologne en 1529 et de la procession solennelle après son couronnement en 1530

That reconstruction is based on an orientation field stating the tangent to the wanted structure at each point (or equivalently, if the orthogonal is taken, the direction of growth at

activities, many participants describe notable nuances in their interpretation of various patient behaviors. The latter refer to patient receptivity to care, delays in consulting,

mentionner l’équipe porteuse (avec les noms, prénoms mais également les disciplines enseignées et les établissements d’origine), le parcours éducatif auquel il

La figure 1 illustre la répartition des personnels enseignants de l’enseignement supérieur par statuts, telle que décrite par ce document, dans lequel on peut également lire que