Java通过反射机制获取类对象下的属性值
目录
以类USER为例:
使用Java的反射机制获取Column的name为“user_name”的类属性值
以类USER为例:
import lombok.Data;
import javax.persistence.*;
import java.io.Serializable;@Data
@Table(name = "user_info")
public class User implements Serializable {@Id@Column(name = "id")@GeneratedValue(generator = "JDBC")private Long id;@Column(name = "user_name")private String userName;@Column(name = "user_id")private String userId;@Column(name = "user_age")private String userAge;@Column(name = "user_sex")private String userSex;
private static final long serialVersionUID = 1L;}
使用Java的反射机制获取@Column的name为“user_name”的类属性值
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import javax.persistence.Column;public class FeildToData{public static String getUserNameFiledValue(String targetColumnName,User entity,Class<User> clazz){try{for (Field field : clazz.getDeclaredFields()) {//@Column(name = "user_name")Column columnAnnotation = field.getAnnotation(Column.class);if (columnAnnotation != null && targetColumnName.equals(columnAnnotation.name())) {// 获取字段的getter方法Method getter = clazz.getMethod(getGetterMethodName(field.getName()));// 执行getter方法获取字段值Object fieldValue = getter.invoke(entity);System.out.println("The value of the matched field is: " + fieldValue);if(fieldValue!=null&&String.valueOf(fieldValue).trim().length()>0){return String.valueOf(fieldValue);}else{return null;}}}}catch (Exception e){e.printStackTrace();return null;}return null; }
public static String getGetterMethodName(String fieldName) {return "get" + Character.toUpperCase(fieldName.charAt(0)) + fieldName.substring(1);}pulic static void main(String[] args){String targetColumnName = "user_name";User entity = new User();entity.setUserName("菲德勒");entity.setUserId("ETYUN120");entity.setUserSex("Man");Class<User> clazz = User.class;System.out.println(getUserNameFiledValue(targetColumnName,entity,clazz));
}}
相关文章:
Java通过反射机制获取类对象下的属性值
目录 以类USER为例: 使用Java的反射机制获取Column的name为“user_name”的类属性值 以类USER为例: import lombok.Data; import javax.persistence.*; import java.io.Serializable;Data Table(name "user_info") public class User imple…...
IDEA插件开发-File -> New->Project中添加一个myOptions
写一个IDEA插件,在IDEA的File -> New -> Project 中添加一个选项myOptions ,点击myOptions 后弹出一个提示对话框:被点击了 为了在IntelliJ IDEA中创建一个插件,您需要遵循一系列的步骤来开发和集成您的功能。下面是一个简化的指南&am…...
海量数据处理项目-账号微服务和流量包数据库表+索引规范(下)
海量数据处理项目-账号微服务和流量包数据库表索引规范(下) 第2集 账号微服务和流量包数据库表索引规范讲解《下》 简介:账号微服务和流量包数据库表索引规范讲解 账号和流量包的关系:一对多traffic流量包表思考点 海量数据下每…...
Nodejs 16与 gitbook搭建属于你自己的书本网站-第一篇
最近想重新搭建一个网站来存放自己的相关知识点,并向网络公开,有个hexo博客其实也不错的,但是总感觉hexo很多花里胡哨的玩意,导致挂载的博客异常卡,这样反而不利于我自己回顾博客了,于是我就开始钻研这个鬼…...
服务器被CC攻击之后怎么办?
1.取消域名绑定取消域名绑定后Web服务器的CPU能够马上恢复正常状态,通过IP进行访问连接一切正常。但是不足之处也很明显,取消或者更改域名对于别人的访问带来了不变,另外,对于针对IP的CC攻击它是无效的,就算更换域名攻…...
pygame通过重心坐标 用纹理填充三角形
texture_x int(alpha * texture_image.get_width()) texture_y int(beta * texture_image.get_height())为什么没有gama 2024/3/30 15:45:52 在使用重心坐标进行纹理映射时,通常是通过计算 alpha 和 beta 来确定纹理图片上的对应位置,而 gamma 通常是…...
Leetcode 611. 有效三角形的个数
给定一个包含非负整数的数组 nums ,返回其中可以组成三角形三条边的三元组个数。 示例 1: 输入: nums [2,2,3,4] 输出: 3 解释:有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 示例 2: 输入: nums [4,2,3,4] 输出: 4 提示: 1 < nums.len…...
Openfeign
Openfeign 相关扩展 在 2020 以前的 SpringCloud 采用 Ribbon 作为负载均衡,但是 2020 年之后,SpringCloud 吧 Ribbon 移除了,而是使用自己编写的 LoadBalancer 替代. 因此,如果在没有加入 LoadBalancer 依赖的情况下,…...
五、基于KubeAdm搭建多节点K8S集群
如需查阅上一步骤,请点击下面链接:四、戴尔R630本地服务器Linux Centos7.9系统安装docker-ce-20.10.10-3.el7版本-CSDN博客文章浏览阅读727次,点赞12次,收藏13次。1、准备工作3、Linux Centos7.9系统的iDRAC远程管理、网络设置、SecureCRT远程登录终端、企业级静态ip地址配…...
PC电脑技巧[笔记本通过网线访问设备CMW500]
笔记本局域网访问设备 现在我有一台CMW500,我要用笔记本去访问它,但是我发现没有路由器就是不能够访问,通过网线连接设备就是ping不通: 这里设置TCP/IPv4的IP地址如下,这时候就可以pin通了:...
【接口自动化测试框架】YAML管理接口框架配置的最佳实践
管理接口框架配置是构建强大的接口测试框架的关键一环。良好的配置管理可以提高测试效率、可维护性和可扩展性。在本文中,我们将重点介绍使用YAML(YAML Ain’t Markup Language)来管理接口框架配置的最佳实践,并通过实例演示其用法…...
【进程OI】基本文件操作的系统调用
文章目录 前言open参数flags参数mode writereadclose 前言 当用户想要向磁盘中的文件读写数据,就必须要得到操作系统的允许。同样,操作系统为了能让用户去对文件进行打开、读写、关闭等操作,向上提供了相应的系统调用的接口。C、JAVA、C等语…...
Ubuntu20.04 server系统部署安装(VMware上)和初始化配置
Ubuntu20.04 server部署安装(VMware上)和初始化配置 一、Ubuntu20.04 server系统部署安装上下键控制上下,可以选择配置的目标,回车表示确定,并进行下一步1.1镜像下载2.1 VMware上创建虚拟机2.2 选择语言,键…...
图论最短路径以及floyd算法的MATLAB实现
图论是数学的一个分支,起源于18世纪。1736年,数学家欧拉通过解决“哥尼斯堡七桥问题”,将问题抽象成点和线的关系,并通过理论分析得出结论,这个过程标志着图论的产生,欧拉也因此被称为“图论之父”。图论研…...
微信小程序 - 登录功能实现
一、认证流程 1. 小程序调用wx.login获取登录认证需要的code,并请求开发者服务器。 2. 开发者服务器根据code,appid, appsecret请求微信接口t获取 openid与session_key ,并生成自己的认证token,并返回给小程序。 3.小程序请求开…...
Python连接MySQL
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、整体思路二、连接流程三、表结构及代码实现 一、整体思路 二、连接流程 三、表结构及代码实现 代码块如下: import pymysqlcon pymysql.connect(h…...
水泊梁山108小酒坛之呼保义宋江
宋江【绰号呼保义、及时雨】字公明,是古典名著《水浒传》中的角色。原为山东郓城县押司,他和晁盖互通往来的事被阎婆惜发现,因此怒杀阎婆惜,逃回家隐藏。后前往清风寨投靠花荣,却被清风寨观灯时遭知寨刘高之妻陷害入狱…...
java.lang.ClassNotFoundException: javafx.application.Application
java8(jdk1.8)到java10(jdk10)中内含有JavaFx 在java11(jdk11)以及以后的版本中剥离出来需要开发者独立下载,另行导入download https://gluonhq.com/products/javafx/java --module-path $FX-P…...
腾讯 tendis 替代 redis linux安装使用
下载地址 Tendis存储版 点击下载 linux 解压 tar -zxvf 安装包.tgz cd 解压安装包/scripts 启动 ./start.sh 停止 ./stop.sh 详细配置 修改 /scripts tendisplus.conf # tendisplus configuration for testing # 绑定本机IIP bind 192.168.31.112 port 51002 #设…...
k8s调优--来自gpt
Kubernetes(K8s)性能调优是一个涉及多个方面的过程,旨在提高集群的效率和响应速度。这包括对节点、Pod、服务、网络和存储等多个层面进行调优。下面我将概述一些常见的Kubernetes性能调优方法: 节点级别的调优: 1.资源分配&…...
HTML5+CSS3小实例:旋转中的视差效果
实例:旋转中的视差效果 技术栈:HTML+CSS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scal…...
3-zookeeper之ZAB协议
Zookeeper ZAB协议 概述 ZAB(Zookeeper Automic Broadcast)是一套专门为Zookeeper设计的用于进行原子广播和崩溃恢复的协议ZAB协议主要包含了两个功能 原子广播:保证数据一致性崩溃恢复:保证集群的高可用 ZAB协议本身是基于2PC算法来进行的设计&#…...
如何为企业策划一场XR虚拟直播?
活动年年办,都是老一套,想玩点新花样? 预算有限,但还是想把活动办的逼格高一点? 想通过活动,让更多的人知道自己企业的品牌? 随着AIGC技术的不断演变,企业活动的形式和内容也在不…...
6.3物联网RK3399项目开发实录-驱动开发之I2C 使用(wulianjishu666)
物联网开发源码案例集: 链接:https://pan.baidu.com/s/1kfPDpYZpm_G0GBLAup3KTQ?pwdvgvv I2C 使用 简介 AIO-3399J 开发板上有 9 个片上 I2C 控制器,各个 I2C 的使用情况如下表: 本文主要描述如何在该开发板上配置 I2C。 配置…...
HarmonyOS实战开发-如何构建多种样式弹窗
介绍 本篇Codelab将介绍如何使用弹窗功能,实现四种类型弹窗。分别是:警告弹窗、自定义弹窗、日期滑动选择器弹窗、文本滑动选择器弹窗。需要完成以下功能: 点击左上角返回按钮展示警告弹窗。点击出生日期展示日期滑动选择器弹窗。点击性别展…...
《Effective C++》《构造/析构/赋值运算——7、为多态基类声明virtual析构函数》
文章目录 1、term7:Declare destructors virtual in polymorphic base classes2、总结3、相关面试题3.1 析构函数在什么情况下声明为虚函数 4、参考 1、term7:Declare destructors virtual in polymorphic base classes 带有多态性质的基类应该声明一个virtual析构函数&#x…...
Type-C一分二快充线智能分配方案
随着移动设备的普及和快充技术的迅猛发展,Type-C接口已成为众多手机、平板和笔记本电脑的标配。然而,在日常使用中,我们经常会遇到需要同时为多个设备充电的情况。这时,Type-C一分二快充线就显得尤为重要。为了更好地满足用户的充…...
利用python脚本,根据词条爬取百度图片(爬虫)
把广角,换成你的关键词就行 # -*- coding: utf-8 -*- """ Created on Wed Mar 29 10:17:50 2023 author: MatpyMaster """ import requests import os import redef get_images_from_baidu(keyword, page_num, save_dir):header {Us…...
java复原IP 地址(力扣Leetcode93)
复原IP 地址 力扣原题链接 问题描述 有效 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。 例如:“0.1.2.201” 和 “192.168.1.1” 是有效 IP 地址,…...
k8s的创建资源的流程图
背景 在k8s中创建资源需要经过几个流程的协作,包括认证模块,授权模块和资源管理模块的共同处理的结果 k8s的创建资源的流程图 第一步认证模块: k8s需要确保操作的客户端是合法的用户,并且不是仿冒的,也就是判断这个u…...
深圳有做网站公司/cba最新消息
# redis 配置文件示例 # 当你需要为某个配置项指定内存大小的时候,必须要带上单位,# 通常的格式就是 1k 5gb 4m 等酱紫:## 1k > 1000 bytes# 1kb > 1024 bytes# 1m > 1000000 bytes# 1mb > 1024*1024 bytes# 1g > 10000000…...
手机上可视化编程app/成都市seo网站公司
dLua类似gdb的lua调试器特性支持Linux平台C编写通过附加到其他进程上,进行调试gdb风格的调试指令,包括设置条件断点、查看变量、设置变量编译下载编译安装lua用脚本编译dlua,生成dlua与dluaagent.so,dlua是控制台,dlua…...
网站建设 案例展示/关键词优化技巧
果粉之家,专业苹果手机技术研究十年!您身边的苹果专家~在今年WWDC21开发者大会上,苹果在介绍iOS 15系统重大变化时,还曾提到一个不太引人注目的小变化。那就是在iOS 15上,用户可以直接在App内申请内购退款,…...
学校网站建设情况/上海企业seo
量化策略开发,高质量社群,交易思路分享等相关内容 『正文』 ˇ 大家好,今天我们分享第11期策略——跟踪目标出场自适应切换策略。本期策略是2022年度倒数第2期策略,2023年度松鼠俱乐部内容会更加丰富,12月出预告敬请…...
福州网站制作策划/石家庄百度seo代理
思路: 点绘制出的多边形,且直线只能平行x轴或者y轴。 要求看不见的边有多长。 思路: 只需要算出周长,减去外周长就好了。 #include<cmath> #include<cstdio> #include<cstring> #include<algorithm> #i…...
城乡建设部注册建筑师网站/最吸引人的营销广告词
Visual C#读取Excel表格中的数据: 一.程序设计及运行环境 (1).微软视窗2000 服务器版 (2)..Net Framework SDK Beta 2 (3&…...