首頁  >  文章  >  Java  >  java中JFinal getModel方法和資料庫使用出現問題的實例詳解

java中JFinal getModel方法和資料庫使用出現問題的實例詳解

黄舟
黄舟原創
2017-04-15 09:08:032304瀏覽

這篇文章主要介紹了java 中JFinal getModel方法和資料庫使用出現問題解決辦法的相關資料,需要的朋友可以參考下

JFinal getModel方法(從頁面表單中取得Model 物件)+資料庫儲存問題

一、getmodel方法

1.JConfig配置類別中的資料庫映射(儲存到資料庫時需要此配置)


public void configPlugin(Plugins me) {
    C3p0Plugin cp = null;
    try {
      cp = new C3p0Plugin(
          "jdbc:mysql://localhost:3306/huaxuetang?useUnicode=true&characterEncoding=utf-8",
          "root", "1234");
      System.out.println("成功");
    } catch (Exception e) {
      System.out.println("连接失败");
    }
    me.add(cp);
    ActiveRecordPlugin arp = new ActiveRecordPlugin(cp);
    arp.setShowSql(true);
    me.add(arp);
    arp.addMapping("bse_user", "id", User.class);
    arp.addMapping("grade_one_choice","id",GOneQuestion.class);
  }

中arp。 addMapping()中有三個參數,第一個是資料庫表名,第二個主鍵,第三個是對應的Model類別名稱

2.Model類別


import com.jfinal.plugin.activerecord.Model;

public class GOneQuestion extends Model<GOneQuestion>{
  private static final long serialVersionUID = 1L;
  // 声明一个全局操作的变量
  public final static GOneQuestion questiondao = new GOneQuestion();
}

3.前端表單


#
<input type="text" name="gOneQuestion.A" class="required" maxlength="50" style="width: 250px"/>

前端中的name=「Modelname.atrrname」意思:比如此例中的model為GOneQuestion,表單中的屬性為A,所以name就為:gOneQuestion.A

注意:只有首字母變成小寫,其他不變

4.getmodel取得


#
GOneQuestion question =getModel(GOneQuestion.class);

二、資料庫儲存問題

jfianl說明文件中:

User 中定義的public static final User dao 物件是全域共用的,只能用於資料庫查詢, 不能用於資料承載對象。資料承載需要使用 new User().set(…)來實作。

意思是:例如本例中model定義的questiondao只能用來查詢,不能用來插入資料

插入資料時:(使用錯誤會出現主鍵重複問題)


new GOneQuestion()
        .set("book", question.getStr("book"))
        .save();

刪除增加資料時:GOneQuestion.questiondao.方法名

以上是java中JFinal getModel方法和資料庫使用出現問題的實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn