CSE 190: Internet ECommerce - PowerPoint PPT Presentation

About This Presentation
Title:

CSE 190: Internet ECommerce

Description:

auction.setDescription( 'Limited edition cloth doll showing all ' ... auction.setTitle( 'Automatic labeler' ); auction.setDescription( 'The Brother X7 creates ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 16
Provided by: anandbala
Learn more at: https://cseweb.ucsd.edu
Category:

less

Transcript and Presenter's Notes

Title: CSE 190: Internet ECommerce


1
CSE 190 Internet E-Commerce
  • Lecture 9 Application Tier Programming

2
App Tier Languages
  • Language paradigms, declarations, control flow,
    domain objects
  • JSP -gt Java
  • ASP -gt VB, C
  • PHP -gt PHP, Java, COM

3
JSP
  • Java paradigms
  • All functionality encapsulated in objects
    functionality provided through methodspublic
    Classname instance-variables-block
    Type functionOne() . Type2 functionTwo()
    .
  • Static typing
  • Garbage collection
  • Language reference Java in a Nutshell,
    http//java.sun.com
  • Namespaces major components located in
    hierarchical namespaces (e.g. com.sun.net.)
  • Methods accessible outside of the class must be
    prefixed with public token
  • Essentially C-like syntax (including // and /
    / comments )
  • Variables
  • Type variableName initial-value
  • E.g. String auctionTitle BMW motorcycle
  • Array syntax variableName index
  • Overloaded for string concatenation
  • one two onetwo
  • Visibility variables within methods visible
    until end of method
  • Visibility variables within class are visible to
    all methods of class
  • Lifetime intrinsic variables (e.g. int, float)
    have auto scope
  • Within page declaration ltjspuseBean
    idvariableName classClassName
    scoperequest session application pagegt
  • Property initialization ltjspsetProperty
    namevariableName propertypropertyName gt

4
JSP Control flow
  • Sequence
  • statement1statement2
  • All statements terminated by semicolon
  • Selection
  • if( boolean-value ) block
  • block statement or block
  • switch( integral-type ) case integral-value1
    statement-list breakdefault statement-list
    break

5
JSP Control Flow
  • Iteration
  • for( int i 0 i lt 10 i ) block
  • while( boolean-condition ) block
  • do statement-list while( condition )
  • No goto
  • Method invocation
  • object.actOnArguments( arg1, arg2, arg3 )
  • Multithreading explicit
  • Use synchronized( variable ) to avoid
    raceconditions may ignore this issue for DB
    calls

6
JSP Types
  • Intrinsics
  • int, float, boolean, char, String
  • String is an intrinsic object, with methods
    length(), etc.
  • User defined types are always classes
  • No enum, structs, typedefs

7
JSP domain objects
  • Request
  • getParameter(), getCookies()
  • Response
  • addCookie(), encodeURL(), setStatus(),
    sendError()
  • Out
  • print, println
  • Session
  • getId(), getAttribute(), invalidate(),
    setAttribute(), removeAttribute()
  • in
  • pageContext
  • config
  • exception
  • Overview http//jakarta.apache.org/tomcat/tomcat-
    4.0-doc/servletapi/overview-summary.html

8
JSP Review
  • How would I create a class accessible to my JSP
    page that would provide access to a list of
    Auction objects, each with a small set of
    attributes?

9
JSP Review
  • import java.util.
  • public class Auctions
  • Vector _auctions
  • public Auctions()
  • reset()
  • public int getNumAuctions()
  • return _auctions.size()
  • public Auction getAuction( int num )
  • return (Auction) _auctions.elementAt( num
    )
  • public void reset()
  • _auctions.clear()

10
JSP Review
  • auction new Auction()
  • auction.setTitle( "LOTR hobbit doll!!" )
  • auction.setDescription( "Limited edition
    cloth doll showing all "
  • "Frodo's
    features, including leaf clasp." )
  • auction.setHighBidder( "(none)" )
  • _auctions.add( auction )
  • auction new Auction()
  • auction.setTitle( "Automatic labeler" )
  • auction.setDescription( "The Brother X7
    creates labels on demand "
  • "through a simple
    keyboard. No waiting"
  • " for the
    computer to boot up!" )
  • auction.setHighBidder( "compulsive_collect
    or" )
  • _auctions.add( auction )

11
JSP Review
  • public class Auction
  • Properties _properties
  • public Auction()
  • _properties new Properties()
  • public String getTitle()
  • return _properties.getProperty( "title"
    )
  • public void setTitle( String title )
  • _properties.setProperty( "title", title
    )
  • public String getDescription()
  • return _properties.getProperty(
    "description" )

12
JSP Review
  • public String getHighBidder()
  • return _properties.getProperty(
    "highbidder" )
  • public void setHighBidder( String bidder )
  • _properties.setProperty( "highbidder",
    bidder )

13
PHP
  • PHP paradigms
  • Perl-inspired syntax (mix of C, shell, and more)
  • Functionality provided through functions or less
    commonly through methodsfunction printPage(
    arg1, arg2 ) statement-listclass
    MyClass function foo()
  • Dynamically typed
  • Garbage collection
  • Language reference http//www.php.net
  • Shell style comments this is a comment
  • Variables
  • auctionTitle BMW motorcycle
  • Arrays arrayName index . Are associative
    arrays! Created with array().
  • String concatenation (dot operator) one .
    two onetwo
  • Visibility Auto scope

14
PHP Control Flow
  • Sequence
  • statement1statement2
  • Selection
  • if( condition ) statement statement-list
    else .
  • if( condition ) block elseif statement block
  • switch()

15
PHP Control Flow
  • Iteration
  • for(), while(), do while()
  • foreach( arrayname as val )
  • No goto
  • Method invocation
  • object-gtactionToPerform( arg1, arg2 )
  • Persistent DB connections built in
Write a Comment
User Comments (0)
About PowerShow.com