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