我可以在休眠时使用Javabeans吗?

时间:2011-06-22 23:57:37

标签: hibernate jsp javabeans

我在使用jsp的web项目中使用了 hibernate2 插件。我的项目还包含一个注册页面。

我可以使用 Javabeans 使用hibernate的类从html <form>发送信息吗?没有hibernate,我创建了一个带有get和set的类:

package com.java2s;

public class Lang {
    private String choix;
    private String comm;

    public String getChoix() {
        return choix;
    }

    public void setChoix(String choix) {
        this.choix = choix;
        //System.out.println(choix);
    }

    public String getComm() {
        return comm;
    }

    public void setComm(String comm) {
        this.comm = comm;
        // System.out.println(comm);
    }

}

但我知道hibernate会生成一个get和set类,并使用:

接收它
<jsp:useBean id='user' class='com.java2s.Lang'  type='com.java2s.Lang' scope='session' />
<jsp:setProperty name='user' property='*'/>

任何想法如何做到这一点?

2 个答案:

答案 0 :(得分:1)

Hibernate 2?目前的版本是3.6.5;我升级了。你的JSP中不应该有任何Hibernate代码;它应该将表单提交给servlet,它将验证请求参数并将其绑定到对象,然后使用Hibernate继续。

答案 1 :(得分:0)

我得到了我需要的东西,我从hibernate生成的包中调用MyDB.Etudinat 在我的jsp页面中的bean上

我就像那样保存

 <%
if(user.getUserName()!=null){

Session hibernateSession = MyDB.HibernateUtil.currentSession(); 
   Transaction tx = hibernateSession.beginTransaction();
   Etudinat etudiant = new Etudinat(); 
     etudiant.setUserName(user.getUserName());
       etudiant.setPassword(user.getPassword());
       etudiant.setEmail(user.getEmail());
       etudiant.setNom(user.getNom());
       etudiant.setPrenom(user.getPrenom());
     etudiant.setSexe(user.getSexe());
    etudiant.setQuestion(user.getQuestion());
     etudiant.setAnswer(user.getAnswer());
     etudiant.setIDFilliere(Filliere.INFORMATIQUE);
 /* out.print("<Li>"+user.getUserName());
  out.print("<Li>"+user.getPassword());
  out.print("<Li>"+user.getEmail());
  out.print("<Li>"+user.getNom());
  out.print("<Li>"+user.getPrenom());
  out.print("<Li>"+user.getSexe());
  out.print("<Li>"+user.getQuestion());
  out.print("<Li>"+user.getAnswer());

  */
hibernateSession.save(etudiant);
tx.commit();
 HibernateUtil.closeSession();
 }
  %> 

我希望这会有助于其他人