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

做外国网用哪些网站python网站和js做网站

做外国网用哪些网站,python网站和js做网站,公关公司都有哪些职位,c语言入门自学零基础DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负…

DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。再通俗一点来说就是前端传给后端的JSON数据其为数据库对应实体的部分字段(这样做的目的也很好理解,比如你在修改的接口使用的是完整实体,那么你可能在前端只传了你想要的改的,但是不排除其它情况的篡改,比如添加了别的不能修改的字段可能就会产生问题)
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。通俗一点就是说你在后端接口处理完返回给前端的实但是VO这要前端想要的字段
PO(Persistent Object):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。这就是VO里说的数据库完整的映射对象实体
这三个是常用的,可以通过代码生成器来直接生成
转换器:
转换器是用来将PO,VO,DTO 进行转换的工具,直接上代码:
 

   <dependency><groupId>org.mapstruct</groupId><artifactId>mapstruct</artifactId><version>${org.mapstruct.version}</version></dependency>

这是MapStruct官网提供的一个工具很好用
若源对象属性与目标对象属性名字一致,会自动映射对应属性,不一样的需要指定,也可以用 format 转成自己想要的类型,也支持表达式的方式,可以看到像 id、name、email这些名词一致的我并没有指定 source-target,而birthday-birth指定了,转换格式的 birthDateFormat 加了dateFormat 或者 birthExpressionFormat 加了 expression,如果某个属性你不想映射,可以加个 ignore=true
 

@Mapper
public interface PersonConverter {PersonConverter INSTANCE = Mappers.getMapper(PersonConverter.class);@Mappings({@Mapping(source = "birthday", target = "birth"),@Mapping(source = "birthday", target = "birthDateFormat", dateFormat = "yyyy-MM-dd HH:mm:ss"),@Mapping(target = "birthExpressionFormat", expression = "java(org.apache.commons.lang3.time.DateFormatUtils.format(person.getBirthday(),\"yyyy-MM-dd HH:mm:ss\"))"),@Mapping(source = "user.age", target = "age"),@Mapping(target = "email", ignore = true)})PersonDTO domain2dto(Person person);Person gerPerson(PersonDTO personDTO);List<PersonDTO> domain2dto(List<Person> people);
}

然后就会在target里自动生成他的实现类
项目中直接注入转换器,使用里面自己定义的方法就可以

 Person person= PersonConverter.INSTANCE.getPerson(personDTO);

MapStruct 注解的关键词
@Mapper 只有在接口加上这个注解, MapStruct 才会去实现该接口
@Mapper 里有个 componentModel 属性,主要是指定实现类的类型,一般用到两个
default:默认,可以通过 Mappers.getMapper(Class) 方式获取实例对象
spring:在接口的实现类上自动添加注解 @Component,可通过 @Autowired 方式注入
@Mapping:属性映射,若源对象属性与目标对象名字一致,会自动映射对应属性
source:源属性
target:目标属性
dateFormat:String 到 Date 日期之间相互转换,通过 SimpleDateFormat,该值为 SimpleDateFormat 的日期格式
ignore: 忽略这个字段
@Mappings:配置多个@Mapping
@MappingTarget 用于更新已有对象
@InheritConfiguration 用于继承配置

要查看完整功能可参考官网:
 

http://mapstruct.org/documentation/stable/reference/html/

http://www.yayakq.cn/news/913201/

相关文章:

  • 网站seo平台建设网站的一些基本代码
  • 官方网站的网络营销功能分析北京建设网站设计
  • 微信购物网站开发网站建设的总结
  • 品牌商城网站项目网站代做多长时间
  • godaddy网站建设合肥网站推广哪家好
  • 融水做的比较好的网站有哪些网站服务器打不开
  • 网站开发团队简介如何写用什么软件做网站seo好
  • 有没有不花钱建设网站的方法给别人做网站挣钱吗
  • 建设网站需要多长时间wordpress 搜索 多个词
  • 广州网站定制开发wordpress 浏览记录
  • 网站开发的未来发展长沙大型网站建设
  • sem搜索引擎seo网站推广公司
  • 黄岐网站制作免费推广引流平台有哪些
  • 注册网站会不会有风险seo网站推广企业
  • 连云港做网站公司哪家好自己怎么做微信小程序免费
  • 网站解析后怎么解决方法做物流网站计划
  • 个人网站建设基本流程wordpress中文论坛
  • wordpress主机分类信息网站中国企发网
  • 网站开发有啥作用做外贸需要具备什么条件
  • 贵州省建设厅省外企业官方网站在网站上做教学直播平台多少钱
  • 淮北网站建设推广海外网站加速器下载
  • 河北省建设厅网站备案网站高端定制
  • win7云主机怎么做网站做的比较好的几个宠物网站
  • 免费行情软件网站mnwwordpress 修改主题页面
  • 顺义网站制作跨境电商seo
  • 网站开发毕业答辩上海高端网站公司
  • 在国内做跨境电商怎么上外国网站网站搭建接单
  • 百度云盘做网站空间合肥seo网站推广外包
  • 网站建设如何把更改内容哈尔滨市建设工程交易网
  • 网站建设意思wordpress php文件上传