Java System Architectures - PowerPoint PPT Presentation

1 / 13
About This Presentation

Java System Architectures


Java System Architectures David Davenport Bilkent University Ankara Turkey Email: – PowerPoint PPT presentation

Number of Views:109
Avg rating:3.0/5.0
Slides: 14
Provided by: DavidD299


Transcript and Presenter's Notes

Title: Java System Architectures

Java System Architectures
  • David Davenport
  • Bilkent UniversityAnkara Turkey
  • Email

Basic Forms of Java Programs
  • Console Applications( MSDOS-like )
  • text only!
  • GUI Applications( Windows-like )
  • text graphics
  • menus, buttons, mouse, keyboard
  • Applets
  • GUI programs restricted for use in web-browsers

Other Forms of Java Programs
  • Web Server Applications
  • html client
  • data only XML, JSON
  • Mobile Applications
  • Android only Java
  • html5, Javascript, CSSusing libraries, e.g.
    JQuery Mobile, phonegap,
  • Java for everything?
  • Cards, TV,
  • misc!

Java Applications
Java applications (console GUI) have full
accessto local machine resources, including
local files, databases network connections.
Java Applets
Java Applets are embedded in html web pages,
downloaded from web servers and run by web
browsers. For security reasons, they can
communicate only with the machine from which they
originated and cannot access local files or
databases (although these restrictions can be
lifted if the user agrees to trust them!)
Networked Java Applications
Java programs can communicate with each other
either directly or via a server program, allowing
them to freely exchange information. Some
database systems offer direct network access.
Networked Java Applets
Since Java Applets cannot normally communicate
with each other directly, they must do so via a
server application program. Similarly, if they
need to store information, they can only do so on
a server machine.
Java Servlets
Java Servlets extend web server functionality
allowing it to dynamically generate web pages
using information stored in databases or files.
Communications use HTML
Java Web Services
Web services extend web server functionality
allowing it to dynamically respond to service
requests using information from databases, files
or even other web services!
Clients may be web browsers, but are more likely
to be other application programs.
Communications use XML/JSON
Data Formats
ltteldirgt ltpersongt ltnamegt David lt/namegt lt
telnogt 1248 lt/telnogt lt/persongt ltpersongt lt
namegt Gunes lt/namegt lttelnogt 1814 lt/tel
nogt lt/persongt ltpersongt ltnamegt Derya lt/nam
egt lttelnogt 5678 lt/telnogt lt/persongt lt/teldi
lttablegt lttrgt lttdgtDavidlt/tdgt lttdgt1248lt/tdgt lt/
trgt lttrgt lttdgtGuneslt/tdgt lttdgt1814lt/tdgt lt/trgt
lttrgt lttdgtDeryalt/tdgt lttdgt5678lt/tdgt lt/trgt lt/ta
Name Telno David 1248 Gunes 1814 Derya 5678
name,telno David,1248 Gunes,1814 Derya,5678
"teldir""name""David", "telno""1248",
"name""Gunes", "telno""1814",
"name""Derya", "telno""5678"
Mobile Applications
Operating Systems Android, iOS, Windows,
Hardware screen orientation (portrait,
lanscape) screen size (phone, tablet) screen
resolution (DPI) optional sensors (GPS,
accelerometer, )
Persistent Storage
Alternatives Files sequential/random-access,
diy/Serialization, Database JDBC, SQL,
Cloud? other? local storage on phones,
webbrowser, etc.
see w3schools
Tables, e.g. TelDir Name Telno David 1248
Derya 5678 Gunes 1814
SQL w3schools select from TelDir select
Name from TelDir select Telno from TelDir where
Name 'Derya insert into TelDir ( Name, Telno)
values ( Ayse, 9999) update TelDir set
TelNo 0000 where Name Ayse delete from
TelDir where TelNo 5678 commands to
manipulate tables, etc.
  • User Interaction
  • Text only
  • Text graphics
  • Static (html?)
  • Interactive (GUI?)
  • Mouse/touch/voice/
  • Single/multi-user
  • Stand-alone
  • Network
  • Web-browser (applet)
  • Application
  • Client software distribution installation
  • Floppy disks/CDs/usb memory sticks/ download?
  • WebStart
  • Applets
  • Server-based
  • Data storage retrieval
  • Files
  • Database (local/network)
  • Cloud storage
Write a Comment
User Comments (0)