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
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).
Sadece başka bir alıcı ekleyin.
public double getAmount() { return Calculate.getAmount(balance); }
Ve bunu kullanın:
Amount: ${row.amount}
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)}">
Nasıl yansıması genel bir Yöntemi çağı...
Nasıl Android bir gecikmeden sonra bir...
Nasıl yansıma özel bir yöntemi çağırma...
Fasulye başlatma tamamlandıktan sonra ...
Parametrelerle Yöntemi Çağırmak için N...