当前位置: 首页 > news >正文

电子书网站用dz还是wordpress学习建设网站

电子书网站用dz还是wordpress,学习建设网站,wordpress替代软件,网站备案地址目录 问题现象#xff1a; 问题分析#xff1a; 解决方法#xff1a; 问题现象#xff1a; 最近在项目中经常会使用到BeanUtils工具类来作对象的属性字段拷贝#xff0c;但如果应用到List集合的话就需要遍历去操作了#xff0c;如下#xff1a; 打印结果#xff1a; …目录 问题现象 问题分析 解决方法 问题现象 最近在项目中经常会使用到BeanUtils工具类来作对象的属性字段拷贝但如果应用到List集合的话就需要遍历去操作了如下 打印结果 于是打算写个通用工具类来实现适配各种数据类型的List集合对象属性拷贝的功能。 问题分析 我们都知道实体类中基本都需要getter和setter方法以便对创建的对象进行取值和赋值操作但当遇到一个对象含有多个属性时如果使用每个属性对应的set方法来赋值就显得代码很冗长也比较浪费时间。 所以为了解决这个问题很多时候我们都会用到Spring自带的工具类BeanUtils。该工具类有个很强大的方法就可以用于拷贝对象属性值到另一个对象中去而且这两个对象不需要数据类型相同只要两个对象存在相同属性/字段名即可实现拷贝非常方便 测试代码如下 Student实体类 public class Student {private String name;private Integer age;public Student() {}public Student(String name, Integer age) {this.name name;this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age age;}Overridepublic String toString() {return Student{ name name \ , age age };} }Man实体类 public class Man {private String name;private Integer age;private String sex 男;public Man() {}public Man(String name, Integer age) {this.name name;this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age age;}public String getSex() {return sex;}public void setSex(String sex) {this.sex sex;}Overridepublic String toString() {return Man{ name name \ , age age , sex sex \ };} }CopyTest测试类 import xxx.Man;//导入Man实体类 import xxx.Student;//导入Student实体类 import org.springframework.beans.BeanUtils;/*** 测试对象属性拷贝*/ public class CopyTest {public static void main(String[] args) {Student student new Student(张三, 18);Man man new Man();System.out.println(man);BeanUtils.copyProperties(student, man);System.out.println(man);} } 打印结果 上面的很顺利地拷贝了Student对象的name和age属性值到Man对象中去了但是如果是List集合的话则必须遍历了如下 import xxx.Man;//导入Man实体类 import xxx.Student;//导入Student实体类 import org.springframework.beans.BeanUtils;import java.util.ArrayList; import java.util.Arrays; import java.util.List;/*** 测试ListObject集合对象属性拷贝*/ public class CopyTest {public static void main(String[] args) { // Student student new Student(张三, 18); // // Man man new Man(); // System.out.println(man); // // BeanUtils.copyProperties(student, man); // System.out.println(man);ListStudent studentList Arrays.asList(new Student(张三, 18), new Student(钱二, 17), new Student(赵一, 16));// 方法1遍历ArrayListMan men new ArrayList();studentList.stream().forEach(item - {Man man new Man();BeanUtils.copyProperties(item, man);men.add(man);});System.out.println(men);} } 打印结果 可以看到也很顺利的实现了List集合对象间元素属性拷贝的功能。 但是遍历的方法并不通用无法适配所有数据类型也就是说每当遇到这种需要对List集合对象间元素属性进行拷贝的时候就必须针对数据类型写上这些固定格式的代码 studentList.stream().forEach(item - {Man man new Man();BeanUtils.copyProperties(item, man);men.add(man);});因此我打算写个通用的工具类来代替这些代码这样使用起来就会很方便了 解决方法 CopyListUtil工具类如下 import org.springframework.beans.BeanUtils; import org.springframework.util.CollectionUtils;import java.util.ArrayList; import java.util.List; import java.util.function.Supplier;/*** ListObject集合对象属性拷贝工具类* author : Stephen* version : 1.0* date : 2024/2/29*/ public class CopyListUtil extends BeanUtils {/*** ListObject集合对象属性拷贝** param sources* param target* param S* param T* return*/public static S, T ListT copyListProperties(ListS sources, SupplierT target) {if ( CollectionUtils.isEmpty(sources)){return new ArrayListT();}ListT list new ArrayList(sources.size());for (S source : sources) {T t target.get();copyProperties(source, t);list.add(t);}return list;} } 测试类如下 import xxx.Man;//导入Man实体类 import xxx.Student;//导入Student实体类 import com.stephen.util.CopyListUtil;//导入CopyListUtil工具类 import org.springframework.beans.BeanUtils;import java.util.ArrayList; import java.util.Arrays; import java.util.List;/*** 测试ListObject集合对象属性拷贝*/ public class CopyTest {public static void main(String[] args) { // Student student new Student(张三, 18); // // Man man new Man(); // System.out.println(man); // // BeanUtils.copyProperties(student, man); // System.out.println(man);ListStudent studentList Arrays.asList(new Student(张三, 18), new Student(钱二, 17), new Student(赵一, 16));// 方法1遍历 // ArrayListMan men new ArrayList(); // studentList.stream().forEach(item - { // Man man new Man(); // BeanUtils.copyProperties(item, man); // men.add(man); // }); // System.out.println(men);// 方法2使用工具类进行遍历ListMan men2 CopyListUtil.copyListProperties(studentList, Man::new);System.out.println(men2);} } 打印结果
http://www.w-s-a.com/news/666175/

相关文章:

  • 网站302跳转网站建设完成后 下一步做什么
  • 赣州制作网站企业硬件开发用什么语言
  • 新网站如何被网站收录百度排名优化软件
  • html网站简易模板国内买机票的网站建设
  • 百度关键词分析工具百度seo排名软
  • 自己怎样做免费网站ueditor 上传wordpress
  • 深圳高端网站开发网站建设公司销售技巧
  • 网站建设的优势是什么意思可拖动网站
  • 建设什么企业网站网站微信认证
  • 网站开发的平台成都有哪些好玩的
  • 上海金瑞建设集团网站怎么创建免费网页
  • 柳州做网站设计的公司制作网站软件下载
  • 湖南seo网站开发苏州网络营销及网站推广
  • 如何发布自己做的网站郑州网站建设定制开发
  • 重庆网站商城宁波网络公司联系方式
  • 个人网站建设实验心得seo课程简介
  • 免费自助建站系统下载推广app网站
  • 用scala做的网站标题关键词优化技巧
  • 百度网站评级wordpress忘记admin
  • 建筑标准下载网站263企业邮箱 登陆
  • 旅游房地产网站建设德保网站建设
  • 网站高端建设wordpress订单系统
  • 建设网站成本增加网站备案
  • 行业网站建设方案百度云图片转wordpress
  • 如何建设网站推广平台营销客户管理软件
  • 网站制作南宁如何撰写一个网站规划建设方案
  • 建站网站和维护需要会什么杭州人防质监站网址
  • 唐山免费做网站莱芜吧贴吧最新消息
  • 韶关市建设工程造价网站网络营销的平台有哪些
  • 网站建设费大概多少钱成都网站建设低价