假設有一個名爲Demo
的類,它不是一個Javabean,並且有一個方法m1()
,我想從我的JSP頁面調用此方法m1()
而不使用scriptlets。我怎樣才能做到這一點?我們如何創建一個Java類對象並在沒有scriptlet的JSP中調用它的方法?
0
A
回答
0
創建一個servlet並在doGet()
方法中完成這項工作。
@WebServlet(urlPatterns={"/page"})
public class PageServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
new Demo().m1();
request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response);
}
}
,或者如果它返回一些對象作爲結果,你需要它是可作爲EL ${result}
,
@WebServlet(urlPatterns={"/page"})
public class PageServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Object result = new Demo().m1();
request.setAttribute("result", result);
request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response);
}
}
(注意:page.jsp
隱藏在/WEB-INF
文件夾,以防止直接訪問,而無需調用首先是小服務程序)
現在調用http://localhost:8080/context/page而不是http://localhost:8080/context/page.jsp。
0
我個人建議使用基於JSTL和表達式語言的溶液:
A JSTL primer, Part 1: The expression language
「的JSP技術版本2.0的主要特點是它的表達式語言支持(EL )。一種表達式語言可以輕鬆訪問存儲在JavaBeans組件中的應用程序數據,例如,JSP表達式語言允許頁面作者使用簡單的語法來訪問bean,例如$ {name}作爲簡單變量或$ {name .foo.bar}爲一個嵌套屬性。 「
這將允許您使用標籤,而不是形式小腳本:
<c:out value="${demo.m1}"/>
JSTL還允許你通過使用標籤執行條件,迭代和更多
相關問題
- 1. Java:我如何在靜態方法中創建對象並調用另一個類的方法?
- 2. 我們可以創建子類的對象並調用父類的方法嗎?
- 3. 一個類的構造和對象,並在Java中調用它的方法
- 4. 在C++中創建一個python對象並調用它的方法
- 5. Java - 我如何創建一個不同的類的數組,並遍歷它調用它的toString方法?
- 6. 如何創建一個調用另一個類的委託方法的對象?
- 7. 如何在它的基類中創建一個子類對象?
- 8. 在servlet中通過scriptlet調用類對象方法
- 9. 使用spring eval標籤並在jsp中調用java方法而不使用scriptlet
- 10. 如何導入我在jython中創建的java類並調用方法
- 11. 在一個類中構建對象並在另一個類中訪問它們
- 12. 創建一個C++類的實例並在Python中調用它的方法
- 13. 如何在jsp scriptlet中調用$ {SPRING_SECURITY_LAST_EXCEPTION.message}?
- 14. java.lang.NullPointerException;試圖創建一個對象,並調用一些方法
- 15. Java使用方法並調用它們
- 16. 創建一個對象/類,並在jQuery中使用它
- 17. 在一個方法中初始化一個對象,並用另一種方法創建它的一個副本
- 18. 如果我知道一個對象的類名,如何獲取它並調用它的方法?
- 19. 如何使用JAva中另一種方法創建的對象?
- 20. 腓typehinting的對象調用的方法,在基類中創建
- 21. 在jsp和servlets中創建PrintWriter對象的方法有多少?
- 22. 在jsp中創建json對象並使用jQuery使用它
- 23. 如何在Excel中創建一個java類的對象vba
- 24. Java - 創建多個對象並使它們可區分
- 25. 我們如何停止PHP中類的用戶創建對象?
- 26. 我們如何在JavaScript中創建類似布爾的對象?
- 27. JavaScript的:從它的類型一般創建對象並調用它的構造
- 28. JSP scriptlet中的方法是否合法?
- 29. 有沒有更好的方法來創建一個jQuery的面向對象類?
- 30. 創建一個對象,並讓它等到它的創建
@ russell和balusC,即時通訊問我在scriptlet我可以做以下 - <%new Demo()。m1()%> 現在我的問題是我怎麼能做到上面的操作沒有scriptlet在jsp和演示沒有設置任何範圍? 對於$ {demo.m1}演示必須處於任何範圍內。 –