• 2024-09-30苍穹外卖项目
    https://gitee.com/wu-zhezhe/sky-delivery.git今天设置的是公共字段填充配置这不属于业务的开发employee.setUpdateTime(LocalDateTime.now());employee.setUpdateUser(BaseContext.getCurrentId());这里是配置员工信息等到菜品信息还会有菜品信息我们可以设置一个公共
  • 2024-09-23代理模式 - 动态代理
    动态代理的APIProxy动态代理类生成代理对象:Proxy.newProxyInstance(类加载器,接口数组,处理器)类加载器:对象.getClass().getClassLoader()接口数组-被代理类的所有接口:被代理对象.getClass().getInterfaces()处理器:代理对象调用方法时,会被处理器拦截InvocationHa
  • 2024-09-23scala中的apply和equal改写
    1.Scala对象的创建a.new:使用new关键字创建的对象b.伴生对象:使用object关键字创建一个单例对象c.apply:apply是一个方法,需要在伴生对象中实现这个方法2.Scala对象的所属类a.getClass:使用反射机制判断Scala对象所属的类b.isInstanceof:判断是否属于一个类型println(s1.
  • 2024-09-16JAVA-IO获取resource WEB-INF 中文件 JAR包中
    getResource+getPath()classPaththis.getClass().getClassLoader().getResource(StringUtils.EMPTY).getPath()Stringpath=this.getClass().getClassLoader().getResource(fileName).getPath();StringfilePath=URLDecoder.decode(path,StandardCharsets.UTF_8);
  • 2024-09-14java-----instanceof与getClass的区别
    java-----instanceof与getClass的区别在比较一个类是否和另一个类属于同一个类实例的时候,我们通常可以采用instanceof和getClass两种方法通过两者是否相等来判断,但是两者在判断上面是有差别的,下面从代码中看看区别:publicclassTest{ publicstaticvoidtestInstanceof(Obj
  • 2024-07-02通过反射对比两个对象是否相等
    /***通过反射对比两个对象是否相等**@paramobj1obj1*@paramobj2obj2*@returnboolean*@throwsIllegalAccessExceptione*/publicstaticbooleanpropertiesAreEqual(Objectobj1,Objectobj2)throwsIllegalAccessException{if(obj1==obj2){
  • 2024-06-21在使用InputStream templateStream = this.getClass().getClassLoader().getResourceAsStream(path); 时的相关报错
    在使用 this.getClass().getClassLoader().getResourceAsStream()读取项目目录路径下的文件需要注意在pom.xml文件中加入<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-
  • 2024-06-19对于java中向上转型后调用.getClass()方法还是子类的原因
    在java中有一个概念叫引用。官方给的定义是这样的:在Java中,"引用"(Reference)是指一个变量,它存储了对象的内存地址,而不是对象本身。换句话说,引用是指向对象的指针或者句柄。在Java中,所有的对象都通过引用来访问和操作,而不是直接访问对象本身。 通俗的将就是一个指路人,当有人询
  • 2024-06-17AOP代理的创建【底层源码】
    代理的创建(源码)创建代理的方法是postProcessAfterInitialization:如果Bean被子类标识为代理,则使用配置的拦截器创建一个代理源码参考:AOP切面底层原理【底层源码】-postProcessAfterInitialization源码部分wrapIfNecessary方法主要用于判断是否需要创建代理,如果bean能
  • 2024-05-29java的instanceOf问题
    在使用springboot+springsecurity开发项目时,使用了instanceOf判断是否属于某一个类,从而进行强转。但是今天在一个新的项目中加入security进行获取用户信息的时候发现一个问题。通过security的Authentication获取到的principal不属于同一个UserDetail 通过object.getClass
  • 2024-05-21一个基于cglib的bean copy方法
    需要guava和cglib:@NoArgsConstructor(access=AccessLevel.PRIVATE)publicclassBeanUtils{privatestaticfinalTable<Class<?>,Class<?>,BeanCopier>COPIER_TABLE=Tables.synchronizedTable(HashBasedTable.create());publicstatic<
  • 2024-05-14getclass()方法
    getclass()方法publicfinalclass<?>getClass(){}返回引用中储存的对象类型应用:通常用于判断两个引用中实际存储对象publicclassStudent{privateStringname;privateintage;publicStudent(){}publicStudent(Stringname,intage){this.name=name;
  • 2024-05-05总结一下公共字段(aop加自定义注解加反射)
    应用场景在一些业务类的创建中,我们需要反复对不同的类的同一个属性进行赋值,那么问题就出现了**代码冗余**如何解决呢思路:利用aop创造一个切面如何创造一个切面呢实质上就是扫描加设置增强位置那么如何扫描到对应的赋值方法上呢这里需要用到自定义注解了自定义注解://这
  • 2024-05-04UE4 C++ 杂
    TMap中的Find和FindRef在对蓝图节点进行C++重写时,发现UE对于TMap的Find有很多方式。首先是基础的Find,其就是返回对象类型的指针,如果不存在于TMap中其会返回nullptr接下来是FindChecked,其返回的是对象类型的引用,并且会在内部检测指针是否为空,如果没有会触发断言FindRef其
  • 2024-04-01泛型参数
    demopublicabstractclassAvconBaseServiceImpl<MextendsBaseMapper<T>,TextendsBaseEntity>extendsServiceImpl<M,T>{@AutowiredprotectedMbaseDao;@AutowiredEmsEsDeviceDaoemsEsDeviceDao;protectedLoglo
  • 2023-09-26service.getClass().getAnnotation(XXXAnnotation.class) 取值为Null
    springboot2.7java8问题在使用工厂模式封装service时,需要通过service的class获取其类型注解,但是有些工厂类可以取到annotation注解,有些取不到渠道注解:/***xxx渠道注解**/@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic@int
  • 2023-09-19getClass()方法----getName()方法
    publicclassTest{publicstaticvoidmain(String[]args){Personp=newPerson(1,"刘德华");System.out.println(p.getClass());System.out.println(p.getClass().getName());}}classPerson{intid;Stri
  • 2023-09-18关于getClass().getClassLoader().getResourceAsStream——转载自https://www.cnblogs.com/kukudi/
    关于getClass().getClassLoader().getResourceAsStreamInputStreamis=getClass().getClassLoader().getResourceAsStream("helloworld.properties");getClass():取得当前对象所属的Class对象getClassLoader():取得该Class对象的类装载器类装载器负责从Java字符文件将字符流读
  • 2023-08-31.super.getClass()方法调用?
    下面程序的输出结果是多少?importjava.util.Date;publicclassTestextendsDate{publicstaticvoidmain(String[]args){newTest().test();}publicvoidtest(){System.out.println(super.getClass().getName());}}答:结果是Test。原因:在test方法中,直接调用getC
  • 2023-08-16反射
    1.获得setter,getter方法MyObjectmyObject=newMyObject();//反射调用getter方法MethodgetMethod=myObject.getClass().getMethod("get"+"MyPropValue");Stringres=getMethod.invoke(myObject).toString();//反射调用setter方法Methodmethod=myObject
  • 2023-07-181.6-反射
    看这个网站Q:调用类对象.class和forName(类名)的区别?Class<A>classA=A.class;Class<A>classA=Class.forName("A");A:仅使用.class不能进行第一次静态初始化,forname函数则可以例如B是A的基类,下面这段代码如何?假设有父子2个类,如下:staticclassParent{}staticclass
  • 2023-07-02Java杂记————object.getClass()和object.class以及Java中的toString()方法的的区别
    不说废话,直接上干货:(注意大小写:object为对象,Object为类)1,object.getClass()它是Object类的实例方法,返回一个对象运行时的类的Class对象,换句话说,它返回的是对象具体类型的类对象。2,Object.class这是java语言的一种语法糖,用来返回一个对象所属类的Class对象(这里补充一下:Class类,
  • 2023-06-24[java] 利用反射,将对象A中与对象B中字段名相同的属性值赋予对象B
    前言:最近开发遇到了这样一个需求,前端提交的表单对应类是origin,但后端数据库表对应类是target,两者中有重合字段,origin类中有待处理字段(例如String[]ids),我想到的解决方案是将origin对象中与target对象的同名字段值赋予target,再将待处理字段拆分后赋予target进行存储。首先想到的就
  • 2023-06-2220230430 28. 访问者模式 - 男女对比
    介绍访问者模式(Visitor),表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作访问者模式适用于数据结构相对稳定的系统访问者模式把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。
  • 2023-05-23[Java]instanceof和getClass()的区别
    getClass()willbeusefulwhenyouwanttomakesureyourinstanceisNOTasubclassoftheclassyouarecomparingwith. classA{}classBextendsA{}Objecto1=newA();Objecto2=newB();o1instanceofA=>trueo1instanceofB=>false