質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
date

dateは、date型や日付に関する関数や処理についてのタグです

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Thymeleaf

Thymeleaf(タイムリーフ)とは、Java用のテンプレートエンジンで、特定のフレームワークに依存せず使用することが可能です。

Q&A

解決済

2回答

13696閲覧

date型のフォーマットの変換について。

pompompuri

総合スコア4

date

dateは、date型や日付に関する関数や処理についてのタグです

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Thymeleaf

Thymeleaf(タイムリーフ)とは、Java用のテンプレートエンジンで、特定のフレームワークに依存せず使用することが可能です。

0グッド

0クリップ

投稿2020/07/14 09:28

現在springを使用して、プログラムを作成しています。
作成で詰まってしまったところがあり、質問しました。

現在の状況を端的にまとめますと
form にjavautilのdate型で生年月日をフィールドに指定しています。

formに<yyyy/MM/dd>のフォーマットで生年月日を送りたいのですが、
このフォーマットで生年月日をHTMLを通して送ると、下記のような表示に代わってしまいます。
Sun Oct dd 00:00:00 JST YYYY

java sql dateを使用して
YYYY-MM-DD等の方法などでは実装できたのですが、

yyyy/MM/ddの形で出力したいです。

アプリケーションプロパティの中にspring.mvc.date-format=yyyy/MM/dd
を追加しても不可能でした...

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/07/14 09:59

なんというか、「できた」「不可能だった」という説明だけでは、何をやったか伝わらないですよ。 実際のコードを提示してください。 それにフォーマット変換のやり方ならネット探せば幾らでも出てくると思います。まずよく出回っているフォーマットの仕方を試してみたのでしょうか。
guest

回答2

0

ベストアンサー

例えば、Controllerの実装が以下のとき、

java

1import java.util.Date; 2 3import org.springframework.stereotype.Controller; 4import org.springframework.web.bind.annotation.GetMapping; 5import org.springframework.web.bind.annotation.RequestMapping; 6import org.springframework.web.servlet.ModelAndView; 7 8@Controller 9@RequestMapping("date") 10public class DateController { 11 12 @GetMapping 13 public ModelAndView display(ModelAndView mnv) { 14 mnv.addObject("nowDate", new Date()); 15 mnv.setViewName("date"); 16 return mnv; 17 } 18 19}

表示する画面がThymeleafのHTMLテンプレートであれば、noeDateをそのまま表示すると

html

1<!DOCTYPE html> 2<html xmlns:th="http://www.thymeleaf.org"> 3<head> 4<meta charset="UTF-8"> 5<title>Insert title here</title> 6</head> 7<body> 8 <div th:text="${nowDate}"></div> 9</body> 10</html>

こうなってしまう、ということでしょうか?

Tue Jul 14 20:21:41 GMT+09:00 2020

その場合は、HTMLテンプレート内で日付フォーマットを指定すれば解決します。

html

1<div th:text="${#dates.format(nowDate, 'yyyy/MM/dd')}"></div>

https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf_ja.html#%E6%97%A5%E4%BB%98

投稿2020/07/14 11:24

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pompompuri

2020/07/15 00:19

ありがとうございます! 具体的にかけていないのにも関わらず、答えていただきありがとうございます。 できなかったことが行えました。 今後は質問も具体的にかけるよう努力していきます。
A-pZ

2020/07/15 02:35

d(・ω・
guest

0

サーバー側のDateオブジェクトをHTMLで表示すると、意図しない表示になるってことですかね?
そのまま表示すると、そのような表示になるのは正しいです。

書式を変えたければview側でやるべきでしょう。
viewに何を利用してるのか分かりませんが、日付のフォーマットのカスタムタグなどがあれば
それで行ってください。

どうしてもサーバー側でやりたければ、以下のようにした値をFormクラスに設定してください。

Java

1String dateString = new SimpleDateFormat("yyyy/MM/dd").format(date);

そもそも、java.util.Dateはもう使うべきではありませんので、
まずはjava.time.LocalDatejava.time.LocalDateTimeなどに置き換える事を検討すべきです。
これらのクラスのフォーマットは以下のようにします。

Java

1LocalDate localDate = LocalDate.now(); 2String dateString = localDate.format(DateTimeFormatter.ofPattern("yyyy/MM/dd"));

投稿2020/07/14 11:26

root_jp

総合スコア4666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問