From c816787e068f36dadc4f73751d286a3c45a5a1c8 Mon Sep 17 00:00:00 2001 From: YuCheng Hu Date: Mon, 8 Aug 2022 09:34:25 -0400 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=A0=B8=E5=BF=83=20Java=20?= =?UTF-8?q?=E7=9A=84=E6=A8=A1=E5=9D=97=EF=BC=8C=E5=9C=A8=E8=BF=99=E9=87=8C?= =?UTF-8?q?=E6=88=91=E4=BB=AC=E4=B8=BB=E8=A6=81=E9=92=88=E5=AF=B9=E4=B8=80?= =?UTF-8?q?=E4=BA=9B=E7=8E=AF=E5=A2=83=E5=92=8C=20IDE=20=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E9=9D=9E=E5=B8=B8=E5=9F=BA=E6=9C=AC=E7=9A=84=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E8=AE=A8=E8=AE=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core-java-modules/core-java/.gitignore | 26 +++++++++ core-java-modules/core-java/README.md | 6 +++ core-java-modules/core-java/pom.xml | 54 +++++++++++++++++++ .../java/com/ossez/features/Template.java | 11 ++++ .../core-java/src/main/resources/logback.xml | 13 +++++ .../util/CurrentDateTimeUnitTest.java | 42 +++++++++++++++ .../core-java/src/test/resources/.gitignore | 13 +++++ 7 files changed, 165 insertions(+) create mode 100644 core-java-modules/core-java/.gitignore create mode 100644 core-java-modules/core-java/README.md create mode 100644 core-java-modules/core-java/pom.xml create mode 100644 core-java-modules/core-java/src/main/java/com/ossez/features/Template.java create mode 100644 core-java-modules/core-java/src/main/resources/logback.xml create mode 100644 core-java-modules/core-java/src/test/java/com/ossez/features/util/CurrentDateTimeUnitTest.java create mode 100644 core-java-modules/core-java/src/test/resources/.gitignore diff --git a/core-java-modules/core-java/.gitignore b/core-java-modules/core-java/.gitignore new file mode 100644 index 0000000000..3de4cc647e --- /dev/null +++ b/core-java-modules/core-java/.gitignore @@ -0,0 +1,26 @@ +*.class + +0.* + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* +.resourceCache + +# Packaged files # +*.jar +*.war +*.ear + +# Files generated by integration tests +*.txt +backup-pom.xml +/bin/ +/temp + +#IntelliJ specific +.idea/ +*.iml \ No newline at end of file diff --git a/core-java-modules/core-java/README.md b/core-java-modules/core-java/README.md new file mode 100644 index 0000000000..0ca45409d3 --- /dev/null +++ b/core-java-modules/core-java/README.md @@ -0,0 +1,6 @@ +## Java 核心 + +本模块中包含有关 Java 核心新增功能特性的一些文章。 + +### 相关文章: +- [Java Preview Features](https://www.baeldung.com/java-preview-features) diff --git a/core-java-modules/core-java/pom.xml b/core-java-modules/core-java/pom.xml new file mode 100644 index 0000000000..edf8842edf --- /dev/null +++ b/core-java-modules/core-java/pom.xml @@ -0,0 +1,54 @@ + + + 4.0.0 + core-java + core-java + jar + + + com.ossez.core-java-modules + core-java-modules + 0.0.2-SNAPSHOT + + + + + org.apache.commons + commons-collections4 + ${commons-collections4.version} + + + org.projectlombok + lombok + ${lombok.version} + provided + + + + org.assertj + assertj-core + ${assertj.version} + test + + + + + core-java-8 + + + src/main/resources + true + + + + + + + 4.1 + + 3.6.1 + + + \ No newline at end of file diff --git a/core-java-modules/core-java/src/main/java/com/ossez/features/Template.java b/core-java-modules/core-java/src/main/java/com/ossez/features/Template.java new file mode 100644 index 0000000000..72891daaf5 --- /dev/null +++ b/core-java-modules/core-java/src/main/java/com/ossez/features/Template.java @@ -0,0 +1,11 @@ +package com.ossez.features; + +import java.time.Clock; +import java.time.Instant; +import java.time.ZoneId; + +public class Template { + + private static final Clock clock = Clock.fixed(Instant.parse("2016-10-09T15:10:30.00Z"), ZoneId.of("UTC")); + +} diff --git a/core-java-modules/core-java/src/main/resources/logback.xml b/core-java-modules/core-java/src/main/resources/logback.xml new file mode 100644 index 0000000000..11032b47f4 --- /dev/null +++ b/core-java-modules/core-java/src/main/resources/logback.xml @@ -0,0 +1,13 @@ + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + \ No newline at end of file diff --git a/core-java-modules/core-java/src/test/java/com/ossez/features/util/CurrentDateTimeUnitTest.java b/core-java-modules/core-java/src/test/java/com/ossez/features/util/CurrentDateTimeUnitTest.java new file mode 100644 index 0000000000..be598e73ef --- /dev/null +++ b/core-java-modules/core-java/src/test/java/com/ossez/features/util/CurrentDateTimeUnitTest.java @@ -0,0 +1,42 @@ +package com.ossez.features.util; + +import static org.junit.Assert.assertEquals; + +import java.time.Clock; +import java.time.Instant; +import java.time.LocalDate; +import java.time.LocalTime; +import java.time.ZoneId; +import java.time.temporal.ChronoField; + +import org.junit.jupiter.api.Test; + +public class CurrentDateTimeUnitTest { + + private static final Clock clock = Clock.fixed(Instant.parse("2016-10-09T15:10:30.00Z"), ZoneId.of("UTC")); + + @Test + public void shouldReturnCurrentDate() { + final LocalDate now = LocalDate.now(clock); + + assertEquals(9, now.get(ChronoField.DAY_OF_MONTH)); + assertEquals(10, now.get(ChronoField.MONTH_OF_YEAR)); + assertEquals(2016, now.get(ChronoField.YEAR)); + } + + @Test + public void shouldReturnCurrentTime() { + final LocalTime now = LocalTime.now(clock); + + assertEquals(15, now.get(ChronoField.HOUR_OF_DAY)); + assertEquals(10, now.get(ChronoField.MINUTE_OF_HOUR)); + assertEquals(30, now.get(ChronoField.SECOND_OF_MINUTE)); + } + + @Test + public void shouldReturnCurrentTimestamp() { + final Instant now = Instant.now(clock); + + assertEquals(clock.instant().getEpochSecond(), now.getEpochSecond()); + } +} diff --git a/core-java-modules/core-java/src/test/resources/.gitignore b/core-java-modules/core-java/src/test/resources/.gitignore new file mode 100644 index 0000000000..83c05e60c8 --- /dev/null +++ b/core-java-modules/core-java/src/test/resources/.gitignore @@ -0,0 +1,13 @@ +*.class + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* + +# Packaged files # +*.jar +*.war +*.ear \ No newline at end of file