io.github.cqpsjsl:pojoutils

Sonatype helps open source projects to set up Maven repositories on https://oss.sonatype.org/

License

License

GroupId

GroupId

io.github.cqpsjsl
ArtifactId

ArtifactId

pojoutils
Last Version

Last Version

1.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

Sonatype helps open source projects to set up Maven repositories on https://oss.sonatype.org/
Source Code Management

Source Code Management

https://github.com/cqpsjsl/pojoutils

Download pojoutils

How to add to project

<!-- https://jarcasting.com/artifacts/io.github.cqpsjsl/pojoutils/ -->
<dependency>
    <groupId>io.github.cqpsjsl</groupId>
    <artifactId>pojoutils</artifactId>
    <version>1.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/io.github.cqpsjsl/pojoutils/
implementation 'io.github.cqpsjsl:pojoutils:1.0.1'
// https://jarcasting.com/artifacts/io.github.cqpsjsl/pojoutils/
implementation ("io.github.cqpsjsl:pojoutils:1.0.1")
'io.github.cqpsjsl:pojoutils:jar:1.0.1'
<dependency org="io.github.cqpsjsl" name="pojoutils" rev="1.0.1">
  <artifact name="pojoutils" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.github.cqpsjsl', module='pojoutils', version='1.0.1')
)
libraryDependencies += "io.github.cqpsjsl" % "pojoutils" % "1.0.1"
[io.github.cqpsjsl/pojoutils "1.0.1"]

Dependencies

compile (1)

Group / Artifact Type Version
org.slf4j : slf4j-api jar 2.0.0-alpha0

test (1)

Group / Artifact Type Version
junit : junit jar 4.13.1

Project Modules

There are no modules declared in this project.

pojoConverter

介绍

JavaBean之间的转换,DAO->Vo的转换。DAO的字段多,Vo的字段少。需要把DAO里的部分数据赋值给Vo

注意

转换之间参数类型需要一致 String name -----> String userName

API

返回值 方法名 说明
converter(T fromObject, V destObject);
converterByOrder(T fromObject, V destObject);
List listConverter(List formList, List destList, Class<?> destClazz);
setName(String formName, String destName)
setIgnoreName(String ignoreName)

使用说明

UserDao

/**
* 从数据库查询出来的Bean
**/
@Data
public class UserDao{
  Integer id;
  String name;
  String password;
  String nickname;
}

UserVo

/**
* 前端需要的
**/
@Data
public class UserVo{
  Integer userId;
  String username;
  String nickname;
}

id需要赋值给userId,name需要赋值给username,并且password字段UserVo是不需要的,如果是几十个字段。get、set很浪费时间。

单个bean

UserDao user = new UserDao(); 
// 假设user是从数据库查询出来的
UserVo userVo = new UserVo();
// 需要将UserDao 中的成员变量赋值给UserVo中,并且舍弃多余的字段

Converter converter = PojoUtils.converter();
converter.setName("id","userId").setName("name","username"); //  名称不一样可在调用converter方法之前调用此方法
converter.converter(user,userVo);
// userVo 赋值完毕

List类型

List<UserDao> users = new ArrayList<>();
// 假设这是从数据库查询出来的多条数据
ArrayList<UserVo> userVos = new ArrayList<>();

Converter converter = PojoUtils.converter();
converter.setName("id","userId").setName("name","username"); //  名称不一样可在调用converter方法之前调用此方法
converter.listConverter(users,userVos, UserVo.class);

clear()

// 清空setName的缓存区
converter.clear();

Versions

Version
1.0.1
1.0