java jsp n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
JAVA – JSP PowerPoint Presentation
Download Presentation
JAVA – JSP

Loading in 2 Seconds...

play fullscreen
1 / 16

JAVA – JSP - PowerPoint PPT Presentation


  • 199 Views
  • Uploaded on

JAVA – JSP. JAVA BEANS. Java EE training: http://courses.coreservlets.com. Java Beans. Muszą posiadać konstruktor domyślny Dostęp do prywatnych pól składowych jest realizowany przez funkcje: getNAZWAPOLA setNAZWAPOLA (oznacza to zdefiniowanie właściwości-property w klasie)

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'JAVA – JSP' - kelvin


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
java jsp
JAVA – JSP

JAVA BEANS

Java EE training: http://courses.coreservlets.com

java beans
Java Beans
  • Muszą posiadać konstruktor domyślny
  • Dostęp do prywatnych pól składowych jest realizowany przez funkcje:getNAZWAPOLAsetNAZWAPOLA(oznacza to zdefiniowanie właściwości-property w klasie)
  • Pola typu logicznego są wykorzystują funkcję isNAZWAPOLA
  • Muszą być umieszczane w pakietach
przyk ad netbeans
Przykład (NetBeans)

public class MyBeam implements Serializable {

public static final String PROP_SAMPLE_PROPERTY = "sampleProperty";

private String sampleProperty;

private PropertyChangeSupport propertySupport;

public MyBeam() {

propertySupport = new PropertyChangeSupport(this);

}

public String getSampleProperty() {

return sampleProperty;

}

public void setSampleProperty(String value) {

String oldValue = sampleProperty;

sampleProperty = value;

propertySupport.firePropertyChange(PROP_SAMPLE_PROPERTY, oldValue, sampleProperty);

}

public void addPropertyChangeListener(PropertyChangeListener listener) {

propertySupport.addPropertyChangeListener(listener);

}

public void removePropertyChangeListener(PropertyChangeListener listener) {

propertySupport.removePropertyChangeListener(listener);

}

}

schemat u ycia
Schemat użycia

Użytkownik zatwierdza dane na formularzu (stronie JSP)

<FORM ACTION="SomePage.jsp">

Strona JSP Tworzy obiektJavaBean

<jsp:useBean id="myBean" class="…"/>

Następuje ustawienie właściwości obiektu wykorzystując dane przesłane w żądaniu

<jsp:setProperty name="myBean„ property="customerID" value="…"/>

• Wartości wynikowe pobierane są też przez właściwości

<jsp:getProperty name="myBean" property="bankAccountBalance"/>

jsp usebean
jsp:useBean

Format

<jsp:useBean id="name" class="package.Class" />

Wynik

Tworzy obiekt lub pobiera referencję do istniejącego obiektu bez bezpośredniego pisania kodu

Uwagi

Wywołanie:

<jsp:useBean id="book1" class="coreservlets.Book" />

Może być interpretowane jako wywołanie skrypletu:

<% coreservlets.Book book1 = new coreservlets.Book(); %>

Zalety użycia JavaBeans:

• Łatwiej ustawiać wartości w obiektach parametrami żądania

• Łatwiej wykorzystywać obiekty na różnych stronach

jsp setproperty
jsp:setProperty

Format

<jsp:setProperty name="name" property="property" value="value" />

Wynik

Ustawienie właściwości obiektu przez wywołanie metody setXXX

Uwagi

<jsp:setProperty name="book1" property="title" value="Tytuł 1" />

Może być interpretowane jako wywołanie skrypletu

<% book1.setTitle(" Tytuł 1 "); %>

Przykład:

<jsp:setProperty name="MyBean1" property="sampleProperty" value="10" />

Kod wynikowy:

org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(

_jspx_page_context.findAttribute("MyBean1"),

"sampleProperty", "10",

..... );

jsp getproperty
jsp:getProperty

Format

<jsp:getProperty name="name" property="property" />

Wynik

Uzyskanie dostępu do właściwości obiektu przez niejawne wywołanie funkcji getName

Uwagi

<jsp:getProperty name="book1" property="title" />

Może być interpretowane jako:

<%= book1.getTitle() %>

Przykład:

<jsp:getProperty name="MyBean1" property="sampleProperty" />

Kod wynikowy:

