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只能用来查询,不能用来插入数据。

插入数据时:(使用错会出现主键重复问题)

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

删除增加数据时:GOneQuestion.questiondao.方法名

java 中JFinal getModel方法和数据库使用出现问题解决办法的更多相关文章

  1. 千万不要误用 java 中的 HashCode 方法

    刚才debug追堆栈的时候发现一个很奇怪的问题 我用IE8和Google的浏览器访问同一个地址 Action的 scope="session" 也设置了 而且两个浏览器提交的参数m ...

  2. 浅谈Java中的hashcode方法

    哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: 1 public native int hashCode(); 根据 ...

  3. Java中的toString()方法

    Java中的toString()方法 目录 Java中的toString()方法 1.    对象的toString方法 2.    基本类型的toString方法 3.    数组的toString ...

  4. Java中的main()方法详解

    在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是 ...

  5. 【转】浅谈Java中的hashcode方法(这个demo可以多看看)

    浅谈Java中的hashcode方法 哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: public native i ...

  6. JAVA中的finalize()方法

    [转]JAVA中的finalize()方法 今天早上看Thinking in java的[第四章 初始化和清除].[  清除:终结和垃圾回收]的时候, 看到了这个东西. 用于清理滴... 当然,这个方 ...

  7. Java中的native方法

    博客引用地址:Java中的native方法 今天花了两个小时把一份关于什么是Native Method的英文文章好好了读了一遍,以下是我依据原文的理解. 一. 什么是Native Method 简单地 ...

  8. 详解Java中的clone方法

    详解Java中的clone方法 参考:http://blog.csdn.net/zhangjg_blog/article/details/18369201/ 所谓的复制对象,首先要分配一个和源对象同样 ...

  9. Java多线程(四)java中的Sleep方法

    点我跳过黑哥的卑鄙广告行为,进入正文. Java多线程系列更新中~ 正式篇: Java多线程(一) 什么是线程 Java多线程(二)关于多线程的CPU密集型和IO密集型这件事 Java多线程(三)如何 ...

随机推荐

  1. 某某水表-M1卡数据算法分析

    # 某某水表-M1卡数据算法分析 ## 卡片数据-----------------------------扇区数据 | 金额:--- |:---13EC 0000 0000 0000 0000 000 ...

  2. VirtualBox下Linux加载Windows的共享目录

    1.Windows下,在VirtualBox安装增强功能. 菜单 -> 设备 -> 安装增强功能 2.Windows下,在VirtualBox设置共享目录. 设置 -> 共享文件夹 ...

  3. 如何在线制作gif图片?

    最近想做个gif在线制作的网站,所以研究下了imagemagick和graphicsmagick制作gif图片站已经做出来了:有兴趣的朋友可以先看看http://www.sosogif.com/mak ...

  4. R学习----数据类型

    今天开始学习R语言了,没原因,就是想学 本人开发环境在ubuntu 16.04 LTS下 R命令提示符 终端直接输入R进入交互模式进行R学习.如下图 R脚本 # My first program in ...

  5. 【犀牛书笔记】JavaScript正则表达式的模式匹配

    正则表达式,是一个描述字符模式的对象. JavaScript用RegExp类表示正则表达式 String和RegExp都定义了相关方法 原创文章,转载请注明:http://www.cnblogs.co ...

  6. sign-up 签约注册

    sign-up    搜索网络['sin,ʌp]      n.  注册; 签约;

  7. .NET开发笔记--对config文件的操作(1)

    1先写一些常用的公共类: 在Web.config文件中的配置: <!-- appSettings网站信息配置--> <appSettings> <add key=&quo ...

  8. JS刷新页面后滚动条的位置不变

    有时候,在网页中点击了页面中的按钮或是刷新了页面后,页面滚动条又 会回到顶部,想看后面的记录就又要拖动滚动条,或者要按翻页键,非常不方便,想在提交页面或者在页面刷新的时候仍然保持滚动条的位置不变,最好 ...

  9. 【BZOJ】2018: [Usaco2009 Nov]农场技艺大赛(暴力)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2018 精度问题我也是醉了.. #include <cstdio> #include &l ...

  10. C++设计模式之建造者模式(二)

    3.省略指挥者Director的建造者模式 指挥者类Director在建造者模式中扮演很关键的数据.简单的Director类用于指导详细建造者怎样构建产品,它按一定次序调用Builder的buildP ...