前提・実現したいこと
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は手動で変更しています。
あなたの回答
tips
プレビュー