jodd-servlet工具集锦
Jodd提供了許多servlet和jsp相關的工具。
Utils
ServletUtils類集成了不同的servlet工具,你可以檢測multipart請求,讀取授權頭,下載預備,cookie操作,讀取請求報文,從不同scope中讀取值,檢測絕對Url,檢測servlet 2.5的版本,保護緩存等等。
DispatcherUtil提供了一個方法,如including,forwarding和redirecting。它也返回很多不同的路徑相關信息,例如Context路徑,查詢字符串等等。
Map wrappers
Jodd為請求,響應,session提供了Map的包裝類。這些包裝類就是各種servlet的Map 適配器,外部用戶不直接使用它們。它們適用于分離Servlet的實現代碼。
File upload
jodd為multipart請求和文件上傳提供了一整套類。
上傳的文件可以下載到內存,文件系統或者根據大小進行適配。
Listeners and broadcasters
HttpSessionListenerBroadcaster僅僅在session創建或者銷毀時發送事件到注冊的session監聽器上。
RequestContextListener保存當前線程的請求。
JSP Tag library
jodd提供了一套微型但非常高效的標簽庫。它提供了一個通用功能:不同的遍歷標簽、條件和分鐘標簽,設置和讀取變量標簽等等,想了解更多,請查看Jodd?JSP tag library. 文件名稱為Jodd-taglib.tld。
CSRF shield
jodd提供了簡單有效的csrf(cross-sit request forgery)保護。
<tag><name>csrfToken</name><tag-class>jodd.servlet.tag.CsrfTokenTag</tag-class><body-content>empty</body-content><attribute><name>name</name><required>false</required><rtexprvalue>true</rtexprvalue></attribute></tag>實現:
@Overridepublic void doTag() throws IOException {JspContext jspContext = this.getJspContext();// generate tokenHttpServletRequest request = (HttpServletRequest) ((PageContext) jspContext).getRequest();HttpSession session = request.getSession();String value = CsrfShield.prepareCsrfToken(session);if (name == null) {name = CsrfShield.CSRF_TOKEN_NAME;}jspContext.getOut().write("<input type=\"hidden\" name=\"" + name + "\" value=\"" + value + "\"/>");}?
Filters
Jodd只提供了很少一些servlet過濾器:GZipFilter,
CharacterEncodingFilter,RemoveSessionFromUrlFilter。
然而,jodd還有許多過濾器相關的類,如快速字節數組和字符數組包裝,包括更高級的BufferResponseWrapper。
參考文獻:
http://jodd.org/doc/servlets.html
轉載于:https://www.cnblogs.com/davidwang456/p/4647487.html
總結
以上是生活随笔為你收集整理的jodd-servlet工具集锦的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1到1亿的自然数,求所有数的拆分后的数字
- 下一篇: Jodd-vtor验证框架