たびたびの質問ですが、よろしくお願いいたします。
現在参考書を参考にjavaコード練習をしているのですが、よくわからない点があります。
html
1コード 2<form name="LoginForm" id="LoginForm" method="post" action="#"> 3 User name:<input type="text" name="userName" /> 4 Password :<input type="password" name="password"> 5 <button type="submit">Login</button> 6 </form>
こちらのformタグから送信した際にjavacontrollerに記述した
java
1コード 2@ResponseBody 3 @PostMapping("/api/login") 4 public String loginApi(@RequestBody LoginForm form) { 5 List<User> users=userRepos.findByUserNameAndPassword(form.getUserName(), form.getPassword()); 6 7 LoginDto dto=new LoginDto(0,null,null,"ゲスト"); 8 if(users.size() > 0) { 9 dto=new LoginDto(users.get(0)); 10 } 11 return gson.toJson(dto); 12 }
こちらのコードに値が送信されてgsonを使って?jsファイルにjavaのデータを送っています。
javascript
1コード 2$.ajax({ 3 type: 'POST', 4 url: '/ecsite/api/login', 5 data:JSON.stringify(jsonString), 6 contentType: 'application/json', 7 datatype: 'json', 8 scriptCharset: 'utf-8' 9 })
そしてjsonでここのコードでjavaから送られてきた値をjsonを使って?受け取っていると思います。
質問の内容ですが
1.formタグのactionで#を記載しているのになぜ/api/loginが処理を担当することになったのでしょうか?action="/api/loginと書いてあるなら理解できますが、どうして#で処理が渡されるのか理解できません。
2.ajax.gson.jsonこのあたりの意味も検索したりしましたがいまいちよく理解できておりませんので簡潔に教えていただけるとありがたいです。
3.jsonのデータというのは何を表しているのでしょうか?
ながい文章で申し訳ありません。
回答いただけると助かります。
宜しくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/13 14:13