Async EJB calls, Java Persistence API and XML. Carl Nettelblad
|
|
- Antonia Chase
- 6 years ago
- Views:
Transcription
1 Async EJB calls, Java Persistence API and XML Carl Nettelblad
2 Outline Asynchronous EJB calls Java Persistence API XML
3 Map realm roles to application roles Enable check box in Security configuration: Default Principal To Role Mapping (in Glassfish Admin console The admin console is one of those things you should disable fully in a production environment Or protect This options makes Glassfish group names map to security roles Otherwise you can specify a mapping yourself in the separate glassfish-web.xml
4 Databases Relational (SQL) databases Give persistence in a reliable and consistent way (transactionality) Different providers, accessed using JDBC drivers The need for connection pools for good performance Use parametrized queries in prepared statements For performance For avoiding SQL injection
5 Possible SQL injection String query = "INSERT INTO PERSON" + "(pnr, firstname, lastname, sex, age)" + "VALUES (1,'" + firstname + "','Svensson', 35)"; int rows = stmt.executeupdate(query);
6 Example, prepared statements PreparedStatement pstmt; pstmt = connection.preparestatement( "INSERT INTO PERSON (pnr,firstname,lastname,age) VALUES (?,?,?,?)"); pstmt.setint(1, 1); pstmt.setstring(2, "Nisse"); pstmt.setstring(3, "Nilsson"); pstmt.setint(4, 37); int x = pstmt.executeupdate();
7 tag for data tag for EJBs Simply annotate the servlet variables (private is OK) Only works for managed objects Objects created by the container, not by you
8 Transactions Making sure that it would seem like all operations occur in some specific order, not overlapping Serializability Not the same thing as seralization of objects This means that locks might need to be held even on data that was only read from tables, if you later write to another table Can cause low performance Deadlocks Think about what you read and where you put your transaction boundaries
9 Enterprise Java Beans Message beans Session beans Stateful State can be kept between different method calls from the same client Stateless No state between method calls Singleton Global instance
10 Interfaces Remote interface Parameters serialized Basically everything passed by value Lower performance Can be used in a distributed setting Local interface Only used within a single JVM instance Higher performance Pass by value or pass by reference as usual
11 A bit of history Old-style EJBs have fake interfaces mapped to bean class These days, declare the interfaces, tag them Inherit from them and tag your session bean
12 Additional annotation on Controls how the method or EJB participates in transactions Sometimes you want to opt out or have a separate transaction Declarative
13 Asynchronous EJB methods Imagine you want to get information on 100 users Request sent to a US server through an EJB 100 ms roundtrip at the very best ArrayList<User> users = new ArrayList(); for (String username : userlist) { } users.add(ourbean.getuser(username)); This will take ten seconds Not really needed The US server and your web server can both do much better
14 What to do? Move the US server here Change the API Send the full list of users Excellent idea, not always possible Concurrency Make many simultaneous requests Creating threads manually can be hard
15 The Java Future Standard interface for representing a value that does not necessarily exist yet in Java Used in Java concurrency API Methods cancel, get, iscancelled, isdone get will wait until the value is really available Exceptions can be passed at get time (wrapped in ExecutionException)
16 Asynchronous EJB methods Tag your method Change the return type from e.g. User to Future<User> Write normal, synchronous implementation Just change the return line from e.g. return usertoreturn; to Return new AsyncResult<User>(userToReturn);
17 What would the client look like? ArrayList<Future<User>> futures = new ArrayList(); for (String username : userlist) { futures.add(ourbean.getuserasync(username)); } ArrayList<User> users = new ArrayList(); for (Future<User> future : futures) { users.add(future.get()); }
18 What s the difference? We give the EJB a change to start processing all the requests we know that we will make Then, we start looking at the results Hiding latency The EJB asynchronous calls keep transactions and all other nice aspects of the container The only thing you need to do is to separate the call and get return value part in your client Futures very powerful general concept for concurrency and throughput
19 Object-relational mapping and JPA The object-oriented world and the relational world are similar, yet different Objects are separate entities Inheritance, references to other objects in many ways Easy to represent trees and other graphs Relational databases are based on tables All rows have the same structure Closely tied to the table Fixed relations between tables (Graphs through self-relations)
20 Objects and tables Different data types Quite common to create a Java Bean/ value object to represent the content of a table row Risk of writing lots of braindead CRUD code CReate Update Delete Separate methods for each bean class, mapping to each table High risk of manual errors
21 Another way What if we could say which fields in a class map to which columns in a table? And how references to other classes map to database relations Even create the database schema from our classes This is the foundation of object-relational mapping Java Persistence API is one way to do it
22 Two views on JPA Convenient way to model the database structure as Java classes Using Java as a tool to interact with the database Convenient way to persist Java objects permanently and with transaction safety Using the database as a tool for our application
23 Components in JPA An API A query language Metadata for the object/relational mapping Contains a service provider interface Different databases or other resources can provide this interface Your code can easily move Not necessarily easy to move existing data
24 Components in JPA Persistence providers Default provider in Java EE 6 Other providers do exist
25 How to map classes to tables? Same old story Annotations vs. XML One or the other Do you want to map the same Java classes to different database schemas? Go for XML Is the mapping fixed? Go for annotations
26 A POJO Java bean public class BankAccount { private String accountid; private String ownername; private double balance;... } The account ID is the primary key We want to store this data in our database
27 JPA entities Entities are the persistent data objects in our application Can be simply fields of primitive types Can be more complex Each entity has a well-defined identity, key that can be used to retrieve it (primary key in DB) Their state is exposed They are not remote-accessible Entities are supposed to live on beyond shutdown of the application
28 Example import java.io.serializable; import javax.persistence.entity; import public class Account implements Serializable { /** The account number is the primary key for the persistent object public int accountnumber; public String ownername; public int balance; /** * Entities must have a public no-arg constructor */ public Account() { // auto-generation accountnumber = (int) System.nanoTime(); }
29 Example public void deposit(int amont) { } balance += amount, } public int withdraw(int amount) { if (amount > balance) { return 0; else { balance -= amount; return amount; }
30 (Some) additional features If field names map to column names and class names map to table names, nothing else is if column name doesn t match field name Additional attributes to control mapping for fields that should not be created based on Annotating references to other objects and collections of for handling separate tables carrying relationship information (needed for many-to-many)
31 Schema generation Configuration will determine whether schema is autocreated Property javax.persistence.schema-generation.database.action with values none, create, drop-and-create, drop Dropping means removing everything Good for testing from a blank slate Dangerous anywhere close to production data
32 persistence.xml Configuration for the JPA services <?xml version="1.0" encoding="utf-8"?> <persistence xmlns=" <persistence-unit name="unit1"> <jta-data-source>mydb</jta-data-source> <non-jta-data-source>mydb-nontrans</jta-data-source> <properties> <property name="eclipselink.target-database" </properties> </persistence-unit> </persistence> value="javadb"/>
33 Explanation The data source With transaction management Without transaction management Specify SQL dialect Derby in this case
34 Entity manager Entry point for managing persistence Interaction with data source, transactions
35 Example methods Query for objects (find/query) Query on ID or query using EB-QL Update object based on state of constructed object New object persist Existing objects merge detach managed entities to become regular objects remove entities (from persistence) refresh entity based on current database state (as seen within transaction)
36 Stateless EJB example package examples.entity.intro; import java.util.list; import javax.ejb.stateless; import javax.ejb.remote; import javax.persistence.*; /** * Stateless session bean facade for account entities, * remotely public class BankBean implements Bank { /** * The entity manager object, injected by the container private EntityManager manager; public List<Account> listaccounts() { Query query = manager.createquery("select a FROM Account a"); return query.getresultlist(); }
37 Stateless EJB example public Account openaccount(string ownername) { Account account = new Account(); account.ownername = ownername; manager.persist(account); return account; } public int getbalance(int accountnumber) { Account account = manager.find( Account.class, accountnumber); } return account.balance; public void deposit(int accountnumber, int amount) { Account account = manager.find(account.class, accountnumber); account.deposit(amount); } } }
38 Stateless EJB example public int withdraw(int accountnumber, int amount) { Account account = manager.find(account.class, accountnumber); return account.withdraw(amount); } } public void close(int accountnumber) { Account account = manager.find(account.class, accountnumber); manager.remove(account); }
39 Conclusion JPA allows you to write code almost like you were just using Java objects Code focusing on intent You still need to have a design that maps to database concepts The Java EE framework will handle many aspects You can still run into unexpected failed transactions due to e.g. locking There are several implementations of JPA One is the Java ORM library Hibernate (which predates the JPA standard)
40 XML Hypertext Markup Language HTML is based on Standard Generalized Markup Language Standardized in the 1980s Very general language Angle-bracket tags just one concrete syntax of SGML Structure of markup languages can be defined using a document type declaration grammar
41 Flaws of SGML Way too general Hard to parse Tags allowed to be non-closed Grammar used actively, many things that could be deduced could therefore be omitted In all: A good way to allow many structured languages to be modeled in a standardized way Very hard to handle the standard
42 Enter HTML HTML is one specific SGML application Didn t use many of the features In fact, web browsers didn t support them Maybe we should make a better HTML, or a simpler SGML? Extensible markup language is born
43 Nature of XML Native UNICODE Semantics and syntax in UNICODE, many practical encodings possible Carried over from HTML/SGML Tags (elements) and attributes Text and/or other tags within tags Comments Whitespace non-significant Tags are case-sensitive Always end tags, so self-ending tags
44 CDATA Angle brackets and other special characters can be escaped, using entities < for <, > for > etc If we have a lot of binary data, we can instead use CDATA <![CDATA[ function matchwo(a,b) { if (a < b && a < 0) then { return 1; } else { return 0; } } ]]> Any data except for the characters ]]> can be used
45 Well-formed documents XML makes a distinction between processors and applications Most applications using XML are supposed to use a pre-existing processor (parser) to read the language A well-formed XML document should be OK to any processor Might not make sense to the application Follows the syntax rules Well-defined tree structure of elements Only a single root element in that tree Etc
46 Schemas Well-formedness is a matter of syntax It doesn t tell you whether the document makes sense Ideally, a document should specify what it is This is realized through schemas Two purposes: The schema describes the exact syntax A validating processor can parse the document according to that syntax The name/identifier of the schema can be used by an application to handle the file correctly Including versioning
47 Schema-less XML file <?xml version="1.0"?> <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note> (Example from w3schools web site, sometimes good short references, but sometimes a bit too inaccurate.)
48 DTD Document type definition Schema definition carried over from SGML Usually put in a separate file <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>
49 With DTD reference <?xml version="1.0"?> <!DOCTYPE note SYSTEM " <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note>
50 <?xml version="1.0"?> <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend</body> </note> Inline DTD
51 !DOCTYPE PUBLIC <!DOCTYPE note SYSTEM " System means the schema is private We can also refer to standardized schemas using public DTD names If the processor knows about that name, it shouldn t fetch the actual DTD file from the specified location DTD names are on the form prefix//dtdowner//dtd-description//language Prefix can be ISO, + or ISO standard, approved other standard, unapproved other standard
52 HTML doctype HTML4 tried to be a good citizen DOCTYPEs like <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" " HTML5 simply says <!DOCTYPE html> Anything else is misleading, since HTML is not even trying to be valid SGML or XML anymore Hence no DTD for proper validation Browsers do care about the DOCTYPE
53 Why is it good to validate? The XML processor is supposed to be robust and tolerant to errors Tolerant as in not crash/behave unpredictably Difference to HTML attitude just accept anything Moving responsibility If the XML processor validates, your application does not have to check that every mandatory attribute or element does exist before reading it
54 Namespaces Different schemas and use cases might exist in the same document Two issues Point out uniquely what applications are referenced Bring this into the XML syntax Solution: Map namespaces to prefixes A prefix is the part coming before a colon in an element or attribute name
55 Namespace names Tend to be URLs Nothing is really found at those URLs, they are really just identifiers Arbitrary strings (without whitespace) The meaning is based on the meaning assumed by the using application Example: XHTML
56 Specifying prefixes A namespace is specified by assigning a prefix and then using that prefix The xmlns (XML namespace) prefix is predefined for this, xmlns:xhtml=" would mean the xhtml prefix is referring to the namespace Any element with the prefix is interpreted to be in that namespace Attributes are assumed to belong to their element But attribute namespace can also be specified Namespaces can be assigned on any element level
57 Default namespace Just specifying xmlns without a colon assigns the default namespace In a typical XML document, having this on the root element might be the only occurrence of xmlns in the full file Basically a type specification for the full file
58 W3C XML Schemas/XSD Beyond DTD, there are other ways to specify XML schemas One of the more common and well-supported are W3C XML Schemas, frequently stored in XSD files (XML Schema definitions) The schema usage is controlled by the specified namespaces in the file and extra attributes in the namespace
59 Note example again <?xml version="1.0"?> <note xmlns=" xmlns:xsi=" xsi:schemalocation=" note.xsd"> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note>
60 schemalocation and nonamespaceschemalocation schemalocation is really a list of pairs: namespaces and the URIs to their schemas What if you want to map the default namespace? Just list its name What if you don t have a default namespace (a no namespace XML file)? Use the nonamespaceschemalocation attribute instead Only specifies a URI The corresponding schema must also actually be intended to be used without a namespace
61 XPath Find a subset of XML nodes using a path-like syntax <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE employee> <employee department="customer services"> <firstname> Eva </firstname> <lastname> Svensson </lastname> <age> 35 </age> </employee>
62 Navigate using XPath Refer to the Age element /employee/age Department attribute Additional conditions can be set, i.e. elements fulfilling customer service"]
63 XPath axes Default axis of child (next level) Axes can be specified explicitly child:: Other axes: ancestor/ancestor-or-self attribute child descendant/descendant-or-self (// for the node) following/following-sibling namespace parent (.. for the node) preceding/preceding-sibling self (. for the node)
64 XPath node tests Simply element names Can also be things like prefix:* for any element in a namespace or simply * for any element comment() text() XML nodes for text in tag bodies processing-instruction() - non-element tags such as <?xml node() any node
65 Predicates Additional constraint in brackets, boolean predicate Can also be an index to find a specific match (onebased) Normal operators +, -, *, div (for division), mod Comparison operators =,!=, <, >, <=, >= and, or, not() Union operator to match the union of two conditions Functions: contains, starts-with, concat, substring, normalize-space, count,
66 XML API in Java Streaming data: Simple API for XML org.xml.sax Event-driven, callbacks XML stream API javax.xml.stream Reading methods Reading full file: Document object model org.w3c.dom Object model Java XML Binding JAXB javax.xml.bind Mapping XML elements to Java objects
67 Document Object Model Read the full XML document Represent it as XML nodes Related to HTML DOM Parse tree HTML DOM models HTML logic as well Navigate through the tree getelementsbytagname getelementbyid Can be combined with XPath API
68 DOM example File fxmlfile = new File("D:/formdata.xml"); DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance(); DocumentBuilder dbuilder = dbfactory.newdocumentbuilder(); Document doc = null; try { doc = dbuilder.parse(fxmlfile); } catch (SAXException e) { // TODO Auto-generated catch block e.printstacktrace(); } catch (IOException e) { } // TODO Auto-generated catch block e.printstacktrace(); doc.getdocumentelement().normalize(); System.out.println("Root element :" + doc.getdocumentelement().getnodename()); NodeList nlist = doc.getelementsbytagname("subelement"); // using XPath instead NodeList nlist2 = (NodeList) xpath.compile("/subelement").evaluate(doc.getdocumentelement(), XPathConstants.NODESET);
69 DOM, pros and cons Pro Navigate freely in the full structure Cons Very verbose syntax Explicitly look up attributes, elements, inner text as separate nodes and look at them Not the best performance
Introduction to Session beans. EJB - continued
Introduction to Session beans EJB - continued Local Interface /** * This is the HelloBean local interface. * * This interface is what local clients operate * on when they interact with EJB local objects.
More informationCall: JSP Spring Hibernate Webservice Course Content:35-40hours Course Outline
JSP Spring Hibernate Webservice Course Content:35-40hours Course Outline Advanced Java Database Programming JDBC overview SQL- Structured Query Language JDBC Programming Concepts Query Execution Scrollable
More informationJava EE Architecture, Part Three. Java EE architecture, part three 1(69)
Java EE Architecture, Part Three Java EE architecture, part three 1(69) Content Requirements on the Integration layer The Database Access Object, DAO Pattern Frameworks for the Integration layer Java EE
More informationJava EE Architecture, Part Three. Java EE architecture, part three 1(57)
Java EE Architecture, Part Three Java EE architecture, part three 1(57) Content Requirements on the Integration layer The Database Access Object, DAO Pattern Frameworks for the Integration layer Java EE
More informationWhat is XML? XML is designed to transport and store data.
What is XML? XML stands for extensible Markup Language. XML is designed to transport and store data. HTML was designed to display data. XML is a markup language much like HTML XML was designed to carry
More informationObject-Relational Mapping is NOT serialization! You can perform queries on each field!
ORM Object-Relational Mapping is NOT serialization! You can perform queries on each field! Using hibernate stand-alone http://www.hibernatetutorial.com/ Introduction to Entities The Sun Java Data Objects
More informationWeb Application Development Using JEE, Enterprise JavaBeans and JPA
Web Application Development Using JEE, Enterprise Java and JPA Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.
More informationJava EE 7: Back-end Server Application Development 4-2
Java EE 7: Back-end Server Application Development 4-2 XML describes data objects called XML documents that: Are composed of markup language for structuring the document data Support custom tags for data
More informationmarkup language carry data define your own tags self-descriptive W3C Recommendation
XML intro What is XML? XML stands for EXtensible Markup Language XML is a markup language much like HTML XML was designed to carry data, not to display data XML tags are not predefined. You must define
More informationWeb Application Development Using JEE, Enterprise JavaBeans and JPA
Web Application Development Using JEE, Enterprise Java and JPA Duration: 5 days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options.
More informationCSI 3140 WWW Structures, Techniques and Standards. Representing Web Data: XML
CSI 3140 WWW Structures, Techniques and Standards Representing Web Data: XML XML Example XML document: An XML document is one that follows certain syntax rules (most of which we followed for XHTML) Guy-Vincent
More informationModule 8 The Java Persistence API
Module 8 The Java Persistence API Objectives Describe the role of the Java Persistence API (JPA) in a Java EE application Describe the basics of Object Relational Mapping Describe the elements and environment
More informationJava SE7 Fundamentals
Java SE7 Fundamentals Introducing the Java Technology Relating Java with other languages Showing how to download, install, and configure the Java environment on a Windows system. Describing the various
More informationWeb Services Part I. XML Web Services. Instructor: Dr. Wei Ding Fall 2009
Web Services Part I Instructor: Dr. Wei Ding Fall 2009 CS 437/637 Database-Backed Web Sites and Web Services 1 XML Web Services XML Web Services = Web Services A Web service is a different kind of Web
More informationJPA Entities. Course Multi Tier Business Applications with Java EE. Prof. Dr. Eric Dubuis Berner Fachhochschule Biel. Berner Fachhochschule
Berner Fachhochschule Technik und Informatik JPA Entities Course Multi Tier Business Applications with Java EE Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Content Characteristics of entities Programming
More informationJava Persistence API (JPA) Entities
Java Persistence API (JPA) Entities JPA Entities JPA Entity is simple (POJO) Java class satisfying requirements of JavaBeans specification Setters and getters must conform to strict form Every entity must
More informationCO Java EE 7: Back-End Server Application Development
CO-85116 Java EE 7: Back-End Server Application Development Summary Duration 5 Days Audience Application Developers, Developers, J2EE Developers, Java Developers and System Integrators Level Professional
More informationforeword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration
contents foreword to the first edition preface xxi acknowledgments xxiii about this book xxv about the cover illustration xix xxxii PART 1 GETTING STARTED WITH ORM...1 1 2 Understanding object/relational
More informationJava Enterprise Edition
Java Enterprise Edition The Big Problem Enterprise Architecture: Critical, large-scale systems Performance Millions of requests per day Concurrency Thousands of users Transactions Large amounts of data
More informationJava EE 7: Back-End Server Application Development
Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 Java EE 7: Back-End Server Application Development Duration: 5 Days What you will learn The Java EE 7: Back-End Server Application
More informationEJB 3 Entities. Course Multi Tier Business Applications with Java EE. Prof. Dr. Eric Dubuis Berner Fachhochschule Biel. Berner Fachhochschule
Berner Fachhochschule Technik und Informatik EJB 3 Entities Course Multi Tier Business Applications with Java EE Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Content Characteristics of entities Programming
More informationXML (Extensible Markup Language)
Basics of XML: What is XML? XML (Extensible Markup Language) XML stands for Extensible Markup Language XML was designed to carry data, not to display data XML tags are not predefined. You must define your
More informationINTERNET PROGRAMMING XML
INTERNET PROGRAMMING XML Software Engineering Branch / 4 th Class Computer Engineering Department University of Technology OUTLINES XML Basic XML Advanced 2 HTML & CSS & JAVASCRIPT & XML DOCUMENTS HTML
More informationFast Track to EJB 3.0 and the JPA Using JBoss
Fast Track to EJB 3.0 and the JPA Using JBoss The Enterprise JavaBeans 3.0 specification is a deep overhaul of the EJB specification that is intended to improve the EJB architecture by reducing its complexity
More informationXPath Basics. Mikael Fernandus Simalango
XPath Basics Mikael Fernandus Simalango Agenda XML Overview XPath Basics XPath Sample Project XML Overview extensible Markup Language Constituted by elements identified by tags and attributes within Elements
More informationJava EE Architecture, Part Three. Java EE architecture, part three 1(24)
Java EE Architecture, Part Three Java EE architecture, part three 1(24) Content Requirements on the Integration layer The Database Access Object, DAO Pattern JPA Performance Issues Java EE architecture,
More informationXML extensible Markup Language
extensible Markup Language Eshcar Hillel Sources: http://www.w3schools.com http://java.sun.com/webservices/jaxp/ learning/tutorial/index.html Tutorial Outline What is? syntax rules Schema Document Object
More informationSoftware Engineering Methods, XML extensible Markup Language. Tutorial Outline. An Example File: Note.xml XML 1
extensible Markup Language Eshcar Hillel Sources: http://www.w3schools.com http://java.sun.com/webservices/jaxp/ learning/tutorial/index.html Tutorial Outline What is? syntax rules Schema Document Object
More informationDeveloping Applications with Java EE 6 on WebLogic Server 12c
Developing Applications with Java EE 6 on WebLogic Server 12c Duration: 5 Days What you will learn The Developing Applications with Java EE 6 on WebLogic Server 12c course teaches you the skills you need
More informationIntroduction to XML. An Example XML Document. The following is a very simple XML document.
Introduction to XML Extensible Markup Language (XML) was standardized in 1998 after 2 years of work. However, it developed out of SGML (Standard Generalized Markup Language), a product of the 1970s and
More informationXML. Presented by : Guerreiro João Thanh Truong Cong
XML Presented by : Guerreiro João Thanh Truong Cong XML : Definitions XML = Extensible Markup Language. Other Markup Language : HTML. XML HTML XML describes a Markup Language. XML is a Meta-Language. Users
More informationJava- EE Web Application Development with Enterprise JavaBeans and Web Services
Java- EE Web Application Development with Enterprise JavaBeans and Web Services Duration:60 HOURS Price: INR 8000 SAVE NOW! INR 7000 until December 1, 2011 Students Will Learn How to write Session, Message-Driven
More informationCall: Core&Advanced Java Springframeworks Course Content:35-40hours Course Outline
Core&Advanced Java Springframeworks Course Content:35-40hours Course Outline Object-Oriented Programming (OOP) concepts Introduction Abstraction Encapsulation Inheritance Polymorphism Getting started with
More informationJava EE Architecture, Part Two. Java EE architecture, part two 1
Java EE Architecture, Part Two Java EE architecture, part two 1 Content Requirements on the Business layer Framework Independent Patterns Transactions Frameworks for the Business layer Java EE architecture,
More informationPro JPA 2. Mastering the Java Persistence API. Apress* Mike Keith and Merrick Schnicariol
Pro JPA 2 Mastering the Java Persistence API Mike Keith and Merrick Schnicariol Apress* Gootents at a Glance g V Contents... ; v Foreword _ ^ Afooyt the Author XXj About the Technical Reviewer.. *....
More informationXML: Extensible Markup Language
XML: Extensible Markup Language CSC 375, Fall 2015 XML is a classic political compromise: it balances the needs of man and machine by being equally unreadable to both. Matthew Might Slides slightly modified
More informationJPA and CDI JPA and EJB
JPA and CDI JPA and EJB Concepts: Connection Pool, Data Source, Persistence Unit Connection pool DB connection store: making a new connection is expensive, therefor some number of connections are being
More informationIntroduction to XML Zdeněk Žabokrtský, Rudolf Rosa
NPFL092 Technology for Natural Language Processing Introduction to XML Zdeněk Žabokrtský, Rudolf Rosa November 28, 2018 Charles Univeristy in Prague Faculty of Mathematics and Physics Institute of Formal
More information7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML
7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML is a markup language,
More informationXML. Technical Talk. by Svetlana Slavova. CMPT 842, Feb
XML Technical Talk by Svetlana Slavova 1 Outline Introduction to XML XML vs. Serialization Curious facts, advantages & weaknesses XML syntax Parsing XML Example References 2 Introduction to XML (I) XML
More informationDelivery Options: Attend face-to-face in the classroom or via remote-live attendance.
XML Programming Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend face-to-face in the classroom or
More informationDelivery Options: Attend face-to-face in the classroom or remote-live attendance.
XML Programming Duration: 5 Days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options. Click here for more info. Delivery Options:
More informationCopyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML
Chapter 7 XML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML
More informationEMERGING TECHNOLOGIES. XML Documents and Schemas for XML documents
EMERGING TECHNOLOGIES XML Documents and Schemas for XML documents Outline 1. Introduction 2. Structure of XML data 3. XML Document Schema 3.1. Document Type Definition (DTD) 3.2. XMLSchema 4. Data Model
More informationXML Structures. Web Programming. Uta Priss ZELL, Ostfalia University. XML Introduction Syntax: well-formed Semantics: validity Issues
XML Structures Web Programming Uta Priss ZELL, Ostfalia University 2013 Web Programming XML1 Slide 1/32 Outline XML Introduction Syntax: well-formed Semantics: validity Issues Web Programming XML1 Slide
More informationWhat is Transaction? Why Transaction Management Required? JDBC Transaction Management in Java with Example. JDBC Transaction Management Example
JDBC Transaction Management in Java with Example Here you will learn to implement JDBC transaction management in java. By default database is in auto commit mode. That means for any insert, update or delete
More informationXML: Managing with the Java Platform
In order to learn which questions have been answered correctly: 1. Print these pages. 2. Answer the questions. 3. Send this assessment with the answers via: a. FAX to (212) 967-3498. Or b. Mail the answers
More informationIntroduction to XML. M2 MIA, Grenoble Université. François Faure
M2 MIA, Grenoble Université Example tove jani reminder dont forget me this weekend!
More informationobject/relational persistence What is persistence? 5
contents foreword to the revised edition xix foreword to the first edition xxi preface to the revised edition xxiii preface to the first edition xxv acknowledgments xxviii about this book xxix about the
More informationTable of Contents. I. Pre-Requisites A. Audience B. Pre-Requisites. II. Introduction A. The Problem B. Overview C. History
Table of Contents I. Pre-Requisites A. Audience B. Pre-Requisites II. Introduction A. The Problem B. Overview C. History II. JPA A. Introduction B. ORM Frameworks C. Dealing with JPA D. Conclusion III.
More informationEnterprise JavaBeans, Version 3 (EJB3) Programming
Enterprise JavaBeans, Version 3 (EJB3) Programming Description Audience This course teaches developers how to write Java Enterprise Edition (JEE) applications that use Enterprise JavaBeans, version 3.
More informationXML. Jonathan Geisler. April 18, 2008
April 18, 2008 What is? IS... What is? IS... Text (portable) What is? IS... Text (portable) Markup (human readable) What is? IS... Text (portable) Markup (human readable) Extensible (valuable for future)
More informationEXtensible Markup Language XML
EXtensible Markup Language XML 1 What is XML? XML stands for EXtensible Markup Language XML is a markup language much like HTML XML was designed to carry data, not to display data XML tags are not predefined.
More informationIntroduction to XML. XML: basic elements
Introduction to XML XML: basic elements XML Trying to wrap your brain around XML is sort of like trying to put an octopus in a bottle. Every time you think you have it under control, a new tentacle shows
More informationData Presentation and Markup Languages
Data Presentation and Markup Languages MIE456 Tutorial Acknowledgements Some contents of this presentation are borrowed from a tutorial given at VLDB 2000, Cairo, Agypte (www.vldb.org) by D. Florescu &.
More informationEntities are classes that need to be persisted, usually in a relational database. In this chapter we cover the following topics:
Entities are classes that need to be persisted, usually in a relational database. In this chapter we cover the following topics: EJB 3 entities Java persistence API Mapping an entity to a database table
More informationTagSoup: A SAX parser in Java for nasty, ugly HTML. John Cowan
TagSoup: A SAX parser in Java for nasty, ugly HTML John Cowan (cowan@ccil.org) Copyright This presentation is: Copyright 2002 John Cowan Licensed under the GNU General Public License ABSOLUTELY WITHOUT
More informationEnterprise JavaBeans 3.1
SIXTH EDITION Enterprise JavaBeans 3.1 Andrew Lee Rubinger and Bill Burke O'REILLY* Beijing Cambridge Farnham Kbln Sebastopol Tokyo Table of Contents Preface xv Part I. Why Enterprise JavaBeans? 1. Introduction
More informationJAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP
2013 Empowering Innovation DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP contact@dninfotech.com www.dninfotech.com 1 JAVA 500: Core JAVA Java Programming Overview Applications Compiler Class Libraries
More information"Charting the Course... Mastering EJB 3.0 Applications. Course Summary
Course Summary Description Our training is technology centric. Although a specific application server product will be used throughout the course, the comprehensive labs and lessons geared towards teaching
More informationXML. extensible Markup Language. ... and its usefulness for linguists
XML extensible Markup Language... and its usefulness for linguists Thomas Mayer thomas.mayer@uni-konstanz.de Fachbereich Sprachwissenschaft, Universität Konstanz Seminar Computerlinguistik II (Miriam Butt)
More informationStruts: Struts 1.x. Introduction. Enterprise Application
Struts: Introduction Enterprise Application System logical layers a) Presentation layer b) Business processing layer c) Data Storage and access layer System Architecture a) 1-tier Architecture b) 2-tier
More informationCOMP9321 Web Application Engineering. Extensible Markup Language (XML)
COMP9321 Web Application Engineering Extensible Markup Language (XML) Dr. Basem Suleiman Service Oriented Computing Group, CSE, UNSW Australia Semester 1, 2016, Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2442
More informationLightweight J2EE Framework
Lightweight J2EE Framework Struts, spring, hibernate Software System Design Zhu Hongjun Session 4: Hibernate DAO Refresher in Enterprise Application Architectures Traditional Persistence and Hibernate
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options:
More informationShale and the Java Persistence Architecture. Craig McClanahan Gary Van Matre. ApacheCon US 2006 Austin, TX
Shale and the Java Persistence Architecture Craig McClanahan Gary Van Matre ApacheCon US 2006 Austin, TX 1 Agenda The Apache Shale Framework Java Persistence Architecture Design Patterns for Combining
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days Price: 1,995 + VAT Course Description: This course provides a comprehensive introduction to JPA (the Java Persistence API),
More informationextensible Markup Language
extensible Markup Language XML is rapidly becoming a widespread method of creating, controlling and managing data on the Web. XML Orientation XML is a method for putting structured data in a text file.
More informationCOMP9321 Web Application Engineering
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2411 1 Extensible
More informationIntroduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX
Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject
More informationOracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand)
Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand) Code: URL: D101074GC10 View Online The Developing Applications for the Java EE 7 Platform training teaches you how
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days Price: CDN$3275 *Prices are subject to GST/HST Course Description: This course provides a comprehensive introduction to JPA
More informationThe components of a basic XML system.
XML XML stands for EXtensible Markup Language. XML is a markup language much like HTML XML is a software- and hardware-independent tool for carrying information. XML is easy to learn. XML was designed
More informationXML Technologies. Doc. RNDr. Irena Holubova, Ph.D. Web pages:
XML Technologies Doc. RNDr. Irena Holubova, Ph.D. holubova@ksi.mff.cuni.cz Web pages: http://www.ksi.mff.cuni.cz/~holubova/nprg036/ Outline Introduction to XML format, overview of XML technologies DTD
More informationCourses For Event Java Advanced Summer Training 2018
Courses For Event Java Advanced Summer Training 2018 Java Fundamentals Oracle Java SE 8 Advanced Java Training Java Advanced Expert Edition Topics For Java Fundamentals Variables Data Types Operators Part
More informationHow to Develop a Simple Crud Application Using Ejb3 and Web Dynpro
How to Develop a Simple Crud Application Using Ejb3 and Web Dynpro Applies to: SAP Web Dynpro Java 7.1 SR 5. For more information, visit the User Interface Technology homepage. Summary The objective of
More informationMarkup Languages SGML, HTML, XML, XHTML. CS 431 February 13, 2006 Carl Lagoze Cornell University
Markup Languages SGML, HTML, XML, XHTML CS 431 February 13, 2006 Carl Lagoze Cornell University Problem Richness of text Elements: letters, numbers, symbols, case Structure: words, sentences, paragraphs,
More informationJVA-163. Enterprise JavaBeans
JVA-163. Enterprise JavaBeans Version 3.0.2 This course gives the experienced Java developer a thorough grounding in Enterprise JavaBeans -- the Java EE standard for scalable, secure, and transactional
More informationENTERPRISE JAVABEANS TM (EJB TM ) 3.1 TECHNOLOGY
ENTERPRISE JAVABEANS TM (EJB TM ) 3.1 TECHNOLOGY Kenneth Saks Senior Staff Engineer SUN Microsystems TS-5343 Learn what is planned for the next version of Enterprise JavaBeans (EJB ) technology 2008 JavaOne
More informationWeb scraping and crawling, open data, markup languages and data shaping. Paolo Boldi Dipartimento di Informatica Università degli Studi di Milano
Web scraping and crawling, open data, markup languages and data shaping Paolo Boldi Dipartimento di Informatica Università degli Studi di Milano Data Analysis Three steps Data Analysis Three steps In every
More informationCO Java EE 6: Develop Database Applications with JPA
CO-77746 Java EE 6: Develop Database Applications with JPA Summary Duration 4 Days Audience Database Developers, Java EE Developers Level Professional Technology Java EE 6 Delivery Method Instructor-led
More informationWHAT IS EJB. Security. life cycle management.
EJB WHAT IS EJB EJB is an acronym for enterprise java bean. It is a specification provided by Sun Microsystems to develop secured, robust and scalable distributed applications. To run EJB application,
More informationNotes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title
Notes Ask course content questions on Slack (is651-spring-2018.slack.com) Contact me by email to add you to Slack Make sure you checked Additional Links at homework page before you ask In-class discussion
More informationWhat data persistence means? We manipulate data (represented as object state) that need to be stored
1 Data Persistence What data persistence means? We manipulate data (represented as object state) that need to be stored persistently to survive a single run of the application queriably to be able to retrieve/access
More informationAnnotation Hammer Venkat Subramaniam (Also published at
Annotation Hammer Venkat Subramaniam venkats@agiledeveloper.com (Also published at http://www.infoq.com) Abstract Annotations in Java 5 provide a very powerful metadata mechanism. Yet, like anything else,
More informationCopyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 27-1
Slide 27-1 Chapter 27 XML: Extensible Markup Language Chapter Outline Introduction Structured, Semi structured, and Unstructured Data. XML Hierarchical (Tree) Data Model. XML Documents, DTD, and XML Schema.
More informationEJB 3 Entity Relationships
Berner Fachhochschule Technik und Informatik EJB 3 Entity Relationships Course Multi Tier Business Applications with Java EE Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Content What are relationships?
More informationXML Metadata Standards and Topic Maps
XML Metadata Standards and Topic Maps Erik Wilde 16.7.2001 XML Metadata Standards and Topic Maps 1 Outline what is XML? a syntax (not a data model!) what is the data model behind XML? XML Information Set
More informationObject-relational mapping EJB and Hibernate
T A R T U Ü L I K O O L MATEMAATIKA-INFORMAATIKATEADUSKOND Arvutiteaduse instituut Infotehnoloogia eriala Aleksandr Tkatšenko Object-relational mapping EJB and Hibernate Referaat aines Tarkvaratehnika
More informationXML. Objectives. Duration. Audience. Pre-Requisites
XML XML - extensible Markup Language is a family of standardized data formats. XML is used for data transmission and storage. Common applications of XML include business to business transactions, web services
More informationChapter 1 Introducing EJB 1. What is Java EE Introduction to EJB...5 Need of EJB...6 Types of Enterprise Beans...7
CONTENTS Chapter 1 Introducing EJB 1 What is Java EE 5...2 Java EE 5 Components... 2 Java EE 5 Clients... 4 Java EE 5 Containers...4 Introduction to EJB...5 Need of EJB...6 Types of Enterprise Beans...7
More informationM359 Block5 - Lecture12 Eng/ Waleed Omar
Documents and markup languages The term XML stands for extensible Markup Language. Used to label the different parts of documents. Labeling helps in: Displaying the documents in a formatted way Querying
More informationLeverage Rational Application Developer v8 to develop Java EE6 application and test with WebSphere Application Server v8
Leverage Rational Application Developer v8 to develop Java EE6 application and test with WebSphere Application Server v8 Author: Ying Liu cdlliuy@cn.ibm.com Date: June 24, 2011 2011 IBM Corporation THE
More informationCMP 436/774. Introduction to Java Enterprise Edition. Java Enterprise Edition
CMP 436/774 Introduction to Java Enterprise Edition Fall 2013 Department of Mathematics and Computer Science Lehman College, CUNY 1 Java Enterprise Edition Developers today increasingly recognize the need
More informationA tutorial report for SENG Agent Based Software Engineering. Course Instructor: Dr. Behrouz H. Far. XML Tutorial.
A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far XML Tutorial Yanan Zhang Department of Electrical and Computer Engineering University of Calgary
More informationXPath. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University
XPath Asst. Prof. Dr. Kanda Runapongsa Saikaew (krunapon@kku.ac.th) Dept. of Computer Engineering Khon Kaen University 1 Overview What is XPath? Queries The XPath Data Model Location Paths Expressions
More informationEJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java
EJB Enterprise Java EJB Beans ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY Peter R. Egli 1/23 Contents 1. What is a bean? 2. Why EJB? 3. Evolution
More information"Web Age Speaks!" Webinar Series
"Web Age Speaks!" Webinar Series Java EE Patterns Revisited WebAgeSolutions.com 1 Introduction Bibhas Bhattacharya CTO bibhas@webagesolutions.com Web Age Solutions Premier provider of Java & Java EE training
More informationCOMP9321 Web Application Engineering
COMP9321 Web Application Engineering Semester 2, 2017 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid= 2465 1
More informationThe XML Metalanguage
The XML Metalanguage Mika Raento mika.raento@cs.helsinki.fi University of Helsinki Department of Computer Science Mika Raento The XML Metalanguage p.1/442 2003-09-15 Preliminaries Mika Raento The XML Metalanguage
More information