iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Java怎么获取@TableField,@TableName注解的值
  • 178
分享到

Java怎么获取@TableField,@TableName注解的值

2023-06-26 05:06:32 178人浏览 泡泡鱼
摘要

今天小编给大家分享一下Java怎么获取@TableField,@TableName注解的值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来

今天小编给大家分享一下Java怎么获取@TableField,@TableName注解的值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

如何获取@TableField,@TableName注解的值

总觉得写博客要形成自己的风格才行,不能像记流水账一样记录,比如文章有开头,过程,结尾,总结。虽说文章的好坏,跟排版无关,但是至少看得人看的舒服。所以说,要有自己的风格、比如,文章是为了记录什么,解决什么,学到了什么,总结之后给别人帮助。这才是挺有意思的一件事。

不多说,上菜。

有这么一个需求,程序中修改资料,或者代码里面需要修改到表的时候,不想通过多张日志表去记录说修改了什么,那么我定义一张表,存储表名,表字段,再存储修改的值这些。虽然说后期如果有需求要还原数据比较麻烦,但是统一处理了数据,也不会需要定义那么多张表。

操作方式

定义一个实体类

@TableName("uc_cust_lock")public class CustLock {            @TableId    @TableField("cust_lock_id")    private String custLockId;             @TableField("broker_user_id")    private String brokerUserId;                 @TableField("org_id")    private String orgId;    // get,set...省略}

获取类的信息

// 引入的jar包// import com.baomidou.mybatisplus.annotation.TableField;// import com.baomidou.mybatisplus.annotation.TableId;// import com.baomidou.mybatisplus.annotation.TableName;// import java.lang.reflect.Field; private static void getProxyPojoValue(Object object, Set<String> key1){        String id = null;        // 返回参数        HashMap<String,Object> hashMap = new HashMap<>(16);        for (String s : key1) {            Field[] fields = object.getClass().getDeclaredFields();            for (Field field : fields) {                field.setAccessible(true);                 // 获取表名                TableName table = object.getClass().getAnnotation(TableName.class);                if (table != null) {                    String tableName = table.value();                    hashMap.putIfAbsent("tableName", tableName);                }                // 获取主键id                if (id == null) {                    boolean isIdField = field.isAnnotationPresent(TableId.class);                    if (isIdField) {                        TableField tableField = field.getAnnotation(TableField.class);                        if (s.toLowerCase().equals(field.getName().toLowerCase())) {                            String tableId = tableField.value();                            hashMap.put(s,tableId);                            id = tableId;                        }                    }                }                 // 获取字段的值                boolean isTableField = field.isAnnotationPresent(TableField.class);                if (isTableField) {                    TableField tableField = field.getAnnotation(TableField.class);                    if (s.toLowerCase().equals(field.getName().toLowerCase())) {                        String fieldValue = tableField.value();                        hashMap.put(s,fieldValue);                    }                }            }        }        System.out.println(hashMap);    }

Main方法执行

public static void main(String[] args) throws IllegalAccessException {        Set<String> key1= new HashSet<>();        // 定义修改的值(后期可做成动态)        key1.add("brokerUserId");        // 定义主键id        key1.add("custlockid");        getProxyPojoValue(new CustLock(),key1);} // 结果:// {custlockid=cust_lock_id, brokerUserId=broker_user_id, tableName=uc_cust_lock}

小结一下

通过getDeclaredFields,getAnnotation这两个主要关键类去获取对应的信息。

@TableName和@TableId爆红

加入pom依赖

  <dependency>            <groupId>com.baomidou</groupId>            <artifactId>mybatis-plus-boot-starter</artifactId>            <version>3.2.0</version>        </dependency>

以上就是“Java怎么获取@TableField,@TableName注解的值”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: Java怎么获取@TableField,@TableName注解的值

本文链接: https://www.lsjlt.com/news/307149.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java怎么获取@TableField,@TableName注解的值
    今天小编给大家分享一下Java怎么获取@TableField,@TableName注解的值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来...
    99+
    2023-06-26
  • Java如何获取@TableField,@TableName注解的值
    目录如何获取@TableField,@TableName注解的值操作方式小结一下@TableName和@TableId爆红加入pom依赖如何获取@TableField,@TableN...
    99+
    2024-04-02
  • java如何获取注解的值
    在Java中,可以通过反射来获取注解的值。具体步骤如下: 首先,需要定义一个带有注解的类或方法。 @MyAnnotation(n...
    99+
    2023-10-26
    java
  • Java注解怎么获取请求参数值
    在Java中,可以使用反射来获取方法中的请求参数值。以下是一个示例代码:```javaimport java.lang.annota...
    99+
    2023-09-27
    Java
  • java怎么获取注解标注的方法
    可以使用反射机制来获取注解标注的方法。 首先,需要获得要获取注解的类的Class对象,可以通过类名.class或者对象.getCla...
    99+
    2023-10-26
    java
  • java怎么获取properties的值
    在Java中获取properties的值,可以通过使用`java.util.Properties`类来读取和操作properties...
    99+
    2023-08-18
    java properties
  • java怎么获取元注解的内容
    在Java中,可以使用反射机制来获取元注解的内容。元注解是用来修饰其他注解的注解,可以通过以下步骤获取元注解的内容: 获取目标注解...
    99+
    2023-10-26
    java
  • java怎么获取方法上的注解
    在 Java 中,可以使用反射来获取方法上的注解。可以按照以下步骤获取方法上的注解: 使用 Class 对象的 getMethod...
    99+
    2023-10-24
    java
  • java怎么获取set中的值
    在Java中,可以通过迭代器或者增强for循环来获取Set中的值。使用迭代器:```javaSet set = new HashSe...
    99+
    2023-08-19
    java
  • java怎么获取Object对象的值
    要获取Object对象的值,可以使用以下两种方法:1. 使用Object类的toString()方法获取对象的字符串表示。例如:``...
    99+
    2023-10-12
    java
  • 怎么用Spring的spel获取自定义注解参数值
    这篇文章主要介绍了怎么用Spring的spel获取自定义注解参数值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用Spring的spel获取自定义注解参数值文章都会有所收获,下面我们一起来看看吧。spel获...
    99+
    2023-06-29
  • java怎么获取url中的参数值
    在Java中,可以使用`java.net.URL`类来获取URL中的参数值。下面是一个示例代码: import java.net.U...
    99+
    2023-10-25
    java
  • java怎么解析xml获取标签属性值
    在Java中,可以使用DOM(Document Object Model)解析XML并获取标签的属性值。以下是一个简单的示例代码:`...
    99+
    2023-09-29
    java xml
  • 怎么获取arraylist的值
    要获取ArrayList中的值,可以通过以下方式之一:1. 使用get方法:可以通过ArrayList的get方法来获取指定位置上的...
    99+
    2023-10-08
    arraylist
  • java怎么获取数组中最大的值
    你可以使用循环遍历数组,然后比较每个元素的值来找到最大值。以下是一个使用Java的示例代码:```public class Main...
    99+
    2023-08-16
    java
  • Java怎么获取数组中的最大值
    要获取数组中的最大值,可以通过以下方法实现: 使用循环遍历数组,逐个比较数组中的元素,找到最大值。 public static ...
    99+
    2024-03-07
    Java
  • Java怎么获取某个数值的索引
    在Java中获取某个数值的索引可以使用for循环来遍历数组或集合,然后判断每个元素是否等于目标数值,如果相等,则返回该元素的索引。 ...
    99+
    2024-03-02
    Java
  • java如何获取map的值
    在Java中,可以使用`get()`方法从`Map`对象中获取键对应的值。具体语法如下:```javaMap map = new H...
    99+
    2023-09-11
    java
  • 怎么用java反射获取字段值
    要使用Java反射获取字段的值,可以按照以下步骤进行操作: 获取类的Class对象:通过`Class.forName()`方法或者...
    99+
    2023-10-27
    java
  • java枚举类所有值怎么获取
    在Java中,可以使用`values()`方法来获取枚举类的所有值。具体的使用方法如下所示: enum MyEnum { V...
    99+
    2023-10-26
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作