diff --git a/src/main/java/io/spring/api/ArticleApi.java b/src/main/java/io/spring/api/ArticleApi.java index c80afa31d..92b70fcac 100644 --- a/src/main/java/io/spring/api/ArticleApi.java +++ b/src/main/java/io/spring/api/ArticleApi.java @@ -33,7 +33,7 @@ public class ArticleApi { private ArticleCommandService articleCommandService; @GetMapping - public ResponseEntity article( + public ResponseEntity> article( @PathVariable("slug") String slug, @AuthenticationPrincipal User user) { return articleQueryService .findBySlug(slug, user) @@ -42,7 +42,7 @@ public ResponseEntity article( } @PutMapping - public ResponseEntity updateArticle( + public ResponseEntity> updateArticle( @PathVariable("slug") String slug, @AuthenticationPrincipal User user, @Valid @RequestBody UpdateArticleParam updateArticleParam) { diff --git a/src/main/java/io/spring/api/CommentsApi.java b/src/main/java/io/spring/api/CommentsApi.java index c5f7e77e9..6dd329f8e 100644 --- a/src/main/java/io/spring/api/CommentsApi.java +++ b/src/main/java/io/spring/api/CommentsApi.java @@ -38,7 +38,7 @@ public class CommentsApi { private CommentQueryService commentQueryService; @PostMapping - public ResponseEntity createComment( + public ResponseEntity> createComment( @PathVariable("slug") String slug, @AuthenticationPrincipal User user, @Valid @RequestBody NewCommentParam newCommentParam) { diff --git a/src/main/java/io/spring/api/exception/InvalidRequestException.java b/src/main/java/io/spring/api/exception/InvalidRequestException.java index 68b6c868a..7360d717e 100644 --- a/src/main/java/io/spring/api/exception/InvalidRequestException.java +++ b/src/main/java/io/spring/api/exception/InvalidRequestException.java @@ -4,7 +4,7 @@ @SuppressWarnings("serial") public class InvalidRequestException extends RuntimeException { - private final Errors errors; + private final transient Errors errors; public InvalidRequestException(Errors errors) { super(""); diff --git a/src/main/java/io/spring/infrastructure/mybatis/DateTimeHandler.java b/src/main/java/io/spring/infrastructure/mybatis/DateTimeHandler.java index 19323e565..9e65a63a3 100644 --- a/src/main/java/io/spring/infrastructure/mybatis/DateTimeHandler.java +++ b/src/main/java/io/spring/infrastructure/mybatis/DateTimeHandler.java @@ -15,30 +15,34 @@ @MappedTypes(DateTime.class) public class DateTimeHandler implements TypeHandler { - private static final Calendar UTC_CALENDAR = Calendar.getInstance(TimeZone.getTimeZone("UTC")); + private static final TimeZone UTC = TimeZone.getTimeZone("UTC"); + + private static Calendar utcCalendar() { + return Calendar.getInstance(UTC); + } @Override public void setParameter(PreparedStatement ps, int i, DateTime parameter, JdbcType jdbcType) throws SQLException { ps.setTimestamp( - i, parameter != null ? new Timestamp(parameter.getMillis()) : null, UTC_CALENDAR); + i, parameter != null ? new Timestamp(parameter.getMillis()) : null, utcCalendar()); } @Override public DateTime getResult(ResultSet rs, String columnName) throws SQLException { - Timestamp timestamp = rs.getTimestamp(columnName, UTC_CALENDAR); + Timestamp timestamp = rs.getTimestamp(columnName, utcCalendar()); return timestamp != null ? new DateTime(timestamp.getTime()) : null; } @Override public DateTime getResult(ResultSet rs, int columnIndex) throws SQLException { - Timestamp timestamp = rs.getTimestamp(columnIndex, UTC_CALENDAR); + Timestamp timestamp = rs.getTimestamp(columnIndex, utcCalendar()); return timestamp != null ? new DateTime(timestamp.getTime()) : null; } @Override public DateTime getResult(CallableStatement cs, int columnIndex) throws SQLException { - Timestamp ts = cs.getTimestamp(columnIndex, UTC_CALENDAR); + Timestamp ts = cs.getTimestamp(columnIndex, utcCalendar()); return ts != null ? new DateTime(ts.getTime()) : null; } }