org.apache.jasper.runtime.JspRuntimeLibrary.toString(

(

((MyElements.MyBeam)_jspx_page_context.findAttribute("MyBean1")).getSampleProperty()

)

konwersje i przypisania
Konwersje i przypisania

Przypisanie wartości typu string

<jsp:useBean id="entry" class="coreservlets.SaleEntry" />

<%-- setItemID oczekuje na obiekt typu string --%>

<jsp:setProperty name="entry" property="itemID" value='<%= request.getParameter("itemID") %>' />

Przypisanie wartości typu int

<%

int numItemsOrdered = 1;

try {

numItemsOrdered = Integer.parseInt(request.getParameter("numItems"));

} catch(NumberFormatException nfe) {}

%>

<%-- setNumItems potrzebuje wartości typu int --%>

<jsp:setProperty name="entry" property="numItems" value="<%= numItemsOrdered %>" />

przypisanie poszczeg lnych w a ciwo ci parametrami dania
Przypisanie poszczególnych właściwości parametrami żądania

<jsp:useBean id="entry" class="coreservlets.SaleEntry" />

<jsp:setProperty name="entry" property="itemID" param="itemID" />

<jsp:setProperty name="entry" property="numItems" param="numItems" />

<jsp:setProperty name="entry" property="discountCode" param="discountCode" />

zbiorowe ustawienie w a ciwo ci obiektu java bean parametrami dania
Zbiorowe ustawienie właściwości obiektu Java Bean parametrami żądania

<jsp:useBean id="entry" class="coreservlets.SaleEntry" />

<jsp:setProperty name="entry" property="*" />

Uwagi:

Mechanizm ten umożliwa tworzenie tzw obietów „form beans”, których właściwości są wypełniane z formularzy stworzonych na stronach www

Można podzielić proces wypełniania obiektu pomiedzy wiele formularzy (każdy służy do wypełnienia fragmentu zestawu właściwości)

wsp dzielnie obiekt w java beans miedzy stronami jsp
Współdzielnie obiektów Java Beans miedzy stronami „jsp”
  • Atrybut scope służ do określenia dodatkowego miejsca przechowywania zmiennej typu JavaBeam
  • Zmienna tak jest dodatkowo dostępna jako lokalna dla metody _ jspService Still also bound to local variable in _
  • <jsp:useBean id="…" class="…" scope="…" />
  • Wartości:
  • application
  • page
  • request
  • session
  • • Umożliwiono w ten sposób współdzielenie danych miedzy stronami jsp
  • • Obiekt tworzony jest warunkowo (jeśli nie istniał)
slide12

• page

<jsp:useBean … scope="page"/> lub <jsp:useBean…>

Wartość domyślna. Obiekt jest umieszczany w PageContex na czas trwania żądania. Pozwala metodom w bieżącym servlecie korzytać z obiektu

• application

<jsp:useBean … scope="application"/>

Obiekt jest składowany w obiekcie ServletContext, do którego dostęp można uzyskać wywołując metodę: getServletContext()). ServletContext jest współdzielony przez wszystkie servlety w ramach aplikacji webowej lub pomiedzy wszystkimi servletami na serwerze www jeśli żadna aplikacja webowa nie jest zdefiniowana na serwerze www

• session

<jsp:useBean … scope="session"/>

Obiektjest przechowywany w obiekcie HttpSession związanym z bieżącym żądaniem z kąd może być dostępny dla zwykłego kodu servletu. Obiekt ten jest dostępny przez funkcje getAttribute i setAttribute

• request

<jsp:useBean … scope="request"/>

Obiekt jest umieszczany w obiekcie ServletRequest na czas trwania bieżącego żądania, gdzie jest dostępny za pomocą funkcji getAttribute

jsp usebean scope
Jsp:useBean scope="... "

<jsp:useBean id="MyBean1" scope= "page" class="MyElements.MyBeam" />

synchronized (_jspx_page_context) {

MyBean1 = (MyElements.MyBeam) _jspx_page_context.getAttribute("MyBean1", PageContext.PAGE_SCOPE);

if (MyBean1 == null){ MyBean1 = new MyElements.MyBeam();

_jspx_page_context.setAttribute("MyBean1", MyBean1, PageContext.PAGE_SCOPE);

}

}

<jsp:useBean id="MyBean1" scope="session" class="MyElements.MyBeam" />

synchronized (session) {

MyBean1 = (MyElements.MyBeam) _jspx_page_context.getAttribute("MyBean1", PageContext.SESSION_SCOPE);

if (MyBean1 == null){ MyBean1 = new MyElements.MyBeam();

_jspx_page_context.setAttribute("MyBean1", MyBean1, PageContext.SESSION_SCOPE);

}

}

wsp dzelenie obiekt w java beans przyk ad
Współdzelenie obiektów Java Beans przykład

• page1.jsp

<jsp:useBean id="MyBean1" class="…" scope="application"/>

<jsp:setProperty name=" MyBean1 " property="sampleProperty" value="Hello"/>

<jsp:getProperty name="foo" property="message">

• page2.jsp

<jsp:useBean id=" MyBean1 " class="…" scope="application"/>

<jsp:getProperty name=" MyBean1 " property="sampleProperty">

operacje warunkowe z wykorzysaniem javabeans
Operacje warunkowe z wykorzysaniem JavaBeans

• Obiekt Java bean jest tworzony tylko w tedy jeśli nie istnieje już instancja obiektu o takiej nazwie w zdefiniowanym zakresie. To znaczy, że element.:

jsp:useBean utworzy nowy obiekt tylko w tedy gdy on jeszcze nie istnieje. W przeciwnym przypadku ustawiana jest po prostu referencja na istniejący obiekt.Tę włąściwość można wykorzystać do zaimplementowania operacji warunkowych.

Stosujęąc pełny zapis XML znacznik:

<jsp:useBean ... />

Przedstawiamy w postaci:

<jsp:useBean ...>Wyrazenie</jsp:useBean>

gdzie wyrażenie może zawierać instrukcjejsp:setProperty. Takim przypadku "Wyrażenie” jest wywoływane tylko jeśli tworzony jest nowy obiekt

wykorzystanie javabeans podsumowanie
Wykorzystanie JavaBeans Podsumowanie
  • jsp:useBean Utworzenie nowego lub utworzenie referencji do istniejącego obiektu JavaBean
  • <jsp:useBean id="beanName" class="package.Class" />
  • jsp:setPropertyElement służy do modyfikacji właściwości (property) obiektu JavaBean (wywołuje metodę setXXX) <jsp:setProperty name="beanName" property="propertyName” value="propertyValue" />
  • jsp:getPropertyElement służy do odczytu właściwości obiektu JavaBean<jsp:getProperty name="beanName" property="propertyName" />