源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

java 中JFinal getModel方法和数据库使用出现问题解决办法

  • 时间:2020-12-31 02:20 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:java 中JFinal getModel方法和数据库使用出现问题解决办法
[b]JFinal getModel方法(从页面表单中获取Model对象)+数据库存储问题[/b] [b]一、getmodel方法[/b] [b]1.在JConfig配置类中的数据库映射(存储到数据库时需要此配置)[/b]
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类名称 [b]2.Model类[/b]
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();
}

[b]3.前端表单[/b]
<input type="text" name="gOneQuestion.A" class="required" maxlength="50" style="width: 250px"/>
前端中的name=“Modelname.atrrname”意思:比如此例中的model为GOneQuestion,表单中的属性为A,所以name就为:gOneQuestion.A [b]注意:只有首字母变成小写,其他不变[/b] [b]4.getmodel获取[/b]
GOneQuestion question =getModel(GOneQuestion.class);
[b]二、数据库存储问题[/b] jfianl说明文档中: User 中定义的 public static final User dao 对象是全局共享的,只能用于数据库查询, 不能用于数据承载对象。数据承载需要使用 new User().set(…)来实现。 意思是:比如本例中model定义的questiondao只能用来查询,不能用来插入数据。 插入数据时:(使用错会出现主键重复问题)
new GOneQuestion()
    .set("book", question.getStr("book"))
    .save();
删除增加数据时:GOneQuestion.questiondao.方法名
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部