2012-08-07 15 views
7

Yay için yeni. Ben bahar jdbc şablonunu kullanarak bir CRUD uygulaması geliştiriyorum. Insert ile işim bitti ve seçtim. ama güncellemede bazı problemlerle karşılaşıyorum. jdbctemplate kullanarak bana basit bir güncelleme ve silme örneği sunabilir. thnks önceden.bahar jdbctemplate kullanarak bir satırı güncelleştirin

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"; 
    } 

i düzenlenmiş değerler satır kimliği göre benim DB güncellenmelidir güncelleme butonuna tıklayın

, sorunum kontrolöre jsp gelen satır kimliği eşleme nasıl. the documentation düz

+0

Hangi problemlerle yüzleşiyorsunuz? Lütfen bazı kodları ve karşılaştığınız hatayı gönderin. –

+0

güncelleme yöntemlerine gidin, birçok seçenek için http://static.springsource.org/spring/docs/3.0.x/api/org/springframework/jdbc/core/JdbcTemplate.html – NimChimpsky

+0

konsolda hata yok, ancak güncelleme işlemi gerçekleştirilmiyor. Ben denetleyicimi burada paylaştım .. –

cevap

24

:

Aşağıdaki örnek, belirli bir birincil anahtar için güncellenmiş bir sütun gösterir. Bu örnekte, bir SQL deyimi satır parametreleri için yer tutucuları vardır. Parametre değerleri varargs veya olarak alternatif olarak bir nesne dizisi olarak geçirilebilir. Bu nedenle, ilkel maddeler, ilkel sarmalayıcı sınıflarına sarılmış veya otomatik kutu kullanılarak olmalıdır. Sadece kontrolöre jsp değerleri geçmesine request.getParamater() veya command object kullanabilirsiniz

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); 
    } 
} 
+0

teşekkürler bir ton .. JSP içinde yapılması gerektiğini söylemeyi unuttum. JSP değerini denetleyiciye eşleyemiyorum. –

+1

JSP'lerin ve denetleyicilerinizin sorgunuzla ilgisi yoktur. Bir JSP içinde yapıp yapmadığınıza da, JdbcTemplate API'sı aynıdır. Ve hayır, bir JSP'de yapılmamalıdır. JSP'ler HTML biçimlendirmesi oluşturmak için kullanılır. Bir veritabanındaki bir satırın güncellenmesi, bir JSP'de yapılacak hiçbir şey içermez. –

+0

yapmak istediğim işlemler hazırda bekletme modunda kolayca yapılabilir. ama hibernate bilmiyorum ve bunu öğrenmek için zamanım yok. jdbc şablonunda bunu yapmak zorundayım. JSP benim için zorunludur çünkü bu benim UI –

İlgili konular