私は春が初めてです。 Spring jdbcテンプレートを使用してCRUDアプリケーションを開発しています。挿入と選択が完了しました。しかし、更新ではいくつかの問題に直面しています。誰でも私にjdbctemplateを使用した更新と削除の簡単な例を提供できますか?事前にthnks。
MY CONTROLLER-
@RequestMapping(method = RequestMethod.GET)
public String showUserForm(@ModelAttribute(value="userview") User user,ModelMap model)
{
List list=userService.companylist();
model.addAttribute("list",list);
return "viewCompany";
}
@RequestMapping( method = RequestMethod.POST)
public String add(@ModelAttribute(value="userview") @Valid User user, BindingResult result)
{
userValidator.validate(user, result);
if (result.hasErrors()) {
return "viewCompany";
} else {
userService.updateCompany(user);
System.out.println("value updated");
return "updateSuccess";
}
更新ボタンをクリックすると、編集された値がDBで行IDに従って更新されるはずです。問題は、行IDをjspからコントローラーにマップする方法です。
ドキュメント から直接:
次の例は、特定の主キーに対して更新された列を示しています。この例では、SQLステートメントに行パラメーターのプレースホルダーがあります。パラメータ値は、可変引数として、またはオブジェクトの配列として渡すことができます。したがって、プリミティブは、プリミティブラッパークラスで明示的に、または自動ボックス化を使用してラップする必要があります。
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
public class ExecuteAnUpdate {
private JdbcTemplate jdbcTemplate;
public void setDataSource(DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
}
public void setName(int id, String name) {
this.jdbcTemplate.update(
"update mytable set name = ? where id = ?",
name, id);
}
}
request.getParamater()
またはcommand object
を使用して、jspからコントローラーに値を渡すことができます。