spring mvcでプロジェクトを作成し始めています.jspからコントローラにタイプを取得する際に疑問があります。spring mvcで永続データを発行する
私が持っている瞬間(JSP)で:
<form method="POST" action="pb.html">
<h2>Description: <textarea style="resize:none;" name="description" form="usrform" maxlength="47"></textarea><h2>
<br>
Number: <input type="number" min="1" value="1" name="number" />
<input type="submit" value="Create Volume" />
</form>
マイコントローラ:
package book;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class BookController {
@Autowired
private BookDao bookDAO;
@RequestMapping(value="/book")
public ModelAndView BOOKSTORE(HttpServletRequest request) {
String description = request.getParameter("description");
String number = request.getParameter("number");
if(description != null && number != null)
bookDAO.persist(new Book(description, Integer.parseInt(number)));
// Prepare the result view (book.jsp):
return new ModelAndView("book.jsp", "bookDao", bookDAO);
}
}
contollerは文字列にテキストエリアを変換することはできませんので、私のデータが永続化されていないようです何らかの理由で番号を変換できません。
いくつかのサイトは、次のJSPで使用するように言う:
<h2>Description: <input type="text" name="description"></input><h2>
<br>
Number: <input type="text" name="number" />
しかし、私は、ユーザーが完全な説明を表示したいので、これは、私には意味がありません(私はテキスト領域を必要とする)と、私は番号フィールドに数字を入力するだけでいいので、それを使用する方が意味があります。
誰でも手伝ってもらえますか?
よろしく
Daoではなく保存された本をモデルに追加し、スプリングフォームタグを使用して結果をバインドします。 –