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

2025-05-29 0 103

JFinal getModel方法(从页面表单中获取Model对象)+数据库存储问题

一、getmodel方法

1.在JConfig配置类中的数据库映射(存储到数据库时需要此配置)

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17
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类

?

1

2

3

4

5

6

7
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.前端表单

?

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

前端中的name=“Modelname.atrrname”意思:比如此例中的model为GOneQuestion,表单中的属性为A,所以name就为:gOneQuestion.A

注意:只有首字母变成小写,其他不变

4.getmodel获取

?

1
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.方法名

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 java 中JFinal getModel方法和数据库使用出现问题解决办法 https://www.kuaiidc.com/117389.html

相关文章

发表评论
暂无评论