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>

实现:

    @Override
public void doTag() throws IOException {
JspContext jspContext = this.getJspContext(); // generate token
HttpServletRequest 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

jodd-servlet工具集锦的更多相关文章

  1. Web前端优化最佳实践及工具集锦

    Web前端优化最佳实践及工具集锦 发表于2013-09-23 19:47| 21315次阅读| 来源Googe & Yahoo| 118 条评论| 作者王果 编译 Web优化Google雅虎P ...

  2. 优秀而又实用的PHP工具集锦

    优秀而又实用的PHP工具集锦   浏览:1141 发布日期:2013/09/04 分类:技术分享 PHP是目前实用最为广泛的服务器端开源脚本语言之一,很多优秀的开源程序都是基于PHP构建的,比如大名鼎 ...

  3. Linux内核调试的方式以及工具集锦【转】

    转自:https://blog.csdn.net/gatieme/article/details/68948080 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...

  4. Linux内核调试的方式以及工具集锦

    原文:https://blog.csdn.net/gatieme/article/details/68948080 CSDN GitHubLinux内核调试的方式以及工具集锦 LDD-LinuxDev ...

  5. 【转】高效Java编程工具集锦

    原文地址:http://geek.csdn.net/news/detail/57469 Java 开发者常常都会想办法如何更快地编写 Java 代码,让编程变得更加轻松.目前,市面上涌现出越来越多的高 ...

  6. 一个简单的Servlet工具

    以前老师在项目中用过一个Sevlet的工具,就是在请求Servlet的时候带一个参数,该参数决定要执行Servlet中的方法, public class ServletUtils extends Ht ...

  7. 几个java proxy servlet 工具

    HTTP-Proxy-Servlet 这个工具使用比较简单,可以通过配置,或者代码的方式 https://github.com/mitre/HTTP-Proxy-Servlet servlet 配置方 ...

  8. Linux Shell 文本处理工具集锦 zz

    内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq 消除重复行 用tr进行转换 cut 按列切分文本 paste 按列拼接文本 wc 统计行和字符 ...

  9. Linux Shell 文本处理工具集锦

    本文将介绍Linux下使用Shell处理文本时最常用的工具:find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk:提供的例子和参数都是最常用和最为实用的: ...

随机推荐

  1. Spring Cloud学习笔记【九】配置中心Spring Cloud Config

    Spring Cloud Config 是 Spring Cloud 团队创建的一个全新项目,用来为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,它分为服务端与客户端两个部分.其中服务端 ...

  2. hbase源码系列(十二)Get、Scan在服务端是如何处理

    hbase源码系列(十二)Get.Scan在服务端是如何处理?   继上一篇讲了Put和Delete之后,这一篇我们讲Get和Scan, 因为我发现这两个操作几乎是一样的过程,就像之前的Put和Del ...

  3. NYOJ 541 最强的战斗力

    最强DE 战斗力 时间限制:1000 ms  |  内存限制:65535 KB 难度: 描写叙述 春秋战国时期,赵国地大物博,资源很丰富.人民安居乐业.但很多国家对它虎视眈眈.准备联合起来对赵国发起一 ...

  4. 2016届 阿里巴巴校招研发project师C/C++笔试题--2015.08.23

    选择题牛客网地址题目1:http://www.nowcoder.com/test/255234/summary. 题目2:http://www.nowcoder.com/test/262758/sum ...

  5. 思考一下activity的启动模式

    在android里,有4种activity的启动模式.分别为:"standard" (默认) "singleTop" "singleTask" ...

  6. How Hystrix Works?--官方

    https://github.com/Netflix/Hystrix/wiki/How-it-Works Contents Flow Chart Circuit Breaker Isolation T ...

  7. hashCode 和 equals 方法

    hashCode 和 equals 方法 hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法. 使用hashCode()和 ...

  8. 我比xx强在哪里?弱在哪里?

    向下管理? 向上管理? 自我形象? 人机关系运作? 弱项不在管理方面: 在向上的人际关系处理和机会把握方面.

  9. MOOC使用心得

    1. Mooctest 使用心得 慕测平台是编程类考试和练习的服务平台,教师可以轻松监管考试流程,学生可以自由练习编程.系统负责编程练习的自动化评估及可视化展现,配合当下红火的MOOC慕课课程,慕测平 ...

  10. 在vim中配置python补全,fedora 19

    近期发现python是个不错的语言,值得一学,先配置下环境,让vim具有keyword补全功能,步骤例如以下,我这个是fedora,其它发行版类似 $ su ******** # yum instal ...