程序员蜗牛
1 year ago
42 changed files with 1198 additions and 305 deletions
@ -0,0 +1,8 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="arthas.idea.plugin"> |
||||
|
<option name="redisAddress" value="" /> |
||||
|
<option name="redisAuth" value="" /> |
||||
|
<option name="redisCacheKey" value="" /> |
||||
|
</component> |
||||
|
</project> |
@ -1,62 +1,8 @@ |
|||||
<?xml version="1.0" encoding="UTF-8"?> |
<?xml version="1.0" encoding="UTF-8"?> |
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> |
<module version="4"> |
||||
<component name="FacetManager"> |
<component name="FacetManager"> |
||||
<facet type="Spring" name="Spring"> |
<facet type="Spring" name="Spring"> |
||||
<configuration /> |
<configuration /> |
||||
</facet> |
</facet> |
||||
<facet type="web" name="Web"> |
|
||||
<configuration> |
|
||||
<webroots /> |
|
||||
</configuration> |
|
||||
</facet> |
|
||||
</component> |
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> |
|
||||
<output url="file://$MODULE_DIR$/target/classes" /> |
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" /> |
|
||||
<content url="file://$MODULE_DIR$"> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> |
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" /> |
|
||||
</content> |
|
||||
<orderEntry type="inheritedJdk" /> |
|
||||
<orderEntry type="sourceFolder" forTests="false" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.17.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.17.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.29" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.56" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.2.0.Final" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.3.Final" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.22" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:1.3.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.56" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.56" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.15" level="project" /> |
|
||||
</component> |
</component> |
||||
</module> |
</module> |
@ -1,102 +1,8 @@ |
|||||
<?xml version="1.0" encoding="UTF-8"?> |
<?xml version="1.0" encoding="UTF-8"?> |
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> |
<module version="4"> |
||||
<component name="FacetManager"> |
<component name="FacetManager"> |
||||
<facet type="Spring" name="Spring"> |
<facet type="Spring" name="Spring"> |
||||
<configuration /> |
<configuration /> |
||||
</facet> |
</facet> |
||||
<facet type="web" name="Web"> |
|
||||
<configuration> |
|
||||
<webroots /> |
|
||||
<sourceRoots> |
|
||||
<root url="file://$MODULE_DIR$/src/main/java" /> |
|
||||
<root url="file://$MODULE_DIR$/src/main/resources" /> |
|
||||
</sourceRoots> |
|
||||
</configuration> |
|
||||
</facet> |
|
||||
</component> |
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> |
|
||||
<output url="file://$MODULE_DIR$/target/classes" /> |
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" /> |
|
||||
<content url="file://$MODULE_DIR$"> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> |
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" /> |
|
||||
</content> |
|
||||
<orderEntry type="inheritedJdk" /> |
|
||||
<orderEntry type="sourceFolder" forTests="false" /> |
|
||||
<orderEntry type="module" module-name="crypto-common" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.56" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.2.0.Final" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.3.Final" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.22" level="project" /> |
|
||||
<orderEntry type="module" module-name="crypto-spring-boot-starter" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:1.3.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.13.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:2.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-all:5.7.20" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-test:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.17.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.17.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.29" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-test:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.jayway.jsonpath:json-path:2.6.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: net.minidev:json-smart:2.4.7" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: net.minidev:accessors-smart:2.4.7" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm:9.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.assertj:assertj-core:3.21.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest:2.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.junit.platform:junit-platform-commons:1.8.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apiguardian:apiguardian-api:1.1.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter-params:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: org.junit.platform:junit-platform-engine:1.8.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.mockito:mockito-core:4.0.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.11.22" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy-agent:1.11.22" level="project" /> |
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: org.objenesis:objenesis:3.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.mockito:mockito-junit-jupiter:4.0.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-test:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.xmlunit:xmlunit-core:2.8.4" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.13.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.6.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.56" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.56" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.15" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.15" level="project" /> |
|
||||
</component> |
</component> |
||||
</module> |
</module> |
@ -1,91 +1,8 @@ |
|||||
<?xml version="1.0" encoding="UTF-8"?> |
<?xml version="1.0" encoding="UTF-8"?> |
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> |
<module version="4"> |
||||
<component name="FacetManager"> |
<component name="FacetManager"> |
||||
<facet type="Spring" name="Spring"> |
<facet type="Spring" name="Spring"> |
||||
<configuration /> |
<configuration /> |
||||
</facet> |
</facet> |
||||
<facet type="web" name="Web"> |
|
||||
<configuration> |
|
||||
<webroots /> |
|
||||
<sourceRoots> |
|
||||
<root url="file://$MODULE_DIR$/src/main/java" /> |
|
||||
<root url="file://$MODULE_DIR$/src/main/resources" /> |
|
||||
</sourceRoots> |
|
||||
</configuration> |
|
||||
</facet> |
|
||||
</component> |
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> |
|
||||
<output url="file://$MODULE_DIR$/target/classes" /> |
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" /> |
|
||||
<content url="file://$MODULE_DIR$"> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> |
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" /> |
|
||||
</content> |
|
||||
<orderEntry type="inheritedJdk" /> |
|
||||
<orderEntry type="sourceFolder" forTests="false" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.11" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.11" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.17.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.17.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.36" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.30" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.73" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.73" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.73" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-core:5.8.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.26" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.7.0" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.4.10" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:2.4.9" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.ow2.asm:asm:9.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.36" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.22.0" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest:2.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-commons:1.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.8.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:4.5.1" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy:1.12.23" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy-agent:1.12.23" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:3.2" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-junit-jupiter:4.5.1" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.skyscreamer:jsonassert:1.5.1" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.3.26" level="project" /> |
|
||||
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.9.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.7.10" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.13.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.13.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.13.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.13.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.13.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.13.5" level="project" /> |
|
||||
</component> |
</component> |
||||
</module> |
</module> |
@ -1,68 +1,8 @@ |
|||||
<?xml version="1.0" encoding="UTF-8"?> |
<?xml version="1.0" encoding="UTF-8"?> |
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> |
<module version="4"> |
||||
<component name="FacetManager"> |
<component name="FacetManager"> |
||||
<facet type="Spring" name="Spring"> |
<facet type="Spring" name="Spring"> |
||||
<configuration /> |
<configuration /> |
||||
</facet> |
</facet> |
||||
<facet type="web" name="Web"> |
|
||||
<configuration> |
|
||||
<webroots /> |
|
||||
</configuration> |
|
||||
</facet> |
|
||||
</component> |
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> |
|
||||
<output url="file://$MODULE_DIR$/target/classes" /> |
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" /> |
|
||||
<content url="file://$MODULE_DIR$"> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> |
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> |
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" /> |
|
||||
</content> |
|
||||
<orderEntry type="inheritedJdk" /> |
|
||||
<orderEntry type="sourceFolder" forTests="false" /> |
|
||||
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.7" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.12.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.12.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.25" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.10.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.10.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.10.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.10.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.10.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.10.3" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.33" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.18.Final" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.12" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.2.6.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.2" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.2.5.RELEASE" level="project" /> |
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: mysql:mysql-connector-java:8.0.19" level="project" /> |
|
||||
</component> |
</component> |
||||
</module> |
</module> |
@ -0,0 +1,145 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="AutoImportSettings"> |
||||
|
<option name="autoReloadType" value="SELECTIVE" /> |
||||
|
</component> |
||||
|
<component name="ChangeListManager"> |
||||
|
<list default="true" id="026d9c0a-d9eb-4b28-acd0-0ff1227a5c6d" name="Changes" comment=""> |
||||
|
<change afterPath="$PROJECT_DIR$/../.idea/setting.xml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../.idea/compiler.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../.idea/compiler.xml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../.idea/encodings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../.idea/encodings.xml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../.idea/misc.xml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../.idea/modules.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../.idea/modules.xml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../spring interface crypto 加解密 startrer/cry-common/crypto-common.iml" beforeDir="false" afterPath="$PROJECT_DIR$/../spring interface crypto 加解密 startrer/cry-common/crypto-common.iml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../spring interface crypto 加解密 startrer/cry-test/crypto-test.iml" beforeDir="false" afterPath="$PROJECT_DIR$/../spring interface crypto 加解密 startrer/cry-test/crypto-test.iml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../一个注解实现数据脱敏/tool-desensitization.iml" beforeDir="false" afterPath="$PROJECT_DIR$/../一个注解实现数据脱敏/tool-desensitization.iml" afterDir="false" /> |
||||
|
<change beforePath="$PROJECT_DIR$/../事务/springtx.iml" beforeDir="false" afterPath="$PROJECT_DIR$/../事务/springtx.iml" afterDir="false" /> |
||||
|
</list> |
||||
|
<option name="SHOW_DIALOG" value="false" /> |
||||
|
<option name="HIGHLIGHT_CONFLICTS" value="true" /> |
||||
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" /> |
||||
|
<option name="LAST_RESOLUTION" value="IGNORE" /> |
||||
|
</component> |
||||
|
<component name="FileTemplateManagerImpl"> |
||||
|
<option name="RECENT_TEMPLATES"> |
||||
|
<list> |
||||
|
<option value="Class" /> |
||||
|
</list> |
||||
|
</option> |
||||
|
</component> |
||||
|
<component name="Git.Settings"> |
||||
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." /> |
||||
|
</component> |
||||
|
<component name="MavenImportPreferences"> |
||||
|
<option name="generalSettings"> |
||||
|
<MavenGeneralSettings> |
||||
|
<option name="localRepository" value="D:\repository" /> |
||||
|
<option name="userSettingsFile" value="D:\java ruanjian\apache-maven-3.8.6-bin\apache-maven-3.8.6\conf\settings.xml" /> |
||||
|
</MavenGeneralSettings> |
||||
|
</option> |
||||
|
<option name="importingSettings"> |
||||
|
<MavenImportingSettings> |
||||
|
<option name="jdkForImporter" value="17" /> |
||||
|
</MavenImportingSettings> |
||||
|
</option> |
||||
|
</component> |
||||
|
<component name="MavenRunner"> |
||||
|
<option name="jreName" value="17" /> |
||||
|
</component> |
||||
|
<component name="ProjectColorInfo">{ |
||||
|
"associatedIndex": 3 |
||||
|
}</component> |
||||
|
<component name="ProjectId" id="2ZAmultI746Uu027qEbxb1G8NHd" /> |
||||
|
<component name="ProjectViewState"> |
||||
|
<option name="hideEmptyMiddlePackages" value="true" /> |
||||
|
<option name="showLibraryContents" value="true" /> |
||||
|
</component> |
||||
|
<component name="PropertiesComponent"><![CDATA[{ |
||||
|
"keyToString": { |
||||
|
"RequestMappingsPanelOrder0": "0", |
||||
|
"RequestMappingsPanelOrder1": "1", |
||||
|
"RequestMappingsPanelWidth0": "75", |
||||
|
"RequestMappingsPanelWidth1": "75", |
||||
|
"RunOnceActivity.OpenProjectViewOnStart": "true", |
||||
|
"RunOnceActivity.ShowReadmeOnStart": "true", |
||||
|
"WebServerToolWindowFactoryState": "false", |
||||
|
"last_opened_file_path": "D:/newgiteedemo/系统不处理业务的时候 也占用大量的内存 该如何排查并解决?", |
||||
|
"node.js.detected.package.eslint": "true", |
||||
|
"node.js.detected.package.tslint": "true", |
||||
|
"node.js.selected.package.eslint": "(autodetect)", |
||||
|
"node.js.selected.package.tslint": "(autodetect)", |
||||
|
"project.structure.last.edited": "Project", |
||||
|
"project.structure.proportion": "0.15", |
||||
|
"project.structure.side.proportion": "0.2", |
||||
|
"settings.editor.selected.configurable": "reference.projectsettings.compiler.javacompiler", |
||||
|
"vue.rearranger.settings.migration": "true" |
||||
|
} |
||||
|
}]]></component> |
||||
|
<component name="RecentsManager"> |
||||
|
<key name="CopyFile.RECENT_KEYS"> |
||||
|
<recent name="D:\newgiteedemo\内存溢出\jvm-optimize\src\main\java\com\woniu\jvmoptimize\config" /> |
||||
|
</key> |
||||
|
</component> |
||||
|
<component name="RunManager"> |
||||
|
<configuration name="JvmOptimizeApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" nameIsGenerated="true"> |
||||
|
<module name="jvm-optimize" /> |
||||
|
<option name="SPRING_BOOT_MAIN_CLASS" value="com.itheima.jvmoptimize.JvmOptimizeApplication" /> |
||||
|
<option name="VM_PARAMETERS" value="-Xmx1g -Xms1g" /> |
||||
|
<method v="2"> |
||||
|
<option name="Make" enabled="true" /> |
||||
|
</method> |
||||
|
</configuration> |
||||
|
<configuration name="JvmOptimizeApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true"> |
||||
|
<module name="jvm-optimize" /> |
||||
|
<option name="SPRING_BOOT_MAIN_CLASS" value="com.woniu.jvmoptimize.JvmOptimizeApplication" /> |
||||
|
<option name="VM_PARAMETERS" value="-Xmx1g -Xms1g" /> |
||||
|
<extension name="coverage"> |
||||
|
<pattern> |
||||
|
<option name="PATTERN" value="com.woniu.jvmoptimize.*" /> |
||||
|
<option name="ENABLED" value="true" /> |
||||
|
</pattern> |
||||
|
</extension> |
||||
|
<method v="2"> |
||||
|
<option name="Make" enabled="true" /> |
||||
|
</method> |
||||
|
</configuration> |
||||
|
<recent_temporary> |
||||
|
<list> |
||||
|
<item itemvalue="Spring Boot.JvmOptimizeApplication" /> |
||||
|
</list> |
||||
|
</recent_temporary> |
||||
|
</component> |
||||
|
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" /> |
||||
|
<component name="TaskManager"> |
||||
|
<task active="true" id="Default" summary="Default task"> |
||||
|
<changelist id="026d9c0a-d9eb-4b28-acd0-0ff1227a5c6d" name="Changes" comment="" /> |
||||
|
<created>1701873482720</created> |
||||
|
<option name="number" value="Default" /> |
||||
|
<option name="presentableId" value="Default" /> |
||||
|
<updated>1701873482720</updated> |
||||
|
<workItem from="1701873483721" duration="3010000" /> |
||||
|
<workItem from="1701878025318" duration="1306000" /> |
||||
|
<workItem from="1701947578169" duration="4669000" /> |
||||
|
<workItem from="1702089618447" duration="109000" /> |
||||
|
</task> |
||||
|
<servers /> |
||||
|
</component> |
||||
|
<component name="TypeScriptGeneratedFilesManager"> |
||||
|
<option name="version" value="3" /> |
||||
|
</component> |
||||
|
<component name="XDebuggerManager"> |
||||
|
<breakpoint-manager> |
||||
|
<breakpoints> |
||||
|
<line-breakpoint enabled="true" type="java-line"> |
||||
|
<url>file://$PROJECT_DIR$/jvm-optimize/src/main/java/com/woniu/jvmoptimize/config/UserInterceptor.java</url> |
||||
|
<line>18</line> |
||||
|
<option name="timeStamp" value="1" /> |
||||
|
</line-breakpoint> |
||||
|
</breakpoints> |
||||
|
</breakpoint-manager> |
||||
|
</component> |
||||
|
<component name="XSLT-Support.FileAssociations.UIState"> |
||||
|
<expand /> |
||||
|
<select /> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,33 @@ |
|||||
|
HELP.md |
||||
|
target/ |
||||
|
!.mvn/wrapper/maven-wrapper.jar |
||||
|
!**/src/main/**/target/ |
||||
|
!**/src/test/**/target/ |
||||
|
|
||||
|
### STS ### |
||||
|
.apt_generated |
||||
|
.classpath |
||||
|
.factorypath |
||||
|
.project |
||||
|
.settings |
||||
|
.springBeans |
||||
|
.sts4-cache |
||||
|
|
||||
|
### IntelliJ IDEA ### |
||||
|
.idea |
||||
|
*.iws |
||||
|
*.iml |
||||
|
*.ipr |
||||
|
|
||||
|
### NetBeans ### |
||||
|
/nbproject/private/ |
||||
|
/nbbuild/ |
||||
|
/dist/ |
||||
|
/nbdist/ |
||||
|
/.nb-gradle/ |
||||
|
build/ |
||||
|
!**/src/main/**/build/ |
||||
|
!**/src/test/**/build/ |
||||
|
|
||||
|
### VS Code ### |
||||
|
.vscode/ |
@ -0,0 +1,11 @@ |
|||||
|
# demo-request-scope |
||||
|
|
||||
|
《基于ThreadLocal实现一个上下文管理组件》技术博客对应源码 |
||||
|
|
||||
|
https://juejin.cn/post/7153287656624324638 |
||||
|
|
||||
|
本文基于`ThreadLocal`原理,实现了一个上下文状态管理组件`Scope`,通过开启一个自定义的`Scope`,在`Scope`范围内,可以通过`Scope`各个方法读写数据; |
||||
|
|
||||
|
通过自定义线程池实现上下文状态数据的线程间传递; |
||||
|
|
||||
|
提出了一种基于`Filter`和`Scope`的`Request`粒度的上下文管理方案。 |
@ -0,0 +1,72 @@ |
|||||
|
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> |
||||
|
<modelVersion>4.0.0</modelVersion> |
||||
|
<parent> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-parent</artifactId> |
||||
|
<version>2.7.4</version> |
||||
|
<relativePath/> <!-- lookup parent from repository --> |
||||
|
</parent> |
||||
|
<groupId>com.example</groupId> |
||||
|
<artifactId>demo-request-scope</artifactId> |
||||
|
<version>0.0.1-SNAPSHOT</version> |
||||
|
<name>demo-request-scope</name> |
||||
|
<description>Demo project for Spring Boot</description> |
||||
|
<properties> |
||||
|
<java.version>8</java.version> |
||||
|
</properties> |
||||
|
|
||||
|
|
||||
|
<dependencies> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>com.google.guava</groupId> |
||||
|
<artifactId>guava</artifactId> |
||||
|
<version>30.1-jre</version> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-aop</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<!-- 若使用redisson作为分布式锁底层,则需要引入 --> |
||||
|
<dependency> |
||||
|
<groupId>com.baomidou</groupId> |
||||
|
<artifactId>lock4j-redisson-spring-boot-starter</artifactId> |
||||
|
<version>2.2.4</version> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-web</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-test</artifactId> |
||||
|
<scope>test</scope> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.projectlombok</groupId> |
||||
|
<artifactId>lombok</artifactId> |
||||
|
<optional>true</optional> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>junit</groupId> |
||||
|
<artifactId>junit</artifactId> |
||||
|
</dependency> |
||||
|
</dependencies> |
||||
|
|
||||
|
<build> |
||||
|
<plugins> |
||||
|
<plugin> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-maven-plugin</artifactId> |
||||
|
</plugin> |
||||
|
</plugins> |
||||
|
</build> |
||||
|
|
||||
|
</project> |
@ -0,0 +1,13 @@ |
|||||
|
package com.example.demo; |
||||
|
|
||||
|
import org.springframework.boot.SpringApplication; |
||||
|
import org.springframework.boot.autoconfigure.SpringBootApplication; |
||||
|
|
||||
|
@SpringBootApplication |
||||
|
public class DemoRequestScopeApplication { |
||||
|
|
||||
|
public static void main(String[] args) { |
||||
|
SpringApplication.run(DemoRequestScopeApplication.class, args); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,172 @@ |
|||||
|
package com.example.demo.service; |
||||
|
|
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
import org.junit.Test; |
||||
|
|
||||
|
import java.util.*; |
||||
|
import java.util.stream.Collectors; |
||||
|
import java.util.stream.Stream; |
||||
|
|
||||
|
public class TestMain { |
||||
|
|
||||
|
//工作中常用的一些Stream流操作,多年实践总结
|
||||
|
|
||||
|
/** |
||||
|
* 演示map的用途:一对一转换 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void stringToIntMap() { |
||||
|
List<String> ids = Arrays.asList("205", "105", "308", "469", "627", "193", "111"); |
||||
|
// 使用流操作
|
||||
|
List<User> results = ids.stream() |
||||
|
.map(id -> { |
||||
|
User user = new User(Integer.valueOf(id)); |
||||
|
return user; |
||||
|
}) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println(results); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 演示map的用途:一对多转换 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void stringToIntFlatmap() { |
||||
|
List<String> sentences = Arrays.asList("hello world", "Jia Gou Wu Dao"); |
||||
|
// 使用流操作
|
||||
|
List<String> results = sentences.stream() |
||||
|
.flatMap(sentence -> Arrays.stream(sentence.split(" "))) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println(results); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
*filter、sorted、distinct、limit |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testGetTargetUsers() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
// 使用流操作
|
||||
|
List<User> results = ids.stream() |
||||
|
.filter(s -> s.length() > 2) |
||||
|
.distinct() |
||||
|
.map(Integer::valueOf) |
||||
|
.sorted(Comparator.comparingInt(o -> o)) |
||||
|
.limit(3) |
||||
|
.map(id -> new User(id)) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println(results); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 简单结果终止方法 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testSimpleStopOptions() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
// 统计stream操作后剩余的元素个数
|
||||
|
System.out.println(ids.stream().filter(s -> s.length() > 2).count()); |
||||
|
// 判断是否有元素值等于205
|
||||
|
System.out.println(ids.stream().filter(s -> s.length() > 2).anyMatch("205"::equals)); |
||||
|
// findFirst操作
|
||||
|
ids.stream().filter(s -> s.length() > 2) |
||||
|
.findFirst() |
||||
|
.ifPresent(s -> System.out.println("findFirst:" + s)); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 一旦一个Stream被执行了终止操作之后,后续便不可以再读这个流执行其他的操作了,否则会报错 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testHandleStreamAfterClosed() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
Stream<String> stream = ids.stream().filter(s -> s.length() > 2); |
||||
|
// 统计stream操作后剩余的元素个数
|
||||
|
System.out.println(stream.count()); |
||||
|
System.out.println("-----下面会报错-----"); |
||||
|
// 判断是否有元素值等于205
|
||||
|
try { |
||||
|
System.out.println(stream.anyMatch("205"::equals)); |
||||
|
} catch (Exception e) { |
||||
|
e.printStackTrace(); |
||||
|
} |
||||
|
System.out.println("-----上面会报错-----"); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 生成集合 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testCollectStopOptions() { |
||||
|
List<User> ids = Arrays.asList(new User(17), new User(22), new User(23)); |
||||
|
// collect成list
|
||||
|
List<User> collectList = ids.stream().filter(dept -> dept.getId() > 20) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println("collectList:" + collectList); |
||||
|
// collect成Set
|
||||
|
Set<User> collectSet = ids.stream().filter(dept -> dept.getId() > 20) |
||||
|
.collect(Collectors.toSet()); |
||||
|
System.out.println("collectSet:" + collectSet); |
||||
|
// collect成HashMap,key为id,value为Dept对象
|
||||
|
Map<Integer, User> collectMap = ids.stream().filter(dept -> dept.getId() > 20) |
||||
|
.collect(Collectors.toMap(User::getId, dept -> dept)); |
||||
|
System.out.println("collectMap:" + collectMap); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 生成拼接字符串 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testCollectJoinStrings() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
String joinResult = ids.stream().collect(Collectors.joining(",")); |
||||
|
System.out.println("拼接后:" + joinResult); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 数学运算 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testNumberCalculate() { |
||||
|
List<Integer> ids = Arrays.asList(10, 20, 30, 40, 50); |
||||
|
// 计算平均值
|
||||
|
Double average = ids.stream().collect(Collectors.averagingInt(value -> value)); |
||||
|
System.out.println("平均值:" + average); |
||||
|
// 数据统计信息
|
||||
|
IntSummaryStatistics summary = ids.stream().collect(Collectors.summarizingInt(value -> value)); |
||||
|
System.out.println("数据统计信息: " + summary); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
@Data |
||||
|
@AllArgsConstructor |
||||
|
class User { |
||||
|
private int id; |
||||
|
|
||||
|
} |
@ -0,0 +1 @@ |
|||||
|
|
@ -0,0 +1,21 @@ |
|||||
|
spring: |
||||
|
redis: |
||||
|
database: 0 |
||||
|
# Redis服务器地址 写你的ip |
||||
|
host: 192.168.56.10 |
||||
|
# Redis服务器连接端口 |
||||
|
port: 6379 |
||||
|
# Redis服务器连接密码(默认为空) |
||||
|
password: 123456 |
||||
|
# 连接池最大连接数(使用负值表示没有限制 类似于mysql的连接池 |
||||
|
jedis: |
||||
|
pool: |
||||
|
max-active: 200 |
||||
|
# 连接池最大阻塞等待时间(使用负值表示没有限制) 表示连接池的链接拿完了 现在去申请需要等待的时间 |
||||
|
max-wait: -1 |
||||
|
# 连接池中的最大空闲连接 |
||||
|
max-idle: 10 |
||||
|
# 连接池中的最小空闲连接 |
||||
|
min-idle: 0 |
||||
|
# 连接超时时间(毫秒) 去链接redis服务端 |
||||
|
timeout: 6000 |
@ -0,0 +1,172 @@ |
|||||
|
package com.example.demo.testscope; |
||||
|
|
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
import org.junit.jupiter.api.Test; |
||||
|
|
||||
|
import java.util.*; |
||||
|
import java.util.stream.Collectors; |
||||
|
import java.util.stream.Stream; |
||||
|
|
||||
|
public class TestMain { |
||||
|
|
||||
|
//工作中常用的一些Stream流操作,多年实践总结
|
||||
|
|
||||
|
/** |
||||
|
* 演示map的用途:一对一转换 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void stringToIntMap() { |
||||
|
List<String> ids = Arrays.asList("205", "105", "308", "469", "627", "193", "111"); |
||||
|
// 使用流操作
|
||||
|
List<User> results = ids.stream() |
||||
|
.map(id -> { |
||||
|
User user = new User(Integer.valueOf(id)); |
||||
|
return user; |
||||
|
}) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println(results); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 演示map的用途:一对多转换 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void stringToIntFlatmap() { |
||||
|
List<String> sentences = Arrays.asList("hello world", "Jia Gou Wu Dao"); |
||||
|
// 使用流操作
|
||||
|
List<String> results = sentences.stream() |
||||
|
.flatMap(sentence -> Arrays.stream(sentence.split(" "))) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println(results); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
*filter、sorted、distinct、limit |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testGetTargetUsers() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
// 使用流操作
|
||||
|
List<User> results = ids.stream() |
||||
|
.filter(s -> s.length() > 2) |
||||
|
.distinct() |
||||
|
.map(Integer::valueOf) |
||||
|
.sorted(Comparator.comparingInt(o -> o)) |
||||
|
.limit(3) |
||||
|
.map(id -> new User(id)) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println(results); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 简单结果终止方法 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testSimpleStopOptions() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
// 统计stream操作后剩余的元素个数
|
||||
|
System.out.println(ids.stream().filter(s -> s.length() > 2).count()); |
||||
|
// 判断是否有元素值等于205
|
||||
|
System.out.println(ids.stream().filter(s -> s.length() > 2).anyMatch("205"::equals)); |
||||
|
// findFirst操作
|
||||
|
ids.stream().filter(s -> s.length() > 2) |
||||
|
.findFirst() |
||||
|
.ifPresent(s -> System.out.println("findFirst:" + s)); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 一旦一个Stream被执行了终止操作之后,后续便不可以再读这个流执行其他的操作了,否则会报错 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testHandleStreamAfterClosed() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
Stream<String> stream = ids.stream().filter(s -> s.length() > 2); |
||||
|
// 统计stream操作后剩余的元素个数
|
||||
|
System.out.println(stream.count()); |
||||
|
System.out.println("-----下面会报错-----"); |
||||
|
// 判断是否有元素值等于205
|
||||
|
try { |
||||
|
System.out.println(stream.anyMatch("205"::equals)); |
||||
|
} catch (Exception e) { |
||||
|
e.printStackTrace(); |
||||
|
} |
||||
|
System.out.println("-----上面会报错-----"); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 生成集合 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testCollectStopOptions() { |
||||
|
List<User> ids = Arrays.asList(new User(17), new User(22), new User(23)); |
||||
|
// collect成list
|
||||
|
List<User> collectList = ids.stream().filter(dept -> dept.getId() > 20) |
||||
|
.collect(Collectors.toList()); |
||||
|
System.out.println("collectList:" + collectList); |
||||
|
// collect成Set
|
||||
|
Set<User> collectSet = ids.stream().filter(dept -> dept.getId() > 20) |
||||
|
.collect(Collectors.toSet()); |
||||
|
System.out.println("collectSet:" + collectSet); |
||||
|
// collect成HashMap,key为id,value为Dept对象
|
||||
|
Map<Integer, User> collectMap = ids.stream().filter(dept -> dept.getId() > 20) |
||||
|
.collect(Collectors.toMap(com.example.demo.testscope.User::getId, dept -> dept)); |
||||
|
System.out.println("collectMap:" + collectMap); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 生成拼接字符串 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testCollectJoinStrings() { |
||||
|
List<String> ids = Arrays.asList("205", "10", "308", "49", "627", "193", "111", "193"); |
||||
|
String joinResult = ids.stream().collect(Collectors.joining(",")); |
||||
|
System.out.println("拼接后:" + joinResult); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 数学运算 |
||||
|
*/ |
||||
|
@Test |
||||
|
public void testNumberCalculate() { |
||||
|
List<Integer> ids = Arrays.asList(10, 20, 30, 40, 50); |
||||
|
// 计算平均值
|
||||
|
Double average = ids.stream().collect(Collectors.averagingInt(value -> value)); |
||||
|
System.out.println("平均值:" + average); |
||||
|
// 数据统计信息
|
||||
|
IntSummaryStatistics summary = ids.stream().collect(Collectors.summarizingInt(value -> value)); |
||||
|
System.out.println("数据统计信息: " + summary); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
@Data |
||||
|
@AllArgsConstructor |
||||
|
class User { |
||||
|
private int id; |
||||
|
|
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<module version="4"> |
||||
|
<component name="FacetManager"> |
||||
|
<facet type="Spring" name="Spring"> |
||||
|
<configuration /> |
||||
|
</facet> |
||||
|
</component> |
||||
|
</module> |
@ -0,0 +1,110 @@ |
|||||
|
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> |
||||
|
<modelVersion>4.0.0</modelVersion> |
||||
|
<parent> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-parent</artifactId> |
||||
|
<version>2.6.7</version> |
||||
|
<relativePath/> <!-- lookup parent from repository --> |
||||
|
</parent> |
||||
|
<groupId>com.woniu.mp</groupId> |
||||
|
<artifactId>mp-demo</artifactId> |
||||
|
<version>0.0.1-SNAPSHOT</version> |
||||
|
<name>mp-demo</name> |
||||
|
<description>Demo project for Spring Boot</description> |
||||
|
<properties> |
||||
|
<java.version>1.8</java.version> |
||||
|
<org.mapstruct.version>1.5.5.Final</org.mapstruct.version> |
||||
|
<org.projectlombok.version>1.18.30</org.projectlombok.version> |
||||
|
</properties> |
||||
|
<dependencies> |
||||
|
<dependency> |
||||
|
<groupId>org.mapstruct</groupId> |
||||
|
<artifactId>mapstruct</artifactId> |
||||
|
<version>${org.mapstruct.version}</version> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>org.mapstruct</groupId> |
||||
|
<artifactId>mapstruct-processor</artifactId> |
||||
|
<version>${org.mapstruct.version}</version> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.projectlombok</groupId> |
||||
|
<artifactId>lombok-mapstruct-binding</artifactId> |
||||
|
<version>0.2.0</version> |
||||
|
</dependency> |
||||
|
|
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>mysql</groupId> |
||||
|
<artifactId>mysql-connector-java</artifactId> |
||||
|
<version>8.0.30</version> |
||||
|
</dependency> |
||||
|
|
||||
|
|
||||
|
<!--Swagger 依赖--> |
||||
|
<dependency> |
||||
|
<groupId>io.springfox</groupId> |
||||
|
<artifactId>springfox-swagger2</artifactId> |
||||
|
<version>2.9.2</version> |
||||
|
</dependency> |
||||
|
<!--Swagger-ui 依赖--> |
||||
|
<dependency> |
||||
|
<groupId>io.springfox</groupId> |
||||
|
<artifactId>springfox-swagger-ui</artifactId> |
||||
|
<version>2.9.2</version> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>org.projectlombok</groupId> |
||||
|
<artifactId>lombok</artifactId> |
||||
|
<optional>true</optional> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-test</artifactId> |
||||
|
<scope>test</scope> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-web</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<dependency> |
||||
|
<groupId>com.baomidou</groupId> |
||||
|
<artifactId>mybatis-plus-boot-starter</artifactId> |
||||
|
<version>3.0.5</version> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>cn.hutool</groupId> |
||||
|
<artifactId>hutool-all</artifactId> |
||||
|
<version>5.8.11</version> |
||||
|
</dependency> |
||||
|
</dependencies> |
||||
|
|
||||
|
|
||||
|
<build> |
||||
|
<plugins> |
||||
|
<plugin> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-maven-plugin</artifactId> |
||||
|
<configuration> |
||||
|
<excludes> |
||||
|
<exclude> |
||||
|
<groupId>org.projectlombok</groupId> |
||||
|
<artifactId>lombok</artifactId> |
||||
|
</exclude> |
||||
|
</excludes> |
||||
|
</configuration> |
||||
|
</plugin> |
||||
|
</plugins> |
||||
|
</build> |
||||
|
|
||||
|
</project> |
@ -0,0 +1,21 @@ |
|||||
|
package com.woniu.mp; |
||||
|
|
||||
|
import org.springframework.boot.SpringApplication; |
||||
|
import org.springframework.boot.autoconfigure.SpringBootApplication; |
||||
|
|
||||
|
/** |
||||
|
* <p> |
||||
|
* 基于mybatisPlus的代码生成器插件 |
||||
|
* </p> |
||||
|
* @author woniu |
||||
|
* @since 2023-09-24 |
||||
|
*/ |
||||
|
@SpringBootApplication |
||||
|
public class MpDemoApplication { |
||||
|
|
||||
|
public static void main(String[] args) { |
||||
|
SpringApplication.run(MpDemoApplication.class, args); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
@ -0,0 +1,16 @@ |
|||||
|
spring: |
||||
|
datasource: |
||||
|
url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai |
||||
|
driver-class-name: com.mysql.cj.jdbc.Driver |
||||
|
username: root |
||||
|
password: 123456 |
||||
|
hikari: |
||||
|
#最大连接数量,默认10 |
||||
|
maximum-pool-size: 1 |
||||
|
logging: |
||||
|
level: |
||||
|
com.itheima: debug |
||||
|
pattern: |
||||
|
dateformat: HH:mm:ss |
||||
|
mybatis: |
||||
|
mapper-locations: classpath*:mapper/*.xml |
@ -0,0 +1,5 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
<mapper namespace="com.woniu.mp.mapper.UserMapper"> |
||||
|
|
||||
|
</mapper> |
@ -0,0 +1,12 @@ |
|||||
|
package com.woniu.mp; |
||||
|
|
||||
|
import org.junit.jupiter.api.Test; |
||||
|
|
||||
|
class MpDemoApplicationTests { |
||||
|
|
||||
|
@Test |
||||
|
void contextLoads() { |
||||
|
|
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,69 @@ |
|||||
|
package com.woniu.mp.mapper; |
||||
|
|
||||
|
|
||||
|
import com.woniu.mp.mapstruct.first.Source; |
||||
|
import com.woniu.mp.mapstruct.first.SourceTargetMapper; |
||||
|
import com.woniu.mp.mapstruct.first.Target; |
||||
|
|
||||
|
import com.woniu.mp.mapstruct.second.Customer; |
||||
|
import com.woniu.mp.mapstruct.second.CustomerDto; |
||||
|
import com.woniu.mp.mapstruct.second.CustomerMapper; |
||||
|
import org.junit.jupiter.api.Test; |
||||
|
import org.springframework.boot.test.context.SpringBootTest; |
||||
|
|
||||
|
import javax.annotation.Resource; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
@SpringBootTest |
||||
|
class TestTransactionTest { |
||||
|
@Resource |
||||
|
TestTransaction testTransaction; |
||||
|
|
||||
|
@Resource |
||||
|
SourceTargetMapper targetMapper; |
||||
|
|
||||
|
@Resource |
||||
|
CustomerMapper customerMapper; |
||||
|
|
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 常量转换 |
||||
|
*/ |
||||
|
@Test |
||||
|
void testFirst() { |
||||
|
Source source = new Source(); |
||||
|
source.setLongProp(1l); |
||||
|
source.setStringProp("woniu"); |
||||
|
Target target = targetMapper.sourceToTarget(source); |
||||
|
System.out.println(target); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 转换中调用表达式 |
||||
|
*/ |
||||
|
@Test |
||||
|
void testSecond() { |
||||
|
CustomerDto customerDto = new CustomerDto(); |
||||
|
customerDto.setId(1L); |
||||
|
customerDto.setTime(new Date()); |
||||
|
customerDto.setCustomerName("woniu"); |
||||
|
customerDto.setFormat("yyyy-MM"); |
||||
|
Customer customer = customerMapper.toCustomer(customerDto); |
||||
|
System.out.println(customer); |
||||
|
} |
||||
|
|
||||
|
@Test |
||||
|
void testThird() { |
||||
|
CustomerDto customerDto = new CustomerDto(); |
||||
|
customerDto.setId(1L); |
||||
|
customerDto.setTime(new Date()); |
||||
|
customerDto.setCustomerName("woniu"); |
||||
|
customerDto.setFormat("yyyy-MM"); |
||||
|
Customer customer = customerMapper.toCustomer(customerDto); |
||||
|
System.out.println(customer); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
# Default ignored files |
||||
|
/shelf/ |
||||
|
/workspace.xml |
||||
|
# Editor-based HTTP Client requests |
||||
|
/httpRequests/ |
||||
|
# Datasource local storage ignored files |
||||
|
/dataSources/ |
||||
|
/dataSources.local.xml |
@ -0,0 +1 @@ |
|||||
|
111 |
@ -0,0 +1,18 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="CompilerConfiguration"> |
||||
|
<annotationProcessing> |
||||
|
<profile name="Maven default annotation processors profile" enabled="true"> |
||||
|
<sourceOutputDir name="target/generated-sources/annotations" /> |
||||
|
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> |
||||
|
<outputRelativeToContentRoot value="true" /> |
||||
|
<module name="jvm-optimize" /> |
||||
|
</profile> |
||||
|
</annotationProcessing> |
||||
|
</component> |
||||
|
<component name="JavacSettings"> |
||||
|
<option name="ADDITIONAL_OPTIONS_OVERRIDE"> |
||||
|
<module name="jvm-optimize" options="-parameters" /> |
||||
|
</option> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,7 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="Encoding"> |
||||
|
<file url="file://$PROJECT_DIR$/jvm-optimize/src/main/java" charset="UTF-8" /> |
||||
|
<file url="file://$PROJECT_DIR$/jvm-optimize/src/main/resources" charset="UTF-8" /> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,20 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="RemoteRepositoriesConfiguration"> |
||||
|
<remote-repository> |
||||
|
<option name="id" value="central" /> |
||||
|
<option name="name" value="Maven Central repository" /> |
||||
|
<option name="url" value="https://repo1.maven.org/maven2" /> |
||||
|
</remote-repository> |
||||
|
<remote-repository> |
||||
|
<option name="id" value="central" /> |
||||
|
<option name="name" value="Central Repository" /> |
||||
|
<option name="url" value="http://maven.aliyun.com/nexus/content/groups/public" /> |
||||
|
</remote-repository> |
||||
|
<remote-repository> |
||||
|
<option name="id" value="jboss.community" /> |
||||
|
<option name="name" value="JBoss Community repository" /> |
||||
|
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> |
||||
|
</remote-repository> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,11 @@ |
|||||
|
<project version="4"> |
||||
|
<component name="ExternalStorageConfigurationManager" enabled="true" /> |
||||
|
<component name="MavenProjectsManager"> |
||||
|
<option name="originalFiles"> |
||||
|
<list> |
||||
|
<option value="$PROJECT_DIR$/jvm-optimize/pom.xml" /> |
||||
|
</list> |
||||
|
</option> |
||||
|
</component> |
||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK" /> |
||||
|
</project> |
@ -0,0 +1,8 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="arthas.idea.plugin"> |
||||
|
<option name="redisAddress" value="" /> |
||||
|
<option name="redisAuth" value="" /> |
||||
|
<option name="redisCacheKey" value="" /> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,124 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="Palette2"> |
||||
|
<group name="Swing"> |
||||
|
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" /> |
||||
|
</item> |
||||
|
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" /> |
||||
|
<initial-values> |
||||
|
<property name="text" value="Button" /> |
||||
|
</initial-values> |
||||
|
</item> |
||||
|
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> |
||||
|
<initial-values> |
||||
|
<property name="text" value="RadioButton" /> |
||||
|
</initial-values> |
||||
|
</item> |
||||
|
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> |
||||
|
<initial-values> |
||||
|
<property name="text" value="CheckBox" /> |
||||
|
</initial-values> |
||||
|
</item> |
||||
|
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" /> |
||||
|
<initial-values> |
||||
|
<property name="text" value="Label" /> |
||||
|
</initial-values> |
||||
|
</item> |
||||
|
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> |
||||
|
<preferred-size width="150" height="-1" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> |
||||
|
<preferred-size width="150" height="-1" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> |
||||
|
<preferred-size width="150" height="-1" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> |
||||
|
<preferred-size width="150" height="50" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> |
||||
|
<preferred-size width="150" height="50" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> |
||||
|
<preferred-size width="150" height="50" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> |
||||
|
<preferred-size width="150" height="50" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3"> |
||||
|
<preferred-size width="150" height="50" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> |
||||
|
<preferred-size width="150" height="50" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> |
||||
|
<preferred-size width="200" height="200" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> |
||||
|
<preferred-size width="200" height="200" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1"> |
||||
|
<preferred-size width="-1" height="20" /> |
||||
|
</default-constraints> |
||||
|
</item> |
||||
|
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" /> |
||||
|
</item> |
||||
|
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false"> |
||||
|
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" /> |
||||
|
</item> |
||||
|
</group> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,6 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="VcsDirectoryMappings"> |
||||
|
<mapping directory="$PROJECT_DIR$/.." vcs="Git" /> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,9 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<module type="JAVA_MODULE" version="4"> |
||||
|
<component name="NewModuleRootManager" inherit-compiler-output="true"> |
||||
|
<exclude-output /> |
||||
|
<content url="file://$MODULE_DIR$" /> |
||||
|
<orderEntry type="inheritedJdk" /> |
||||
|
<orderEntry type="sourceFolder" forTests="false" /> |
||||
|
</component> |
||||
|
</module> |
@ -0,0 +1,8 @@ |
|||||
|
# Default ignored files |
||||
|
/shelf/ |
||||
|
/workspace.xml |
||||
|
# Editor-based HTTP Client requests |
||||
|
/httpRequests/ |
||||
|
# Datasource local storage ignored files |
||||
|
/dataSources/ |
||||
|
/dataSources.local.xml |
@ -0,0 +1,18 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="CompilerConfiguration"> |
||||
|
<annotationProcessing> |
||||
|
<profile name="Maven default annotation processors profile" enabled="true"> |
||||
|
<sourceOutputDir name="target/generated-sources/annotations" /> |
||||
|
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> |
||||
|
<outputRelativeToContentRoot value="true" /> |
||||
|
<module name="jvm-optimize" /> |
||||
|
</profile> |
||||
|
</annotationProcessing> |
||||
|
</component> |
||||
|
<component name="JavacSettings"> |
||||
|
<option name="ADDITIONAL_OPTIONS_OVERRIDE"> |
||||
|
<module name="jvm-optimize" options="-parameters" /> |
||||
|
</option> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,6 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="Encoding"> |
||||
|
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" /> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,20 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="RemoteRepositoriesConfiguration"> |
||||
|
<remote-repository> |
||||
|
<option name="id" value="central" /> |
||||
|
<option name="name" value="Maven Central repository" /> |
||||
|
<option name="url" value="https://repo1.maven.org/maven2" /> |
||||
|
</remote-repository> |
||||
|
<remote-repository> |
||||
|
<option name="id" value="central" /> |
||||
|
<option name="name" value="Central Repository" /> |
||||
|
<option name="url" value="http://maven.aliyun.com/nexus/content/groups/public" /> |
||||
|
</remote-repository> |
||||
|
<remote-repository> |
||||
|
<option name="id" value="jboss.community" /> |
||||
|
<option name="name" value="JBoss Community repository" /> |
||||
|
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> |
||||
|
</remote-repository> |
||||
|
</component> |
||||
|
</project> |
@ -0,0 +1,15 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="ExternalStorageConfigurationManager" enabled="true" /> |
||||
|
<component name="MavenProjectsManager"> |
||||
|
<option name="originalFiles"> |
||||
|
<list> |
||||
|
<option value="$PROJECT_DIR$/pom.xml" /> |
||||
|
</list> |
||||
|
</option> |
||||
|
</component> |
||||
|
<component name="MavenRunner"> |
||||
|
<option name="jreName" value="17" /> |
||||
|
</component> |
||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK" /> |
||||
|
</project> |
@ -0,0 +1,6 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<project version="4"> |
||||
|
<component name="VcsDirectoryMappings"> |
||||
|
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" /> |
||||
|
</component> |
||||
|
</project> |
Loading…
Reference in new issue