Stream-Query Stream-Query
首页
  • 项目初衷与诞生
  • 介绍
  • 快速上手
  • 目录结构
  • core模块

    • Opp
    • Sf
    • Map
    • Steam
    • TreeHelper
    • HighlightHelper
    • ReflectHelper
    • BeanHelper
  • plugin模块

    • Database
    • One
    • Many
    • OneToOne
    • OneToMany
  • 安装

    • 通过Maven安装
    • 通过Gradle安装
    • 下载jar安装
    • 通过源码编译
  • 动态mapper

    • 指定package
    • 指定注解
    • 指定接口
    • 指定实体类
  • 团队成员
  • dromara
  • 社区周边
  • 成为开发成员
  • 项目问题

    • 最新版本依赖下载失败
    • 项目编译报错
    • 如何贡献代码
    • 如何贡献文档
    • 使用本项目需要的前置知识
  • 其他问题

    • 作者是在全职维护开源吗
    • 你们这是个什么团队啊
    • 和其他类似的开源项目有什么区别
赞助
  • 1-5-0-alpha
  • 1-6-0-alpha
  • 1-7-0-alpha
  • 1-8-0
  • 1-9-0
  • 1-9-1
  • 2.0.0-alpha+001
  • 2.0.0-alpha+002
  • 2.0.2
Source (opens new window)
首页
  • 项目初衷与诞生
  • 介绍
  • 快速上手
  • 目录结构
  • core模块

    • Opp
    • Sf
    • Map
    • Steam
    • TreeHelper
    • HighlightHelper
    • ReflectHelper
    • BeanHelper
  • plugin模块

    • Database
    • One
    • Many
    • OneToOne
    • OneToMany
  • 安装

    • 通过Maven安装
    • 通过Gradle安装
    • 下载jar安装
    • 通过源码编译
  • 动态mapper

    • 指定package
    • 指定注解
    • 指定接口
    • 指定实体类
  • 团队成员
  • dromara
  • 社区周边
  • 成为开发成员
  • 项目问题

    • 最新版本依赖下载失败
    • 项目编译报错
    • 如何贡献代码
    • 如何贡献文档
    • 使用本项目需要的前置知识
  • 其他问题

    • 作者是在全职维护开源吗
    • 你们这是个什么团队啊
    • 和其他类似的开源项目有什么区别
赞助
  • 1-5-0-alpha
  • 1-6-0-alpha
  • 1-7-0-alpha
  • 1-8-0
  • 1-9-0
  • 1-9-1
  • 2.0.0-alpha+001
  • 2.0.0-alpha+002
  • 2.0.2
Source (opens new window)
  • 指南

    • 快速上手
    • 模块介绍
    • 项目初衷与诞生
  • core

    • Opp
    • Sf
    • TreeHelper
    • LighHight
    • LambdaHelper
    • Steam
    • Maps
    • ReflectHelper
    • BeanHelper
      • 概览
      • 特性
      • 使用方法
        • 检查方法是否为 Getter 或 Setter
        • 从方法中获取属性名
        • 生成 Getter 和 Setter 方法名
        • 在对象间复制属性
      • 安装
      • 依赖关系
      • 限制
      • 最佳实践
      • 结论
  • plugin

    • DataBase
    • One
    • Many
    • OneToOne
    • OneToMany
    • QueryCondition
    • safe-mode
  • 配置

  • 指南
  • core
臧臧
2023-11-10
目录

BeanHelper

# BeanHelper 工具类文档

# 概览

BeanHelper 类是一个用于操作 Java Beans 的实用工具类。主要用于属性的访问和操作。它提供了判断方法是否为 getter 或 setter、从 getter/setter 方法中提取属性名、以及在对象之间复制属性的方法。

# 特性

  • 判断 Getter 和 Setter 方法: 判断给定的方法名称是否代表一个 getter 或 setter。
  • 从方法中提取属性名: 从 getter 和 setter 方法名中提取属性名。
  • 生成 Getter 和 Setter 方法名: 为给定的属性名生成 getter 和 setter 方法名。
  • 在对象间复制属性: 在对象之间复制属性,确保类型安全和兼容性。

# 使用方法

# 检查方法是否为 Getter 或 Setter

boolean isGetter = BeanHelper.isGetter("getPropertyName");
boolean isSetter = BeanHelper.isSetter("setPropertyName");
boolean isBooleanGetter = BeanHelper.isGetterBoolean("isProperty");

# 从方法中获取属性名

String propertyName = BeanHelper.getPropertyName("getPropertyName");
// propertyName 将会是 "propertyName"

# 生成 Getter 和 Setter 方法名

String getterName = BeanHelper.getGetterName("propertyName");
// getterName 将会是 "getPropertyName"

String setterName = BeanHelper.getSetterName("propertyName");
// setterName 将会是 "setPropertyName"

# 在对象间复制属性

SourceObject source = new SourceObject();
TargetObject target = new TargetObject();
BeanHelper.copyProperties(source, target);
// target 现在已经从 source 复制了所有属性

// 创建目标类型的新实例并复制属性
TargetObject copiedTarget = BeanHelper.copyProperties(source, TargetObject.class);

# 安装

此工具类是更大的 Java 库的一部分。确保将该库包含在项目依赖中。

# 依赖关系

  • 该工具依赖于其他类,如 Opp、LambdaHelper、SerFunc 和 ReflectHelper。确保这些依赖项在项目中已解决。

# 限制

  • copyProperties 方法假设源对象和目标对象具有兼容类型和名称的属性。
  • 该工具不处理复杂属性的深度复制。

# 最佳实践

  • 在符合 getter 和 setter 命名惯例的标准 Java Beans 上使用此工具。
  • 在使用 copyProperties 方法时,确保源对象和目标对象已正确初始化。

# 结论

BeanHelper 类简化了 Java Beans 的常见操作,如属性访问和复制,遵循标准 Java 命名惯例。通过使用此工具,开发人员可以编写更清洁、更高效的代码来操作 bean 属性。


有关方法及其用例的详细信息,请参考工具类中的具体方法文档。

上次更新: 2024/03/29, 09:17:32
ReflectHelper
DataBase

← ReflectHelper DataBase→

Theme by Vdoing | Copyright © 2023-2024 阿超 | Apache License, Version 2.0
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式