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

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

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL Workbench

MySQL Workbenchは、オープンソースのデータベースモデリングツールです。ビジュアルなデータベース設計・SQL開発・サーバー設定・ユーザー管理・バックアップといった様々な管理ツールを備えます。

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Eclipse

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

Thymeleaf

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

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

0回答

1406閲覧

掲示板に投稿した内容がスレッド別に反映されない

shinnuko

総合スコア13

MySQL Workbench

MySQL Workbenchは、オープンソースのデータベースモデリングツールです。ビジュアルなデータベース設計・SQL開発・サーバー設定・ユーザー管理・バックアップといった様々な管理ツールを備えます。

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Eclipse

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

Thymeleaf

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

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

1クリップ

投稿2020/07/25 02:11

前提・実現したいこと

Javaでスレッド型掲示板を作製しているのですが、全ての投稿が各スレッドに表示されてしまう状態になっています。
こちらの状態をスレッドAからの投稿はスレッドAのみに表示される形式に修正したいと思っています。

また、Top画面でも各スレッドの投稿を最新順に表示させているのですが、こちらも正しく反映されない状態になっています。

発生している問題・エラーメッセージ

現在発生しているエラーメッセージはありません

該当のソースコード

投稿時の文字数制限の関係もあり、Githubの方で全体像を記載させて頂きます。
掲示板のGithubはこちら
こちらには各ファイルの解説とMYSQL上でのデータを掲載させて頂きます。

MySQLDate CREATE TABLE `users` ( `user_id` int NOT NULL AUTO_INCREMENT, `password` varchar(255) NOT NULL, `name` varchar(20) NOT NULL, PRIMARY KEY (`user_id`) CREATE TABLE `boards_contents` ( `post_no` int NOT NULL AUTO_INCREMENT, `board_id` int DEFAULT NULL, `content` varchar(140) NOT NULL, `posted_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `posted_user_id` varchar(30) NOT NULL, `href_url` text, PRIMARY KEY (`post_no`) CREATE TABLE `boards` ( `board_id` int NOT NULL AUTO_INCREMENT, `board_name` varchar(30) NOT NULL, `created_user_id` int NOT NULL, PRIMARY KEY (`board_id`), KEY `created_user_id` (`created_user_id`) CREATE TABLE `auto_login_users` ( `user_id` int NOT NULL, `login_token` varchar(255) NOT NULL, `expire` timestamp NOT NULL, PRIMARY KEY (`user_id`)

______________________________
各ファイル解説

FormController Top画面のController
form.html Top画面のViewFile
FormContentInterface form.htmlとFormControllerがやりとりするクラス

BoardDto boards_contentsテーブルのEntityクラス
BoardRepository BoardDtoのインターフェース
BoardDao DB にアクセスするメソッド

CommentDto boards_contentsテーブルのEntityクラス
CommentRepository CommentDtoのインターフェース

ログイン、ユーザー登録関係
accountComplete.html ユーザー登録完了時に表示するViewFile
Completecontroller ユーザー登録完了画面のController
register.html ユーザー登録画面のViewFile
RegisterController register.htmlのController
RegisterDto formからPOSTされた時に値を受け取るクラス
RegisterprocessDto usersテーブルのEntityクラス
RegisterRepository Registerのインターフェース
RegisterService   
ユーザー登録のサービスクラス リポジトリをimportし、保存処理 パスワードハッシュ化コントローラにPOSTされた時の処理
WebSecurityConfig Spring Securityを利用するにあたり、「WebSecurityConfigurerAdapter」を継承して認証設定をしているクラス
RegisterRepository RegisterprocessDtoのインターフェース
login.html ログイン画面のViewFile
LoginController ログイン画面のController
JpaUserDetailsServiceImpl UserDetailsServiceクラスを継承
UserDetails DB認証機能
Register UserDetails形式で値を返すEntityクラス
LogoutController ログアウト機能に対してのController
error.html 操作エラー時に対しての表示画面

各スレッド関係
Thread.html 各スレッド一覧画面のViewFile
ThreadController 各スレッド一覧画面のController
shigasouth.html 滋賀南部スレッドのViewFile
ShigasouthController 滋賀南部スレッドのController
osakasouth.html 大阪南部スレッドのViewFile
OsakasouthController 大阪南部スレッドのController
kyotosouth.html 京都南部スレッドのViewFile
KyotosouthController 京都南部スレッドのController

試したこと

workbench上で実際に各スレッドから投稿した内容を確認(boards_contentsテーブル)→
投稿された際にboard_idが全て0になっているのを確認。

この事から各スレッドから投稿された際にboard_idが適切に振り分けられる様に出来れば良いと考え、workbench上でboard_idの編集を行って
みましたが、結果としてはTop画面上の問題は解決出来そうでしたが、各スレッドでの投稿表示は解決出来ませんでした。

上記の結果から、
1.Top画面での各スレッドの投稿内容表示→boards_contentsのboard_idが正しく反映される形になれば解決
2.各スレッドでのスレッド別の投稿表示→解決方法がまだ不明

となっていて、1と2の解決方法はそれぞれ別の修正が必要になるのかと考えています。

補足情報(FW/ツールのバージョンなど)

workbench上での各テーブルの状況、スレッド内の状態を参考資料として掲載します。
※boards_contentsテーブルのboards_idはスレッドから実際に投稿されると0になります。
post_no1~27の投稿データのboards_idは手動で変更しています。

boards_contentsテーブル
boardsテーブル
スレッド内

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問