Chapter 8
cascading style sheets
-CSS -control appearance of web elements in an HML document
presentation logic
-GUI interface -responsible for formatting and presenting data on the user's screen or other output device and for managing user input from a keyboard or other input device
hypertext markup language
-HTML -language specific for web pages
types of cloud
-IaaS -PaaS -SaaS
thin client
-PC just for user interface and a little application processing. Limited or no data storage (sometimes no hard drive) -usually a web browser and the 3-tier architecture involve a web application
standard generalized markup language
-SGML -markup language standard
Extensible Hypertext Markup Language
-XHTML -XML-compliant extension of HTML
extensible markup language
-XML -markup language allowing customized tags
middleware to connect applications to databases
-application programming interface (API) -open database connectivity (ODBC)
web application components
-database server -web server -application server -web browser
transactions
-involve many database updates -either all must succeed, or non should occur
database connection
-maintaining an open connection is resource-intensive -use of connection pooling
cloud computing characteristics
-on-demand -broad network access -resource pooling -rapid elasticity -measured service
advantages of stored procedures
-performance improves for compiled SQL statements -reduced network traffic -improved security -improved data integrity -thinner clients
processing logic
-procedures, functions, programs -handles data processing logic, business rules logic, and data management logic
disadvantages of stored procedures
-programming takes more time -proprietary, so algorithms are not portable
benefits of three tier architecture
-scalability -technological flexibility -long-term cost reduction -better match of systems to business needs -improved customer service -competitive advantage -reduced risk
key considerations in a three tier application
-stored procedures -transactions -database connection
XML and Web Services
-web services -UDDI -WSDL -SOAP
static page requests
.htm or .html -requests handled by the web server
dynamic page requests
.jsp - .aspx - .pho requests are routed to the application server
steps for using databases via middleware
1. identify and register a database driver 2. open a connection to a database 3. execute a query against the database 4. process the results of the query 5. repeat steps 3-4 as necessary 6. close the connection to the database
storing xml document options
1. store XML data in a relational database by shredding the XML document 2. Store entire XML document in a large field (BLOB/CLOB) 3. store the XML document using special XML columns 4. store the XML document using a native XML database (non-relational)
java servlet
A Java program that is stored on the server and contains the business and database logic for a Java-based application.
fat client
A client PC that is responsible for processing presentation logic, extensive application and business rules logic, and many DBMS functions.
cloud computing
A model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction
web services
A set of emerging standards that define protocols for automatic communication between software programs over the Web. Web services are XML based and usually run in the background to establish transparent communication among computers.
XQuery
An XML transformation language that allows applications to query both relational databases and XML data.
open database connectivity (ODBC)
An application programming interface that provides a common language for application programs to access and process SQL databases independent of the particular DBMS that is accessed.
binary large object
BLOB
character large object
CLOB
document structured declarations
DSD
document type declarations
DTD
languages for creating web pages
HTML SGML XML XHTML JavaScript/VBScript CSS XSL and XSLT
XPath
One of a set of XML technologies that supports XQuery development. XPath expressions are used to locate data in XML documents.
service oriented architecture
SOA -a collection of services that communicate with each other, usually by passing data or coordinating a business activity -loosely coupled, highly interoperable components
simple object access protocol
SOAP -an XML based communication protocol used for sending messages between applications via the internet
middleware
Software that allows an application to interoperate with other software without requiring the user to understand and code the low-level operations necessary to achieve interoperability.
application partitioning
The process of assigning portions of application code to client or server partitions after it is written to achieve better performance and interoperability (ability of a component to function on different platforms).
Universal Description Discovery and Integrations
UDDI -a technical specification for creating a distributed registry of web services and businesses that are open to communicating through web services
world wide web consortium
W3C -An association concerned with interoperability, growth, and standardization of the World Wide Web (WWW). This group is the primary sponsor of XML and other web-enabled technologies.
web services description language
WSDL -an XML-based grammar or language used to describe a web service and specify a public interface for that service
XSL and XSLT
XMS style sheet and transformation to HTML
retrieving XML documents
XPath XQuery
XML schema
XSD
extensible stylesheet language transformation
XSLT -a language used to transform complex XML documents and also used to create HTML pages from XML documents
cross-site scripting
XSS -language for defining XML databases, recommended by the W3C
three tier architectures
a client/server configuration that includes three layers: a client layer, and two server layers. although the nature of the server layers differs, a common configuration contains an application server and database server
Database server
a computer that is responsible for database storage, access, and processing in a client/server environment. Some people also use this term to describe a two tier client/server application
web browser (web app)
client program that sends web requests and receives web pages -internet explorer, firefox, safari, google chrome
Two Tier Database Server Architectures
client workstation is responsible for managing the user interface, including presentation logic, data processing logic, and business rules logic
three tier tiers
client---GUI interface application software---business rules database server---data storage
data processing
data validation and identification of errors
business rules
have not been coded at the DMBS level, maybe be processed in this level
database server (web app)
hosts the storage logic for the application and hosts the DBMS -oracle, access, SQL server, Informix, MySql
Management logic
identifies necessary data for processing the transaction or query
web application languages
java server pages (JSP), APS.NET, and PHP
stored procedures
modules of code that implement application logic and are included on the database server -code logic embedded in DBMS -improves performance but proprietary nature reduces the portability and makes it difficult to change the DBMS without having to rewrite procedures
client/server components
presentation logic processing logic storage logic
web server (web app)
provides basic functionality needed to receive and respond to requests from browser clients. uses HTTP or HTTPS protocol -apache, internet information services (IIS)
application server (web app)
provides the building blocks for creating dynamic web sites and web-based applications
JavaScript/VBScript
scripting languages that enable interactivity in HTML documents
application programming interface (API)
sets of routines that an application program uses to direct the performance of procedures bu the computer's operating system