一个简单的需求需要自动抓取一些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();
}
}
这个方法并不高深,但是看起来却让代码结构看起来很舒服.
分享到:
相关推荐
2. **设备配置**:主机获取设备描述符,并根据这些描述符来配置设备的工作模式。 3. **设置端点**:确定数据传输的端点。 4. **设备就绪**:完成上述步骤后,设备准备好与主机进行数据交换。 #### 二、USB Monitor ...
4. 使用枚举:在Mapper接口和XML映射文件中,可以直接使用枚举类型作为参数或返回值。例如: ```java public interface UserMapper { User selectUserByGender(Gender gender); } ``` ```xml SELECT * FROM ...
Java手动方式创建枚举类是一种常见的编程方法,在Java中可以使用枚举类型来定义一组具有相同特征的常量。通过手动方式创建枚举类,可以更好地控制枚举类型的行为和特性。在本文中,我们将通过一个实例来介绍Java手动...
然而,标准枚举仅支持基本数据类型(如int、byte等)的值,有时我们可能需要为每个枚举成员存储额外的信息,比如描述、关联的配置数据等。这时,我们可以借助特性(Attribute)来为枚举值增加扩展数据。 标题"给...
在Ibatis中,我们不能直接将枚举类型作为参数传递给SQL语句,因为枚举类在数据库中没有对应的列类型。因此,我们需要创建一个枚举转换器来处理枚举和字符串(或其他数据库可识别的类型)之间的转换。这里我们可以...
STM32 USB枚举过程是USB...总结来说,STM32 USB枚举过程涉及了设备的初始化、识别、配置和激活,这一系列步骤保证了USB设备能够正确地与主机进行交互。开发者需要理解并正确实现这些步骤,才能充分利用STM32的USB功能。
这里,`ItemsSource`绑定了`AvailableColors`,`DisplayMemberPath`设为`ToString()`,意味着枚举的默认字符串表示将作为显示文本。`SelectedItem`绑定了`SelectedColor`,并设置`Mode=TwoWay`以实现双向数据绑定,...
枚举可以作为策略的实现,每个枚举实例代表一种策略,这样既能保证类型安全,又能减少代码量。另一个例子是工厂模式,枚举可以用来决定创建哪种类型的对象,避免了硬编码字符串或数字。 此外,枚举还支持比较操作,...
- **枚举配置**:MyBatis-Plus支持枚举类型作为字段,这在处理状态、性别等固定值时非常方便。枚举类需实现`IEnum`接口,如`SexEnum implements IEnum<Integer>`,并定义`getValue()`和`getDesc()`方法。在Mapper中...
总的来说,USB枚举过程对于USB设备的正常工作至关重要,USBCheck作为测试工具,对于理解和优化这一过程,以及解决USB设备的连接问题,具有很大的实用价值。了解和熟练掌握USB枚举流程,对于IT从业者,尤其是在硬件...
在自定义控件中,我们可以使用枚举作为属性的类型,使得属性值更加有意义且易于理解。例如,我们可以定义一个表示颜色模式的枚举: ```csharp public enum ColorMode { Default, Light, Dark } ``` 三、添加...
例如,你可以创建一个枚举注册项的易语言子程序,接受键的路径作为输入,然后返回一个包含所有子键和键值信息的结构体或列表。 在实际开发中,枚举注册项的源码可能会涉及错误处理、内存管理、数据类型转换等多个...
一旦我们有了枚举的名称和值,就可以使用C#的`enum`关键字来创建枚举类型。 同时,生成方法的部分可能涉及动态创建委托或实现特定接口。这需要用到C#的反射和元数据功能,通过`Type`类和`MethodInfo`类来创建和操作...
枚举过程的主要目的是使主机识别并配置新连接的USB设备。 #### 二、USB枚举过程概述 枚举过程主要包括以下几个阶段: 1. **设备连接**: 当USB设备连接到主机时,主机首先检测到设备的存在,并进入枚举过程。 2. *...
USB (Universal Serial Bus) 枚举过程是指USB设备连接到主机后,主机自动识别并配置该设备的过程。这一过程是USB系统正常工作的基础,确保了设备能够被正确地识别与使用。 #### 二、枚举过程详解 ##### 1. 设备...
EnumWebSites.exe 的输出可以作为审计记录,确保服务器配置符合公司政策和法规要求。 8. **自动化管理**:枚举结果可以被脚本或自动化工具使用,进行批量修改、配置更新或定期检查。 9. **备份与恢复**:在进行...
易语言是一种专为中国人设计的编程语言,它以简体中文作为编程语句,使得非计算机专业背景的用户也能轻松上手。在易语言中,处理注册表项和键值是一项常见的任务,这对于系统配置、软件设置管理和故障排查至关重要。...
- 设备收到SetAddress请求后,会向主机发送一个零数据包(Zero Packet)作为响应。 - 主机发送ACK(应答)信号确认。 - 设备随后启用新的地址并准备进入下一个枚举阶段。 2. SetAddress问题的可能原因和解决方法...
开发者可以提供一个回调函数,每当枚举到一个窗口时,系统会调用这个回调函数,将窗口句柄作为参数传递。开发者可以在回调函数中处理这些窗口,例如检查窗口属性或者对窗口进行操作。 2. **窗口句柄(HWND)**:在...
易语言采用中文作为编程语言,语法直观,具有丰富的内置函数和模块,支持窗口程序、控制台程序、网络程序等多种类型的软件开发。 二、注册表概述 注册表是Windows操作系统中的一个重要数据库,存储着系统和应用...