一个简单的需求需要自动抓取一些http request参数到上下文中,传统的做法就是写一堆过程,好一点加一个list或者map之类的容器,其实可以用枚举来做配置的:
public enum RequestParam {
V("v"), API("api"), PARAMS("data"), KEY("auth"), KEYTYPE("authType"), UA(
"ua"), TYPE("type"),TIME("t");
private String param;
public String getValue() {
return param;
}
public void setParam(String param) {
this.param = param;
}
RequestParam(String param) {
this.setParam(param);
}
}
接下来要取参数就简单了:
for (RequestParam paramEnum : RequestParam.values()) {
try {
BeanUtils.setProperty(request, paramEnum.getValue(),
getParameters().getString(
paramEnum.getValue(), ""));
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
这个方法并不高深,但是看起来却让代码结构看起来很舒服.
分享到:
相关推荐
Linum Linum是另一个用Shell脚本编写Linux枚举脚本。 描述Linum调用Linux内置命令并查询配置文件和日志文件,以收集有关系统的各种信息。 用法最好以root用户访问权限运行此脚本,因为某些信息只能作为root用户收集...
WindowsServer2012R2文件服务器安装与配置 01 文件服务器配置的相关目录 02 基础说明与安装 一、文件服务器的基础说明 文件服务器是企业里面用的最多的服务器之一,它主要用于提供文件共享。 为了配合文件服务器的...
本文档从7750SR作为城域网业务路由时提供的丰富业务...本文档没有对所有命令进行枚举,对于 7750SR 所有命令和原理的讲解,可以参考随机的配置手册。 本文涉及命令均以 8.0 版本作为参考,如果存在例外将注释版本信息。
另一个用例是拥有比虚拟机更多的公共 IP 地址,并希望通过阻止攻击者枚举您的网络来掩盖关键服务的位置。 除了按照此目录中的配置文件指定的配置服务器之外,您还必须安装许多软件包 # Install SSH serverapt-get ...
forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。...
结构体方法可以替代宏实现常量配置,如预定义UIFont样式。 类型推断 利用Swift的类型推断能力减少显式类型声明。 选项集(OptSet)和可选(Optional) 使用if let、guard let解包可选值。 利用.none、.some构造可选...
肯泽| 自动化的Web资产枚举和扫描 演示版 屏幕截图 跑步说明 在上创建一个帐户 导航到Settings > Your Bots > Add a new bot 创建一个名为kenzer的新通用机器人 在configs/kenzer.conf添加所有配置 使用-安装/运行 ...
JBob是基于Java和Ajax的平台系统,采用Ext JS作为前端用户界面,Et-mvc作为后台支持框架,专注于权限控制,主要用于开发企业级信息系统。 平台集成了开发环境、运行框架,主要实现了用户组织、资源与数据权限管理...
文件枚举通过brew软件包管理器管理的已安装CLI和GUI应用程序。 端子和外壳 在运行的 通过管理的 + 插件 配置保存在和文件 文字编辑器 作为$EDITOR 。 Vim配置位于专用的存储库中。 请参阅回购。 vscode ,如果Vim...
主要包含web项目经常使用的一些组件,包含: mybatis的dao封装和mybatis配置文件扫描器使用redis缓存的基本配置工具类druid数据源模型函数(加密数据库密码)基本实体封装常用的枚举类型日志收集配置类分页信息配置...
在初始化时,AML解释器从定义块中提取字节码作为可枚举对象。这个可枚举对象的集合形成了一个被称为ACPI命名空间的操作系统构造。ACPI命名空间中的对象可以直接定义值,也可以由AML解释器进行求值。AML解释器在操作...
如果您想将权限作为实体来管理...(我还没有这样做) 在此项目中,将授予ADMIN,PROJECT_MANAGER和USER特权。 权威 管理:应用程序管理员权限 PROJECT_MANAGER:项目经理,项目CRUD,负责团队CRUD USER:一般...
增加事件与枚举 使用ActiveXDataObject(ADO) 在服务器组件中使用Recordset对象 在客户机组件中使用ADOR 生成断开的Recodset 生成自己的RecodsctS 使用用户定义类型 错误处理 服务器客户机错误处理 使用...
13.9 用显式接口方法实现来增强编译时类型安全性 13.10 谨慎使用显式接口方法实现 13.11 设计:基类还是接口? 第14章 字符、字符串和文本处理 14.1 字符 14.2 System.String类型 14.2.1 构造字符串 14.2.2 ...
从Windows 85移值到Windows NT 选择服务器角色 理解安装开关选择的使用 加入域 安装时的疑难解答 理解自动安装 使用自动安装的应答文件 理解初始化参数文件 使用$OEM$\OEMFILES论据来写软件安装脚本 使用Sysdiff.exe...
边缘云合作的体系结构被提出作为一种妥协的解决方案,结合了MEC和中央云的优势。 在本文中,我们研究了如何通过协作任务调度来减少MEC应用程序的平均延迟的问题。 协作任务调度被建模为非循环图上的约束最短路径问题...
提供枚举支持作为“静态枚举” 可以使用“配置”来设置Paginator的默认设置。 通过Utility类和其他有用性提供了一个不太容易出错的inArray()方法。 TestSuite增强功能 其他一些数据库类型类 附加的功能 可设置...
Intruder——是一个定制的高度可配置的工具,对web应用程序进行自动化攻击,如:枚举标识符,收集有用的数据,以及使用fuzzing 技术探测常规漏洞。 Repeater——是一个靠手动操作来补发单独的HTTP 请求,并分析应用...
USB连接的建立是通过ARM发送命令来实现的,这就允许ARM在决定与USB建立连接之前完成初始化时序。而USB连接可以重新初始化而不需要拔出。 USB接口电路如图所示。在枚举中,LED指示灯根据通信的状况间歇闪烁。当...
使用PascalCase作为枚举值。 使用camelCase作为函数名称。 将camelCase用于属性名称和局部变量。 不要将“ _”用作私有属性的前缀。 尽可能在名称中使用整个单词。 将isXXXing或hasXXXXed用于表示事物状态的...