Java Platform and IDE Netbeans 6.7 for Developing Enterprise and Web Applications


Published on

AACIMP 2009 Summer School lecture by Andrii Rodionov (Sun Microsystems). "Information Technology" stream. Sun Microsystems course. Part 4.

  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Java Platform and IDE Netbeans 6.7 for Developing Enterprise and Web Applications

  1. 1. Платформа Java и IDE Netbeans 6.7 для разработки Enterprise (корпоративных) и Web приложений • Андрей Родионов • Community manager • Sun Microsystems
  2. 2. Перечень тем • Двух- и трех– уровневая архитектура приложений • Обзор Java платформы: Java SE, Java EE, Java ME • IDE NetBeans как среда разработки разных типов приложений • Возможности Java EE для построения трех(много)- уровневых приложений • Glassfish Application Server - обзор, демонстрация работы • Технологии для разработки Web-уровня • Технологии для разработки бизнес-уровня • Практика > Web service > Java persistence > EJB
  3. 3. «Drinkens, Who is this?»
  4. 4. 3 Million People a Week Join the Network!
  5. 5. Java SE, Java EE, Java ME
  6. 6. Java SE, Java EE, Java ME
  7. 7. NetBeans IDE 6.7 Features • Java SE (Java Standard Edition) • Web and Java EE (Java Enterprise Edition) > Web Applications > Java EE Applications > Web Services • Mobility (Java Micro Edition) • Ruby, JRuby, Ruby on Rails • C and C++ • UML • SOA, XSLT Designer, WSDL and XML • JavaFX • Project Kanai
  8. 8. Двух- и трех– уровневая архитектура приложений • Возможность использования различных языков программирования для различных компонентов • Централизация компонентов • Балансировка нагрузки • Более эффективный доступ к данным • Улучшенная защита • Более простой доступ к внешним ресурсам
  9. 9. Java SE, Java EE, Java ME
  10. 10. Java Stadard Edition
  11. 11. Java Enterprise Edition • Построена на Java Standard Edition (Java SE) • Web Application Technologies • Web Services Technologies • Enterprise Application Technologies • Management and Security Technologies • Sun Java System Application Server (Glassfish)
  12. 12. Java EE для построения трех(много)- уровневых приложений
  13. 13. Java EE Components • Application clients and applets are components that run on the client • Java Servlet, JavaServer Faces, and JavaServer Pages (JSP) technology components are web components that run on the server • Enterprise JavaBeans (EJB) components (enterprise beans) are business components that run on the server
  14. 14. Java EE Clients • Web Clients > dynamic web pages containing various types of markup language (HTML, XML, and so on), which are generated by web components running in the web tier > web browser, which renders the pages received from the server • Applets • Application Clients • The JavaBeans Component Architecture
  15. 15. Java EE Server Communications
  16. 16. Web Components • Java Servlet technology • Java Server Pages (JSP) • Java Server Faces (JSF)
  17. 17. Business Components & Enterprise Information SystemTier
  18. 18. Архитектура API Java EE
  19. 19. Java EE 5 APIs • Java ServletTechnology • Java Architecture for XML Binding (JAXB) • JavaServer PagesTechnology • SOAP with Attachments API • JavaServer Pages for Java StandardTag Library • Java API for XML Registries • JavaServer Faces • J2EE Connector • Java Message Service API Architecture • JavaTransaction API • Java Database Connectivity • JavaMail API API • JavaBeans Activation • Java Persistence API Framework • Java Naming and Directory • Java API for XML Processing Interface • Java API for XMLWeb • Java Authentication and Services (JAX-WS) Authorization Service
  20. 20. Типы Web-приложений • Presentation-oriented > A presentation-oriented web application generates interactive web pages containing various types of markup language (HTML, XML, and so on) and dynamic content in response to requests. • Service-oriented > A service-oriented web application implements the endpoint of a web service. Presentation-oriented applications are often clients of service-oriented web applications
  21. 21. Технологии для разработки Web- уровня • Java Servlet technology • Java Server Pages (JSP) • Java Server Faces
  22. 22. Java Servlet technology • A servlet is a Java programming language class
  23. 23. Java Server Pages (JSP) • JavaServer Pages (JSP) technology allows you to easily create web content that has both static and dynamic components • A JSP page is a text document that contains two types of text: static data, which can be expressed in any text-based format (such as HTML, SVG,WML, and XML), and JSP elements, which construct dynamic content
  24. 24. Java Server Faces • JavaServer Faces technology is a server-side user interface component framework for Java technology-based web applications
  25. 25. Технологии для разработки бизнес- уровня • Web Services • Enterprise JavaBeans (EJB) > Session Bean (Stateful, Stateless) > Message-Driven Beans • Java Persistence
  26. 26. Web Services • Дает возможность удаленного вызова функций по протоколу HTTP • Клиент и сервер могут базироваться на разных программных платформах • Стандарт передачи данных SOAP (формат XML)
  27. 27. Enterprise JavaBeans (EJB) • Written in the Java programming language, an enterprise bean is a server-side component that encapsulates the business logic of an application. The business logic is the code that fulfills the purpose of the application. • Enterprise beans simplify the development of large, distributed applications • Enterprise beans are portable components, the application assembler can build new applications from existing beans
  28. 28. When to Use Enterprise Beans? • The application must be scalable. To accommodate a growing number of users, you may need to distribute an application’s components across multiple machines. • Transactions must ensure data integrity. Enterprise beans support transactions, the mechanisms that manage the concurrent access of shared objects. • The application will have a variety of clients. With only a few lines of code, remote clients can easily locate enterprise beans. These clients can be thin, various, and numerous.
  29. 29. Types of Enterprise Beans Session Bean - a session bean represents a single client inside the Application Server. To access an application that is deployed on the server, the client invokes the session bean’s methods > Stateful > Stateless • Message-Driven Beans - a message-driven bean is an enterprise bean that allows Java EE applications to process messages asynchronously. It normally acts as a JMS message listener, which is similar to an event listener except that it receives JMS messages instead of events.
  30. 30. Stateful session bean • The bean’s state represents the interaction between the bean and a specific client. • The bean needs to hold information about the client across method invocations. • The bean mediates between the client and the other components of the application, presenting a simplified view to the client. • Behind the scenes, the bean manages the work flow of several enterprise beans.
  31. 31. Stateless session bean • The bean’s state has no data for a specific client. • In a single method invocation, the bean performs a generic task for all clients. For example, you might use a stateless session bean to send an email that confirms an online order. • A stateless session bean can implement a web service, but other types of enterprise beans cannot.
  32. 32. Message-Driven Beans Session beans allow you to send JMS messages and to receive them synchronously, but not asynchronously. To avoid tying up server resources, do not to use blocking synchronous receives in a server-side component, and in general JMS messages should not be sent or received synchronously. To receive messages asynchronously, use a message-driven bean.
  33. 33. СПАСИБО!