Tworzenie aplikacji J2EE w oparciu o Spring Framework
|
|
- Stanisław Rosiński
- 8 lat temu
- Przeglądów:
Transkrypt
1 314 Tworzenie aplikacji J2EE w oparciu o Spring Framework Jeśli to rozumiesz, to znaczy, że już jest przestarzałe. Kryterium nowoczesności wg Bittona
2 Plan prezentacji 315 Wprowadzenie Infrastruktura Spring kontener IoC programowanie aspektowe fabryki komponentów Spring DAO transakcje w Spring Spring MVC
3 Wprowadzenie 316
4 Wprowadzenie do Spring 317 Spring to szkielet aplikacyjny rozwijany na licencji open source od 2003 roku "Expert one-on-one J2EE Design and Development" R.Johnson Ideologia J2EE jest zbyt skomplikowane, encyjne EJB są przestarzałe, złożone, nadużywane i prawie zbędne, lepiej wykorzystywać interfejsy niż dziedziczenie, komponenty JavaBean doskonale się nadają do tworzenia aplikacji, paradygmat obiektowy jest ważniejszy niż implementacja, obsługiwane wyjątki są nadużywane w aplikacjach Java, kluczową rolę pełni możliwość niezależnego testowania poszczególnych modułów.
5 Czym jest Spring? 318 Wielowarstwowy szkielet aplikacji Java/J2EE zawierający: lekki kontener umożliwiający scentralizowane zarządzanie i łączenie komponentów JavaBean i POJO, warstwę zarządzania transakcjami, warstwę obsługi JDBC wraz z hierarchią wyjątków, moduły umożliwiające integrację z Toplink, Hibernate, JDO i ibatis SQL Maps za pomocą standardowych DAO, pełnowartościowe środowisko obsługujące paradygmat programowania aspektowego AOP, elastyczne środowisko do tworzenia aplikacji internetowych zgodnie z modelem MVC umożliwiające integrację ze Struts, WebWork, Tapestry; Spring MVC wspiera także wiele technologii implementowania warstwy widoku, np. JSP, Velocity, Tiles.
6 Główne cele 319 Uproszczenie aplikacji J2EE eliminacja "martwego kodu" sklejającego poszczególne komponenty, dostarczenie wydajnych mechanizmów IoC i AOP. Luźne wiązanie aplikacji ze szkieletem kod aplikacji praktycznie uniezależniony od Spring API, promowanie dobrych praktyk programowania obiektowego, przekazanie logiki do POJO. Ułatwienie procesu testowania aplikacji tworzenie aplikacji w oparciu o testy (TDD, test-driven development), umożliwienie testowania obiektów biznesowych poza kontenerem. Święta wojna z encyjnymi komponentami EJB
7 Architektura Spring Framework 320
8 Schemat architektury Spring 321
9 Cechy Spring 322 Spring jest uzupełnieniem serwerów aplikacji cały szkielet tworzony z perspektywy aplikacji a nie serwera Pełna modułowość szkieletu można wykorzystać dowolną część Spring niezależnie od pozostałych Nie wyważa drzwi otwartych na oścież brak implementacji gdy istnieją już dobre rozwiązania: Log4J, O/R Dwa zdania przewodnie "Framework that makes the right thing easy to do" "Trying to find the simplest thing that can possibly work"
10 Składniki Spring Kontener podstawowa część architektury, głównym składnikiem jest BeanFactory zapewniająca mechanizm IoC (Inversion of Control) Spring context plik konfiguracyjny dostarczający opis środowiska: JNDI, EJB, wielojęzyczność, walidacja, itp. Spring AOP moduł implementujący mechanizm AOP (Aspect-Oriented Programming) i zapewniający transakcyjność przetwarzania Spring DAO hierarchia wyjątków ujednolicająca kody błędów różnych baz danych Spring ORM szablony ułatwiające korzystanie z narzędzi ORM Spring Web module integracja z Jakarta Struts i dostarczanie kontekstu aplikacjom webowym Spring MVC framework implementacja MVC obsługująca szeroką gamę technologii 323
11 Inversion of Control 324 Zasada Hollywood: "to nie Państwo dzwonią do nas lecz my dzwonimy do Państwa"! Użytkownik nie tworzy i łączy obiektów w aplikacji, lecz opisuje zależności między poszczególnymi klasami. Kontener jest w pełni odpowiedzialny za tworzenie obiektów i ich łączenie (wiring) Metody implementacji wzorca IoC: typ 1: obiekty implementują specjalny interfejs do wyszukiwania obiektów zależnych typ 2: zależności są ustawiane w obiektach przez metody setter typ 3: zależności są ustawiane w obiektach przez konstruktor
12 IoC - przykład (1/2) 325 public interface MovieFinder { List findall(); class MovieLister... private MovieFinder finder; w jaki sposób przechowywane są filmy? klasa MovieLister jest na trwałe związana z klasą IMDBMovieFinder public MovieLister() { this.finder = new IMDBMovieFinder(); public Movie[] moviesdirectedby(string arg) { List allmovies = finder.findall(); // przetwarzaj listę tytułów
13 public interface MovieFinder { List findall(); class IMDBMovieFinder implements MovieFinder... private String url; public void seturl(string url) { this.url = url; class MovieLister... private MovieFinder finder; IoC - przykład (2/2) public void setfinder(moviefinder finder) { this.finder = finder; public Movie[] moviesdirectedby(string arg) { List allmovies = finder.findall(); // przetwarzaj listę tytułów beans.xml <beans> <bean id="movielister" class="spring.movielister"> <property name="finder"> <ref local="moviefinder"/> </property> </bean> <bean id="moviefinder" class="spring.imdbmoviefinder"> <property name="url"> <value> </property> </bean> </beans> 326
14 Programowanie aspektowe 327 Dziennik aplikacji Obsługa Klienta Zamówienie Magazyn Trwałość obiektów aspekty Bezpieczeństwo moduły biznesowe
15 Programowanie aspektowe 328 Metoda programowania mająca na celu modularyzację kodu i likwidację nakładających się problemów przekrojowych Typowe problemy przekrojowe: zapisywanie dziennika, obsługa błędów, autoryzacja i uwierzytelnianie, zapewnianie trwałości. Podstawowe pojęcia AOP aspekt (aspect): nazwany problem przekrojowy, rada (advice): dodatkowe zachowanie/czynność które zostaje zaninicjowane w punkcie złączenia, punkt złączenia (join point): miejsce w strukturze wykonywania się aplikacji w którym powinna zostać zastosowana rada.
16 Spring AOP framework 329 Rodzaje rad: around advice: wykonuje się przed i po punkcie styku, ma możliwość przerwania przepływu kontroli programu przez zwrócenie własnej wartości lub wyjątku, before advice: wykonuje się przed punktem styku, nie może zablokować przepływu kontroli programu, throws advice: wykonuje się w momencie zgłoszenia wyjątku, after returning advice: wykonuje się po poprawnym wykonaniu. Aktualnie Spring AOP umożliwia wprowadzanie rad tylko w odniesieniu do metod. Doradzanie odbywa się przez przechwytywanie wywołań metod (brak specjalnej kompilacji). Głównym celem jest ścisła integracja Spring AOC i kontenera Spring IoC.
17 Spring AOP (przykład 1/2) public interface MyInterface { public void foo(); public class MyClass implements MyInterface { public void foo() { // tutaj ciało metody beans.xml <beans> <bean id="mybean" class="org.springframework.aop. framework.proxyfactorybean"> <property name="proxyinterfaces"> <value>myinterface</value> </property> <property name="target"> <ref local="beantarget"/> </property> </bean> <bean id="beantarget" class="myclass"/> </beans> 330 import java.lang.reflect.method; import org.springframework.aop.methodbeforeadvice; public class TraceBeforeAdvice implements MethodBeforeAdvice { public void before(method m, Object[] args, Object target) throws Throwable { // tutaj kod porady która ma się wykonać przed punktem styku
18 Spring AOP (przykład 2/2) beans.xml <beans> <bean id="mybean" class="org.springframework.aop.framework.proxyfactorybean"> <property name="proxyinterfaces"><value>myinterface</value></property> <property name="target"><ref local="beantarget"/></property> <property name="interceptornames"> <list><value>thetracingbeforeadvisor</value></list> </property> </bean> definicja obiektu proxy <bean id="beantarget" class="myclass"/> <bean id="thetracingbeforeadvisor" class="org.springframework.aop.support.regexpmethodpointcutadvisor"> <property name="advice"> <ref local="thetracingbeforeadvice"/> </property> definicja punktu styku <property name="pattern"> <value>./myinterface/.foo</value> </property> klasa zarządzająca poradami </bean> <bean id="thetracingbeforeadvice" class="tracingbeforeadvice"/> </beans> 331
19 Spring i AspectJ 332 Spring umożliwia specyfikację aspektów, punktów złączeń i rad na podstawowym poziomie. Zaawansowana funkcjonalność AOP jest zapewniona przez integrację z zaawansowanymi szkieletami, np. AspectJ, AspectWerkz public aspect Tracing { public static boolean enabled = false; pointcut tobetraced() : call(*spring.*.*(int,string...)) execution(new(..)); before() : tobetraced() && if(enabled) { Object[] args = thisjoinpoint.getargs(); // sczytanie argumentów i zapisanie logu
20 Fabryki komponentów 333 Podstawowa funkcjonalność Spring jest udostępniana przez pakiet org.springframework.beans. Pakiet zawiera infrastrukturę umożliwiającą wyszukiwanie i wiązanie komponentów JavaBean. BeanFactory to główna fabryka dostarczająca komponentów JavaBean i zarządzająca tworzeniem i wiązaniem komponentów, ApplicationContext to interfejs rozszerzający BeanFactory o obsługę komunikatów i internacjonalizacji, obsługę zdarzeń i możliwość rejestrowania nasłuchu zdarzeń, poza środowiskiem o ograniczonej pamięci (np. applety Java) zaleca się stosowanie ApplicationContext import org.springframework.context.applicationcontext; import org.springframework.context.support.classpathxmlapplicationcontext; class Foo {... ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");...
21 Komponenty JavaBean 334 Spring nie nakłada na klasy POJO żadnych dodatkowych wymagań dotyczących rozszerzanych klas lub implementowanych interfejsów Dwa tryby tworzenia komponentów: singleton: fabryka tworzy jedną instancję komponentu JavaBean o podanej nazwie, wszystkie żądania współdzielą jeden komponent, prototype: w odpowiedzi na każde żądanie fabryka tworzy nową instancję komponentu JavaBean. Fabryki dostarczają mechanizmu zarządzania cyklem życia komponentu, interfejsy InitializingBean i DisposableBean umożliwiają podejmowanie określonych akcji podczas tworzenia i niszczenia komponentu
22 Przykład (1/3) 335 package ploug.spring; class Department { String name; String location; public void setname(string name) { this.name = name; public String getname() { return name; public void setlocation(string location) { this.location = location; public String getlocation() { return location; class Employee { String name; Department department; public void setname(string name) { this.name = name; public String getname() { return name; public void setdepartment(department department) {this.department=department; public Department getdepartment() { return department;
23 Przykład (2/3) 336 beans.xml <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " <beans> <bean id="employeebean" class="ploug.spring.employee"> <property name="name" value="mikolaj Morzy"/> <property name="department"> <ref bean="departmentbean"/> </property> </bean> wskazanie komponentu zależnego <bean id="departmentbean" class="ploug.spring.department" singleton="true"> <property name="name" value="database Systems"/> <property name="location" value="piotrowo 2"/> </bean> </beans> zostaną wywołane metody setter obiektu: setname("database Systems") setlocation("piotrowo 2") tryb tworzenia komponentu
24 Przykład (3/3) 337 package ploug.spring; import org.springframework.context.applicationcontext; import org.springframework.context.support.classpathxmlapplicationcontext; public class SpringTest { public static void main(string[] args) { ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); Employee employee = (Employee)ctx.getBean("employeeBean"); System.out.println("Name: " + employee.getname()); System.out.println("Department: " + employee.getdepartment().getname()); System.out.println("Location: " + employee.getdepartment().getlocation());... Name: Mikolaj Morzy Department: Database Systems Location: Piotrowo 2 utworzenie komponentu employeebean i powiązanie wszystkich obiektów zależnych
25 Spring DAO 338 Data Access Object (DAO) to powszechnie stosowany wzorzec projektowy dostępu do danych zewnętrznych zakładający rozdzielenie kodu odpowiedzialnego za trwałość obiektów od kodu implementującego reguły biznesowe. Spring oferuje wsparcie dla: interfejsu JDBC, narzędzi O/R: Hibernate, JDO, ibatis SQL Maps. Dlaczego kolejna warstwa nad JDBC? zarządzanie obiektami Connection, ResultSet, Statement uniwersalny wyjątek SQLException: różne kody błędów
26 Spring DAO JDBC 339 W odniesieniu do JDBC Spring oferuje następujące cechy: spójna hierarchia wyjątków DataAccessException opakowująca wyjątek SQLException, możliwość wykorzystywania mechanizmu callback (przez interfejs JdbcTemplate) lub modelowanie JDBC w postaci zbioru obiektów, całkowicie automatyczna obsługa bloków try/catch/finally automatyczne i gwarantowane zamykanie wszystkich połączeń, automatyczne tłumaczenie kodów błędów producenta bazy danych na ogólną hierarchię wyjątków, wsparcie dla wywoływania procedur składowanych.
27 Spring DAO JDBC - przykład (1/4) import org.springframework.jdbc.core.jdbctemplate; import org.springframework.jdbc.datasource.drivermanagerdatasource; import org.springframework.jdbc.badsqlgrammarexception;... DriverManagerDataSource dbbean = (DriverManagerDataSource)ctx.getBean("dbBean"); JdbcTemplate template = new JdbcTemplate(dbBean); int count = template.queryforint("select count(*) from emp"); System.out.println("Number of employees: " + count); List result = template.queryforlist("select * from emp"); for (Object o : result) { Map map = (Map)o; System.out.println(map.get("ENAME") + " " + map.get("job")); try { template.execute("dropp table emp"); catch (BadSqlGrammarException e) { // obsłuż wyjątek
28 Spring DAO JDBC - przykład (2/4) 341 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " beans.xml <beans> tylko dla testów, w rzeczywistej aplikacji... należy użyć JndiObjectFactoryBean <bean id="dbbean" class="org.springframework.jdbc.datasource.drivermanagerdatasource"> <property name="driverclassname" value="oracle.jdbc.driver.oracledriver"/> <property name="url" value="jdbc:oracle:thin:@miner.cs.put.poznan.pl:1521:miner10g"/> <property name="username" value="mikolaj"/> <property name="password" value="*****"/> </bean> </beans> Number of employees: 14 SMITH CLERK ALLEN SALESMAN WARD SALESMAN JONES MANAGER MARTIN SALESMAN... StatementCallback; bad SQL grammar [dropp table emp]; nested exception is java.sql.sqlexception: ORA-00900: invalid SQL statement
29 Spring DAO JDBC - przykład (3/4) public class EmployeeJdbcDao extends JdbcDaoSupport implements EmployeeDao { public List getemployees() { JdbcTemplate template = getjdbctemplate(); return (List)template.query("select ename, job from emp", new RowMapperResultSetExtractor(new EmployeeRowMap())); class EmployeeRowMap implements RowMapper { public Object maprow(resultset resultset, int i) throws SQLException { Employee emp = new Employee(); emp.setname(resultset.getstring(1)); emp.setjob(resultset.getstring(2)); return emp; EmployeeDao.java package pl.org.ploug.spring; import java.util.list; public interface EmployeeDao { public List getemployees();
30 Spring DAO JDBC - przykład (4/4) public class EmployeeJdbcDao extends JdbcDaoSupport implements EmployeeDao {... public static void main(string[] args) { EmployeeJdbcDao employeejdbcdao = new EmployeeJdbcDao(); ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); DriverManagerDataSource dbbean = (DriverManagerDataSource)ctx.getBean("dbBean"); employeejdbcdao.setdatasource(dbbean);... for (Object o : employeejdbcdao.getemployees()) { Employee e = (Employee)o; System.out.println("Employee: " + e.getname() + " " + e.getjob()); Employee: SMITH CLERK Employee: ALLEN SALESMAN Employee: WARD SALESMAN Employee: JONES MANAGER Employee: MARTIN SALESMAN Employee: BLAKE MANAGER...
31 Transakcje w Spring 344 Spring dostarcza infrastruktury do obsługi transakcji PlatformTransactionManager do programowego zarządzania transakcjami, szablon TransactionTemplate do wygodnego użytku, deklaratywne zarządzanie transakcjami (na wzór EJB) za pomocą POJO i programowania aspektowego przy użyciu ProxyFactoryBean i TransactionInterceptor, demarkacja transakcji przez metadane i anotacje, możliwość wyboru między JTA, Hibernate, JDO, JDBC, spójny obraz dla transakcji lokalnych i globalnych.
32 Transakcje w Spring - przykład (1/2) <bean id="datasource" class="org.springframework.jndi.jndiobjectfactorybean"> <property name="jndiname" value="java:comp/env/jdbc/miner10g"/> </bean> <bean id="transactionmanager" class="org.springframework.transaction.jta.jtatransactionmanager"/> <bean id="empmanagerjdbcbean" class="ploug.spring.empmanagerjdbc"> <property name="datasource"><ref bean="datasource"/></property> </bean> <bean id="empmanagerbean" class="org.springframework.transaction.interceptor.transactionproxyfactorybean"> <property name="transactionmanager"> <ref bean="transactionmanager"/></property> <property name="target"> <ref bean="empmanagerjdbcbean"/></property> <property name="transactionattributes"> <props> <prop key="load*">propagation_required,readonly</prop> <prop key="store*">propagation_required</prop> </props> </property> </bean>
33 Transakcje w Spring - przykład (2/2)... beans.xml <bean id="datasource" class="org.springframework.jndi.jndiobjectfactorybean"> <property name="jndiname" value="java:comp/env/jdbc/miner10g"/> </bean> <bean id="transactionmanager" class="org.springframework.transaction.jta.jtatransactionmanager"/> <bean id="empmanagerjdbcbean" class="ploug.spring.empmanagerjdbc"> <property name="datasource"><ref bean="datasource"/></property> </bean> <bean id="empmanagerbean" class="org.springframework.transaction.interceptor.transactionproxyfactorybean"> <property name="transactionmanager"> <ref bean="transactionmanager"/></property> <property name="target"> <ref bean="empmanagerjdbcbean"/></property> <property name="transactionattributes"> <props> <prop key="load*">propagation_required,readonly</prop> <prop key="store*">propagation_required</prop> </props> </property> </bean> PROPAGATOIN_REQUIRED, PROPAGATION_SUPPORTS, PROPAGATION_MANDATORY, PROPAGATION_REQUIRES_NEW, PROPAGATION_NOT_SUPPORTED, PROPAGATION_NEVER 346
34 Spring MVC 347 Spring MVC przypomina architekturę Struts wszystkie żądania określonego typu są obsługiwane przez współdzielony kontroler Kontrolery i interceptory wykonują się wewnątrz kontenera IoC i w pełni korzystają z mechanizmu Dependence Injection Zalety w porównaniu ze Struts: bardziej elastyczna architektura, serwlety DispatcherServlet współdzielą kontekst aplikacji, bardzo łatwa konfiguracja środowiska, interfejs nie jest oparty na dziedziczeniu klas, niewielki stopień zależności aplikacji od szkieletu, niezwiązany ściśle z JSP w wartwie widoku (Velocity, Excel, PDF, możliwość definiowania własnego mechanizmu prezentacji).
35 Spring MVC 348 Zalety w porównaniu ze Struts (ciąg dalszy): wyraźna separacja warstw modelu, widoku i kontrolera, model nie jest ściśle uzależniony od Spring API lub Servlet API, zamiast ActionForm do obsługi formularzy można wykorzystywać obiekty modelu, (!) bardzo łatwe testowanie poszczególnych modułów aplikacji webowej przy pomocy JUnit, integracja z warstwą pośrednią (ang. middle tier) bez konieczności jakiegokolwiek kodowania (eliminacja obiektów ServiceLocator i Singleton), integracja z popularnymi technologiami warstwy prezentacji: WebWork, Tapestry, Struts, intensywne prace nad integracją Spring i JSF są aktualnie w toku.
36 Składniki Spring MVC (1/3) Zarządca ServletDispatcher podstawowy punkt wejścia do aplikacji, musi być zadeklarowany w web.xml, odpowiada za przyjmowanie żądań z zewnątrz i przekierowywanie żądań do właściwych kontrolerów. ServletDispatcher musi utworzyć kontekst aplikacji webowej (WebApplicationContext). Konfiguracja musi się mieścić w pliku o nazwie WEB-INF/servletname-servlet.xml <?xml version = '1.0' encoding = 'windows-1252'?> <web-app> <servlet> <servlet-name>empdept</servlet-name> <servlet-class>org.springframework.web.servlet.dispatcherservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>empdept</servlet-name> <url-pattern>/empdept/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> web.xml 349
37 Składniki Spring MVC (2/3) <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " empdept-servlet.xml 350 <beans> <bean name="/index" class="ploug.spring.empdeptcontroller"/> <bean id="dbbean" class="org.springframework.jdbc.datasource.drivermanagerdatasource"> <property name="driverclassname" value="oracle.jdbc.driver.oracledriver"/> <property name="url" <property name="username" value="scott"/> <property name="password" value="tiger"/> </bean> <bean class="org.springframework.web.servlet.view.internalresourceviewresolver"> <property name="prefix"><value>/web-inf/jsp/</value></property> <property name="suffix"><value>.jsp</value></property> <property name="viewclass"> <value>org.springframework.web.servlet.view.jstlview</value> </property> </bean> index.jsp </beans> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " page contenttype="text/html;charset=windows-1252"%> <jsp:forward page="example/index"/>
38 package ploug.spring; import... Składniki Spring MVC (3/3) EmpDeptController.java 351 public class ExampleController implements Controller { public ModelAndView handlerequest( HttpServletRequest request,httpservletresponse response) throws ServletException, IOException { ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); DriverManagerDataSource dbbean = (DriverManagerDataSource)ctx.getBean("dbBean"); JdbcTemplate template = new JdbcTemplate(dbBean); List employeesraw = template.queryforlist("select ename from emp"); List employees = new ArrayList(); for (Object o : employeesraw) employees.add(((map)o).get("ename")); ModelAndView mv = new ModelAndView("emps"); mv.addobject("employees", employees); return mv; komponent JavaBean <%@ page contenttype="text/html;charset=windows-1252" %> <%@ taglib uri=" prefix="c" %> <html> <body> <c:foreach var="emp" items="${employees"> <c:out value="${emp"/> <br/> </c:foreach> </body> </html> WEB-INF/jsp/emps.jsp
Zaawansowane aplikacje internetowe. Architektura Spring. wykład prowadzi Mikołaj Morzy. Architektura Spring
Architektura Spring wykład prowadzi Mikołaj Morzy Architektura Spring 1 Plan wykładu Wprowadzenie Infrastruktura Spring Kontener Inversion of Control / Dependency Injection Programowanie aspektowe Fabryki
Bardziej szczegółowoWielowarstwowe aplikacje internetowe. Spring. Autorzy wykładu: Mikołaj Morzy Marek Wojciechowski. Spring
Wielowarstwowe aplikacje internetowe Spring Autorzy wykładu: Mikołaj Morzy Marek Wojciechowski Spring Plan wykładu Wprowadzenie Infrastruktura Spring Kontener Inversion of Control / Dependency Injection
Bardziej szczegółowoTomasz Dobek. t.dobek@students.mimuw.edu.pl
Spring Framework Tomasz Dobek t.dobek@students.mimuw.edu.pl Plan prezentacji Spring z lotu ptaka Kontener Spring IoC Spring AOP Menedżer transakcji w Springu Spring DAO Testy integracyjne Podsumowanie
Bardziej szczegółowo1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Bardziej szczegółowomgr inż. Michał Paluch
Technologie JAVA Java Platform Standard Edition JSE Java Platform Enterprise Edition JEE Java Platform Micro Edition Wersje Różnice Java Enterprise Edition Java EE to platforma umożliwiająca tworzenie
Bardziej szczegółowomgr inż. Michał Paluch
Spring DAO Wzorzec projektowy Data Access Object (DAO) rozdzielenie mechanizmu trwałości obiektów od reguł biznesowych Oferuje wsparcie dla interfejsu JDBC narzędzi ORM: Hibernate, JDO, ibatis SQL Maps
Bardziej szczegółowoWprowadzenie. Spring 2.5. Norbert Potocki. 3 lutego Norbert Potocki Spring 2.5
Wprowadzenie 3 lutego 2009 Wprowadzenie Spring zrąb tworzenia aplikacji JEE (ale nie tylko) w języku Java (ale nie tylko :)) powstał jako alternatywa dla ociężałej technologii EJB 2 i jako alternatywa
Bardziej szczegółowoSpring framework. Paweł Kędziora. Marek Lewandowski
Spring framework Paweł Kędziora Marek Lewandowski Plan prezentacji Motywacje Architektura Spring DAO, dostęp do bazy danych, Web MVC Spring 2.0 Podsumowanie Spring framework 1 Plan prezentacji Motywacje
Bardziej szczegółowoZaawansowane aplikacje internetowe - laboratorium Architektura Spring.
Zaawansowane aplikacje internetowe - laboratorium Architektura Spring. Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej architekturę Spring. Aplikacja składa się z jednego
Bardziej szczegółowoPodstawy frameworka Spring
Podstawy frameworka Spring Adresaci szkolenia: Szkolenie przeznaczone jest dla programistów znających język Java, chcących poszerzyć swoje kompetencje w zakresie tworzenia aplikacji.koncepcja szkolenia
Bardziej szczegółowoZaawansowane Aplikacje Internetowe
Spring framework Katedra Mikroelektroniki i Technik Informatycznych Łódź, 26 października 2010 1 Spring Framework Spring Framework Framework dostarczający między innymi: Kontener IoC (Inversion of Control)
Bardziej szczegółowoSPRING FRAMEWORK. dr inż. Jakub Chłapioski
SPRING FRAMEWORK Katedra Mikroelektroniki i Technik Informatycznych Politechniki Łódzkiej ul. Wólczanska 221/223 budynek B18, 90-924 Łódź dr inż. Jakub Chłapioski 3. Spring Data Access Zarządzanie transakcjami
Bardziej szczegółowoBudowa aplikacji w technologii. Enterprise JavaBeans. Maciej Zakrzewicz PLOUG
Budowa aplikacji w technologii Enterprise JavaBeans Maciej Zakrzewicz PLOUG Plan prezentacji Przegląd architektur aplikacji rozproszonych: CORBA, SOAP, EJB Wprowadzenie do Enterprise JavaBeans (EJB) Budowa
Bardziej szczegółowoPlan prezentacji. Budowa aplikacji w technologii Enterprise JavaBeans. Przegląd architektur: CORBA. Cele budowy aplikacji rozproszonych
Plan prezentacji Budowa aplikacji w technologii Enterprise JavaBeans Przegląd architektur aplikacji rozproszonych: CORBA,, Wprowadzenie do Enterprise JavaBeans () Budowa komponentów sesyjnych Budowa komponentów
Bardziej szczegółowoSzkolenie wycofane z oferty. Program szkolenia: Enterprise Java Beans 3.0/3.1
Szkolenie wycofane z oferty Program szkolenia: Enterprise Java Beans 3.0/3.1 Informacje: Nazwa: Enterprise Java Beans 3.0/3.1 Kod: Java-EE-EJB Kategoria: Java EE Grupa docelowa: developerzy Czas trwania:
Bardziej szczegółowoJava Enterprise Edition spotkanie nr 1. Sprawy organizacyjne, wprowadzenie
Java Enterprise Edition spotkanie nr 1 Sprawy organizacyjne, wprowadzenie 1 Informacje organizacyjne Program: Co będzie na tym wykładzie, a czego nie będzie? apteka rolnictwo Java Enterprise Edition vs
Bardziej szczegółowoZagadnienia projektowania aplikacji J2EE
211 Zagadnienia projektowania aplikacji J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 212 Wstęp Techniki projektowe: Wprowadzenie modułu
Bardziej szczegółowoPico. Wstęp do kontenerów IoC.
Pico Wstęp do kontenerów IoC Michal.Malecki@man.poznan.pl Plan prezentacji Wzorzec Inversion of Control (IoC) Wyszukiwanie zależności (Dependency Injection) PicoContainer Case Study Podsumowanie Inversion
Bardziej szczegółowoEnterprise JavaBeans. 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss.
1 Enterprise JavaBeans 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss. 2 Enterprise JavaBeans Enterprise JavaBeans (EJB) to specyfikacja
Bardziej szczegółowoWeb frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida
Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida Cel pracy Analiza wybranych ram projektowych dostępnych dla platformy Java Warunki selekcji napisany z wykorzystaniem języka Java oraz
Bardziej szczegółowoTworzenie aplikacji internetowych z wykorzystaniem szkieletu Spring. Paweł Ociepa, Paweł Pierzchała
Tworzenie aplikacji internetowych z wykorzystaniem szkieletu Spring Paweł Ociepa, Paweł Pierzchała ociepa.pawel@gmail.com paw.pierzchala@gmail.com 20.05.2010 Cel prezentacji Przedstawić Spring Framework
Bardziej szczegółowoSpring Framework - wprowadzenie i zagadnienia zaawansowane
Program szkolenia: Spring Framework - wprowadzenie i zagadnienia zaawansowane Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Spring Framework - wprowadzenie i zagadnienia
Bardziej szczegółowoProgramowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków
Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................
Bardziej szczegółowo<bean name="datecontroller" class="controllers.datecontroller" /> package controllers;
Spring Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej architekturę Spring. Do wykonania ćwiczenia potrzebne jest zintegrowane środowisko programistyczne NetBeans IDE
Bardziej szczegółowoWzorce prezentacji internetowych
Wzorce prezentacji internetowych 1. Model kontrolera widoku (Model View Controller). 2. Kontroler strony (Page Controller). 3. Kontroler fasady (Front Controller). 4. Szablon widoku (Template View). 5.
Bardziej szczegółowoEnterprise JavaBeans
Enterprise JavaBeans 1. Wprowadzenie. 2. Przegląd komponentów EJB. komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 3. Kontener komponentów EJB: JBoss. 1 Enterprise JavaBeans
Bardziej szczegółowoWykład dla studentów Informatyki Stosowanej UJ 2012/2013
e-biznes Wykład dla studentów Informatyki Stosowanej UJ 2012/2013 Michał Cieśla pok. 440a, email: michal.ciesla@uj.edu.pl konsultacje: środy 10-12 http://users.uj.edu.pl/~ciesla/ 1 Literatura B. Burke,
Bardziej szczegółowoEJB 2.x oraz zmiany w standardzie dla EJB 3.0. Michał Stanek
Enterprise JavaBean EJB 2.x oraz zmiany w standardzie dla EJB 3.0 Michał Stanek Plan prezentacji Czym jest EJB Architektura aplikacji J2EE oraz kontener EJB Typy komponentów JavaBean EJB 1.0, EJB 2.x Wady
Bardziej szczegółowoProgramowanie komponentowe 5
Budowa warstwy klienta w architekturze typu klient-serwer zbudowanych z komponentów typu EE - klient desktopowy i internetowy. Zastosowanie komponentów opartych na technologii EJB 3.2. na podstawie https://docs.oracle.com/javaee/7/jeett.pdf
Bardziej szczegółowoContexts and Dependency Injection (CDI) Autor wykładu: Marek Wojciechowski
Contexts and Dependency Injection (CDI) Autor wykładu: Marek Wojciechowski ASP.NET (2) Contexts and Dependency Injection (CDI) Specyfikacja składowa Java EE 6 dotycząca współpracy warstwy prezentacji z
Bardziej szczegółowoSpring Framework. Profesjonalne tworzenie oprogramowania w Javie
IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE
Bardziej szczegółowoEJB 3.0 (Enterprise JavaBeans 3.0)
EJB 3.0 (Enterprise JavaBeans 3.0) Adrian Dudek Wirtualne Przedsiębiorstwo 2 Wrocław, 1 czerwca 2010 Plan prezentacji 1 Wprowadzenie Cel prezentacji Czym jest EJB 3.0? Historia 2 3 Cel prezentacji Wprowadzenie
Bardziej szczegółowoWarstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.
Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy
Bardziej szczegółowoMETODY PROGRAMOWANIA
METODY PROGRAMOWANIA Odwrócenie sterowania i wstrzykiwanie zależności na przykładzie Spring Framework 13 stycznia 2018 Krzysztof Pawłowski kpawlowski@pjwstk.edu.pl CZYM JEST ODWRÓCENIE STEROWANIA? Odwrócenie
Bardziej szczegółowoprepared by: pawel@kasprowski.pl Programowanie WWW Model-View-Controller
Programowanie WWW Model-View-Controller Przypomnienie problemu Aplikacja do liczenia kredytów Klasa Kredyt Formatka do wprowadzania danych (czysty HTML) Skrypt liczący ratę (JSP wykorzystujące klasę Kredyt)
Bardziej szczegółowoWywoływanie metod zdalnych
Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia
Bardziej szczegółowoSzkolenie wycofane z oferty
Szkolenie wycofane z oferty Program szkolenia: Java Server Faces 2 Informacje: Nazwa: Java Server Faces 2 Kod: Java-EE-JSF 2 Kategoria: Java EE Grupa docelowa: developerzy Czas trwania: 3 dni Forma: 50%
Bardziej szczegółowoZagadnienia Programowania Obiektowego Agata Hejmej
Zagadnienia Programowania Obiektowego 3.11.2008 Agata Hejmej Plan prezentacji co to jest Struts2? krótki przegląd typów podejść przy tworzeniu aplikacji webowych architektura MVC i MVC2 architektura Struts2
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe IV. Interfejsy i klasy wewnętrzne Małgorzata Prolejko OBI JA16Z03 Plan Właściwości interfejsów. Interfejsy a klasy abstrakcyjne. Klonowanie obiektów. Klasy wewnętrzne. Dostęp do
Bardziej szczegółowoRemote Method Invocation 17 listopada 2010
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja klienckak interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoNowoczesne aplikacje internetowe oparte na Spring Framework, JSF, JPA i AJAX
Kod szkolenia: Tytuł szkolenia: SPRING/JSF Nowoczesne aplikacje internetowe oparte na Spring Framework, JSF, JPA i AJAX Dni: 5 Opis: Cel szkolenia: Celem szkolenia jest poznanie zasad budowania aplikacji
Bardziej szczegółowoPrzegląd d innych rozwiąza. zań szkieletowych dla J2EE
420 Przegląd d innych rozwiąza zań szkieletowych dla J2EE Plan prezentacji 421 WebWork Tapestry Turbine AppFuse WebWork 422 WebWork 423 Technologia szkieletowa ułatwiająca konstrukcję aplikacji J2EE zgodnych
Bardziej szczegółowoObsługa transakcji rozproszonych Java. Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska
Obsługa transakcji rozproszonych w języku j Java Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska Plan prezentacji Transakcje i ich własności Proste transakcje w JDBC
Bardziej szczegółowoWeb frameworks do budowy aplikacji zgodnych z J2EE
Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym
Bardziej szczegółowoRemote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1
interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoSerwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.
Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Serwer aplikacji Serwer aplikacji to: Serwer wchodzący w skład sieci komputerowej, przeznaczony
Bardziej szczegółowoPodejście obiektowe do budowy systemów rozproszonych
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak (IIPP) 1 Mechanizm
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki
Bardziej szczegółowoSerwlety Java: zagadnienia zaawansowane. Data Sources. Data Sources. Przykład pliku data-sources.xml
Serwlety Java: zagadnienia zaawansowane Data Sources Data Sources Przykład pliku data-sources.xml Obiekt Data Source stanowi logiczną definicję bazy danych programista korzysta z obiektu Data Source serwer
Bardziej szczegółowoAplikacje internetowe i rozproszone - laboratorium
Aplikacje internetowe i rozproszone - laboratorium Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z technologią EJB w wersji 3.0, a w szczególności: implementacja komponentów sesyjnych,
Bardziej szczegółowoJAVA W SUPER EXPRESOWEJ PIGUŁCE
JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie
Bardziej szczegółowoWzorce Strukturalne. Adapter: opis. Tomasz Borzyszkowski
Adapter: opis Wzorce Strukturalne Tomasz Borzyszkowski Alternatywna nazwa: Wrapper (opakowanie) Rola obiektu Adapter: pełni wobec Klienta rolę otoczki, która umożliwia przetłumaczenie jego żądań na protokół
Bardziej szczegółowoJava Server Faces narzędzie do implementacji w wy prezentacji
Java Server Faces narzędzie do implementacji w wy prezentacji pojęcie komponentu powiązanie z modelem danych widok (View) jako drzewo komponentów obiekty pomocnicze: konwertery, walidatory, obsługa zdarzeń
Bardziej szczegółowoPodejście obiektowe do budowy systemów rozproszonych
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak 1 Mechanizm RMI umożliwia
Bardziej szczegółowoJava RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoZłożone komponenty JSF wg
Złożone komponenty JSF wg https://docs.oracle.com/javaee/7/jeett.pdf http://www.coreservlets.com Technologie internetowe 9 1 Opis znaczników obsługiwanych przez Facelets (tutorial EE 7) 2 Przegląd znaczników
Bardziej szczegółowoWywoływanie metod zdalnych
Wywoływanie metod zdalnych Podejście obiektowe do budowy systemów rozproszonych Wywoływanie metod zdalnych model systemu obiekt aplikacja kliencka interfejs serwer proxy szkielet sieć Istota podejścia
Bardziej szczegółowoDostęp do baz danych z aplikacji J2EE
47 Dostęp do baz danych z aplikacji J2EE Marek Wojciechowski Marek.Wojciechowski@cs.put.poznan.pl http://www.cs.put.poznan.pl/mwojciechowski/ Plan rozdziału 48 Źródła danych w JDBC Java Naming and Directory
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 5 Marcin Młotkowski 23 marca 2017 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 50 Historia Początkowe założenia Projekt OAK Sterowanie urządzeniami
Bardziej szczegółowoWstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008
Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF
Bardziej szczegółowoZaawansowane Aplikacje Internetowe
framework Katedra Mikroelektroniki i Technik Informatycznych Łódź, 13 października 2010 1 Wprowadzenie Informacje organizacyjne 2 3 4 Informacje o przedmiocie Informacje organizacyjne Dokładne informacje
Bardziej szczegółowoJavaServer Faces (JSF)
JavaServer Faces (JSF) Autor wykładu: Marek Wojciechowski Plan wykładu JSF jako infrastruktura aplikacji WWW JSF.x Nowe cechy JSF.0 Java Enterprise Edition (Java EE) JavaServer Faces (JSF) Java Enterprise
Bardziej szczegółowoAplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów
Bardziej szczegółowoMateriały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 8.1, opracowanie materiału: Piotr Nierebiński, Mateusz Turski (na podstawie materiału oryginalnego
Bardziej szczegółowoJava RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć
interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka stub interfejs serwer szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoKomponenty sterowane komunikatami
Komponenty sterowane komunikatami 1. Usługa JMS asynchroniczność, model przesyłania komunikatów, 2. Przykład wysyłanie wiadomości, odbieranie wiadomości, komponent sterowany komunikatami 3. Komponenty
Bardziej szczegółowoTworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2
Kod szkolenia: Tytuł szkolenia: EJB Tworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2 Dni: 3 Opis: Adresaci szkolenia: Szkolenie adresowane jest
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoZaawansowane aplikacje internetowe - laboratorium Web Services (część 1).
Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).
Bardziej szczegółowoMapowanie obiektowo-relacyjne z wykorzystaniem Hibernate
Wirtualne przedsiębiorstwo II Mapowanie obiektowo-relacyjne z wykorzystaniem Hibernate Łukasz Macierzyński 157588 Daniel Nikończuk 157621 Kacper Oko 157626 Agenda 1. Co to jest mapowanie obiektowo-relacyjne
Bardziej szczegółowoJava. Wykład. Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ
Procesy i wątki Proces posiada samodzielne środowisko wykonawcze. Proces posiada własny zestaw podstawowych zasobów w czasie wykonywania; W szczególności, każdy proces ma własną przestrzeń pamięci. W uproszczeniu
Bardziej szczegółowoWarstwa prezentacji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.
Warstwa prezentacji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Definicja warstwy prezentacji - pięciowarstwowy model logicznego rozdzielania zadań 2. Podstawowe przypadki - analiza
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoProjektowanie aplikacji J2EE w architekturze Model-View-Controller
XI Konferencja PLOUG Kościelisko Październik 2005 Projektowanie aplikacji J2EE w architekturze Model-View-Controller Maciej Zakrzewicz PLOUG, Instytut Informatyki Politechniki Poznańskiej mzakrz@cs.put.poznan.pl
Bardziej szczegółowoAplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, )
Kod szkolenia: Tytuł szkolenia: JEE/JSP Aplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, ) Dni: 5 Opis: Adresaci szkolenia: Szkolenie adresowane jest do programistów
Bardziej szczegółowoBEAN VALIDATION. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
BEAN VALIDATION Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Bean Validation Uniwersalny mechanizm walidacji danych we wszystkich warstwach aplikacji Warstwa interfejsu,
Bardziej szczegółowoRemote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1
P d jś i bi kt d b d t ó Podejście obiektowe do budowy systemów rozproszonych Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java),wywiedziony idi z Remote obie kt aplikacja klie ncka interfe js serw
Bardziej szczegółowoAplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - dziedziczenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 W ramach poprzedniego laboratorium
Bardziej szczegółowoBezstanowe komponenty sesyjne i zdarzenia zwrotne
Bezstanowe komponenty sesyjne i zdarzenia zwrotne 1. Zdarzenia zwrotne. klasy nasłuchujące, klasy nasłuchujące a dziedziczenie. 2. Bezstanowe komponenty sesyjne. interfejsy: bazowy, zdalny i lokalny, obiekty
Bardziej szczegółowoTworzenie aplikacji J2EE w technologii Struts
173 Tworzenie aplikacji J2EE w technologii Struts Plan prezentacji 174 Architektura MVC Wprowadzenie do Apache Struts Sterowanie w Apache Struts Komponenty Form Bean Zaawansowane elementy Struts Architektura
Bardziej szczegółowoAplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin
Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Czym jest Spring Boot? Spring Boot jest szkieletem aplikacji, opiera się o Spring Framework czyli Framework szeroko
Bardziej szczegółowoWprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o
Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Laboratorium 11 - przegląd wybranych wzorców mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 24 maja 2017 1 / 38 mgr inż. Krzysztof Szwarc Programowanie obiektowe Wzorce
Bardziej szczegółowo1 Atrybuty i metody klasowe
1 Atrybuty i metody klasowe Składowe klasowe (statyczne) Każdy obiekt klasy posiada własny zestaw atrybutów. Metody używają atrybutów odpowiedniego obiektu. Czasem potrzeba atrybutów wspólnych dla wszystkich
Bardziej szczegółowoJęzyki i metody programowania Java. Wykład 2 (część 2)
Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego
Bardziej szczegółowoWzorce logiki dziedziny
Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),
Bardziej szczegółowoPodstawowe informacje o technologii Java Persistence API - przykład
Podstawowe informacje o technologii Java Persistence API - przykład na podstawie https://docs.oracle.com/javaee/7/jeett.pdf Programowanie komponentowe 3_2 1 1. Wykonanie kopii programu Sklep_6 2 1. Wykonanie
Bardziej szczegółowoWprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Narzędzia i środowiska programistyczne Laboratorium 1 Wprowadzenie Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 O Sobie Od 2014
Bardziej szczegółowoObiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1
Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,
Bardziej szczegółowoSpring. Uwaga: Jeśli ta perspektywa nie jest dostępna, należy doinstalować wtyczkę Database Development (Help Install New Software)
Spring Autor pierwotnej wersji ćwiczenia: Michał Matłoka Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej architekturę Spring. Do wykonania ćwiczenia potrzebne jest zintegrowane
Bardziej szczegółowoWprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/
1 Wprowadzenie do J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji
Bardziej szczegółowoUniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Wstęp Programowanie w Javie 2 mgr inż. Michał Misiak Agenda Założenia do wykładu Zasady zaliczeń Ramowy program wykładu
Bardziej szczegółowoDokumentacja do API Javy.
Dokumentacja do API Javy http://java.sun.com/j2se/1.5.0/docs/api/ Klasy i obiekty Klasa jest to struktura zawierająca dane (pola), oraz funkcje operujące na tych danych (metody). Klasa jest rodzajem szablonu
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w
Bardziej szczegółowoElementy JEE. 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages.
Elementy JEE 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages. 1 Java Enterprice Edition Java Enterprice Edition (JEE) jest rozszerzeniem Java Standard
Bardziej szczegółowoObiekty, aspekty, komponenty
Obiekty, aspekty, komponenty Obiekty, aspekty, komponenty Bartosz Walter Rozdział zagadnień Zasada rozdziału zagadnień (Separation of Concerns) program powinien być zdekomponowany w taki sposób, aby różne
Bardziej szczegółowoJava Server Faces - wprowadzenie
Java Server Faces - wprowadzenie Java Server Faces (JSF) jest najpopularniejszą technologią opartą o język JAVA, służącą do tworzenia aplikacji webowych (dynamicznych stron WWW). pomimo że JSF i EJB wchodzą
Bardziej szczegółowoJAX-RS czyli REST w Javie. Adam Kędziora
JAX-RS czyli REST w Javie Adam Kędziora Webservice Usługa sieciowa (ang. web service) komponent programowy niezależny od platformy i implementacji, dostarczający określonej funkcjonalności. SOAP,UDDI,XML,WSDL
Bardziej szczegółowo