欢迎大神来优化工具类(类型转换工具类)

        public class ConversionUtils<T1, T2> {
            /**
             * T1为类1  T2为类2
             */
            public T2 types(T1 t1, T2 T2) {
                //t1转换t2
                BeanUtils.copyProperties(t1, T2);
                //TODO 这里怎么直接返回T2传过来的类型??在外面接收的时候不需要强转类型?
                return T2;
            }
        }
测试类
    public class test1 extends ConversionUtils {
        @Test
        public void show() {
            PayCratePayTokenDto payCratePayTokenDto = new PayCratePayTokenDto();
            payCratePayTokenDto.setOrderId("1");
            payCratePayTokenDto.setPayAmount(1000);
            payCratePayTokenDto.setUserId(1);
           //TODO 怎么去除这一步强转步骤????????
            PaymentTransactionDo o = (PaymentTransactionDo) types(payCratePayTokenDto, new PaymentTransactionDo());
            System.out.println(o);
        }
    }

//工具类
package com.mayikt.core.utils;

import org.springframework.beans.BeanUtils;

public class ConversionUtils {
/**
* T1为类1 T2为类2
*/
public <T1,T2> T2 typeConversion(T1 t1, T2 t2) {
//t1转换t2
BeanUtils.copyProperties(t1, t2);
return t2;
}

}

//测试类 完美解决
package com.mayikt.test;

import com.mayikt.core.utils.ConversionUtils;
import com.mayikt.pay.PayCratePayTokenDto;
import com.mayikt.pay.mapper.entity.PaymentTransactionDo;
import org.junit.Test;

public class test1 extends ConversionUtils {
@Test
public void show() {
PayCratePayTokenDto payCratePayTokenDto = new PayCratePayTokenDto();
payCratePayTokenDto.setOrderId(“1”);
payCratePayTokenDto.setPayAmount(1000);
payCratePayTokenDto.setUserId(1);
PaymentTransactionDo o = typeConversion(payCratePayTokenDto, new PaymentTransactionDo());
System.out.println(o);
}
}

学一下 markdown表达式。

哈哈哈哈 晚上学学 到时候直接上传.md的文档