SORU
18 HAZİRAN 2011, CUMARTESİ


Nasıl JSP/EL bir statik yöntemi çağırmak için?

JSP yeniyim. MySQL ve JSP sayfaları bağlanmayı denedim ve gayet iyi çalışıyor. Ama burada yapmam gereken şeyi. Ben bir tablo olarak adlandırılan öznitelik "". denge Onu almak ve yeni bir değeri hesaplamak için kullanın "". miktarda (Yazdırma değilim"") denge.

 <c:forEach var="row" items="${rs.rows}">
        ID: ${row.id}<br/>
        Passwd: ${row.passwd}<br/>
        Amount: <%=Calculate.getAmount(${row.balance})%>
 </c:forEach>

JSTL etiketleri içinde ekleme kod parçacıkları için mümkün değil gibi görünüyor.

CEVAP
18 HAZİRAN 2011, CUMARTESİ


Getiremezsinizkod parçacıklarıve EL. Birini ya da diğerini kullanın. Berikod parçacıklarıon yıldan fazla bir süredir cesareti, EL için gitmek gerekir.

Temelde 2 seçenek (balance Calculate#getAmount() double varsayarak).

  1. Sadece başka bir alıcı ekleyin.

    public double getAmount() {
        return Calculate.getAmount(balance);
    }
    

    Ve bunu kullanın:

    Amount: ${row.amount}
    

  2. Ya da, EL bir fonksiyonu olarak Calculate#getAmount() ilan. İlk /WEB-INF/functions.tld Bir dosya oluşturun:

    <?xml version="1.0" encoding="UTF-8" ?>
    <taglib 
        xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
        version="2.1">
    
        <display-name>Custom Functions</display-name>    
        <tlib-version>1.0</tlib-version>
        <uri>http://example.com/functions</uri>
    
        <function>
            <name>calculateAmount</name>
            <function-class>com.example.Calculate</function-class>
            <function-signature>double getAmount(double)</function-signature>
        </function>
    </taglib>
    

    Ve aşağıdaki gibi kullanabilirsiniz

    <%@taglib uri="http://example.com/functions" prefix="f" %>
    ...
    Amount: ${f:calculateAmount(row.balance)}">
    

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DavidParody

    DavidParody

    17 EKİM 2009
  • Epic Tutorials for iPhone, iPad and iOS

    Epic Tutoria

    18 EYLÜL 2011
  • Facebook Developers

    Facebook Dev

    24 ŞUBAT 2009