分页接口改造

This commit is contained in:
aoshiguchen
2023-03-11 17:13:58 +08:00
parent 0fcc4c96ac
commit 28625f193c
85 changed files with 995 additions and 374 deletions
+30
View File
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.noear</groupId>
<artifactId>solon-parent</artifactId>
<version>2.2.1</version>
</parent>
<groupId>fun.asgc</groupId>
<artifactId>orika-solon-plugin</artifactId>
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>org.noear</groupId>
<artifactId>solon</artifactId>
</dependency>
<!--orika-->
<dependency>
<groupId>ma.glasnost.orika</groupId>
<artifactId>orika-core</artifactId>
<version>1.5.4</version>
</dependency>
</dependencies>
</project>
@@ -0,0 +1,19 @@
package fun.asgc.solon.extend.orika;
import ma.glasnost.orika.MapperFacade;
import ma.glasnost.orika.MapperFactory;
import org.noear.solon.annotation.Bean;
import org.noear.solon.annotation.Configuration;
import org.noear.solon.annotation.Inject;
/**
* @author: aoshiguchen
* @date: 2023/3/11
*/
@Configuration
public class OrikaConfiguration {
@Bean
public MapperFacade mapperFacade(@Inject MapperFactory factory) {
return factory.getMapperFacade();
}
}
@@ -0,0 +1,33 @@
package fun.asgc.solon.extend.orika;
import ma.glasnost.orika.CustomConverter;
import ma.glasnost.orika.Mapper;
import ma.glasnost.orika.MapperFactory;
import ma.glasnost.orika.impl.DefaultMapperFactory;
import ma.glasnost.orika.metadata.ClassMapBuilder;
import org.noear.solon.core.AopContext;
import org.noear.solon.core.Plugin;
/**
* @author: aoshiguchen
* @date: 2023/3/11
*/
public class XPluginImp implements Plugin {
@Override
public void start(AopContext context) throws Throwable {
DefaultMapperFactory factory = new DefaultMapperFactory.Builder().build();
context.subWrapsOfType(CustomConverter.class, bw -> {
factory.getConverterFactory().registerConverter(bw.raw());
});
context.subWrapsOfType(Mapper.class, bw -> {
factory.registerMapper(bw.raw());
});
context.subWrapsOfType(ClassMapBuilder.class, bw -> {
factory.registerClassMap((ClassMapBuilder<? extends Object, ? extends Object>) bw.raw());
});
context.wrapAndPut(MapperFactory.class, factory);
context.beanScan("fun.asgc.solon.extend.orika");
}
}
@@ -0,0 +1,2 @@
solon.plugin=fun.asgc.solon.extend.orika.XPluginImp
solon.plugin.priority=1