关于郭婶Litepal框架,保存和修改返回值提示成功,但是数据库的值没改变的问题

如题,一直在使用郭婶的litepal,真的很方便的一个框架,郭婶的博客中也讲的很详细,上手很快,不过,今天在我的项目中发现了这么一个问题,就是我update后,返回了1,说明我更新成功了一条数据,但是,我再次打开的时候,发现那条数据没有变,我又试了试保存,也有同样的问题,但是有时候又是正常的,通过查看源码发现,郭婶的数据库里面是有做过优化的,直接删了两个条件,也就是去掉优化,结果就立刻解决了,不过应该还有更好的办法,我时间来不及就直接删掉了优化的部分。

DataHandler中有个判断在917-919行,删掉

//			if (!isFieldWithDefaultValue(baseObj, field)) {
				putContentValues(baseObj, field, values);
//			}

当然,可以根据自己不需要优化的实体类来判断,这样其他可以正常使用不需要删除优化的模块也可以正常运行,这里给出郭婶LitePal的教程博客http://blog.csdn.net/guolin_blog/article/details/38461239

时间: 2024-10-13 15:10:12

关于郭婶Litepal框架,保存和修改返回值提示成功,但是数据库的值没改变的问题的相关文章

浅析郭婶儿子--LitePal框架(三)

毕业半年了,Android也学习了半年了,零零散散的学了一些,漫无目的,于是看了看郭哥的<<第一行代码>>,真心觉得不错,对于没有系统培训过Android的来说,是一本很好的书籍,忘了谁问过我怎么学Android,说实在的我也不知道,我也是个小菜,但是看过这本书之后,推荐去看一看,对于新手来说是本很好地资料,对于接触过的人来说可以好好玩完善你的知识体系,当然没人都有自己的认识,以上只是代表我的个人观点. 今天我们继续接上回讲说LitePal框架源码浅析,本博客只是浅析,更详细的移步

浅析郭婶儿子--LitePal框架(一)

最近看了郭神的LitePal框架感觉愣牛逼,牛逼之余,也很好奇他是如何实现的,好奇心害死猫啊!跟随大神脚步,看源码. 1.在使用LitePal框架的时候,在项目的assets目录下面新建一个litepal.xml文件,其中的内容包括数据库的名称,版本,以及映射,那它如何去把这些内容映射进去的? 先贴一下litepal.xml代码: <?xml version="1.0" encoding="utf-8"?> <litepal> <!--

(四)SSO之CAS框架单点登录,修改验证数据库的方式

应需求的变化,在登录cas的时候,默认根据用户名和密码进行验证,如果加上用户名,密码和一个系统标识进行验证呢?该如何做呢? 我们知道cas默认的登录界面中,输入的用户名和密码,再配置一下deployerConfigContext.xml 这个文件中的bean  org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler 的这个标签,写上对应的sql,以及在<bean id="dataSource" class=&q

phpstorm取消自动保存,修改未保存的文件显示*星号

phpstorm会自动保存用户修改的代码,而且对应修改过的文件没有*号显示,这对于用习惯了手动保存的用户来说很不习惯,如何通过设置把它改回来呢?1.取消自动保存进入 File -> Settings ->Appearance->System Settings,取消下面两选项的勾选:Save files on frame deactivationSave files automatically if application is idle for xx sec. 2.星星标记进入 File

Thinkphp框架中自定义修改success和error页面

Thinkphp框架中自定义修改success和error页面 Thinkphp框架的默认success和error太难看,可以自定义设置,步骤如下: (注意:TP原框架中的success跳转有问题,先修改框架内容) 在TP的Controller.class.php中L284行下增加exit; 1.修改配置文件,增加自定义页面路径(在Admin模块下的config.php中增加) // 跳转页面模板 'TMPL_ACTION_ERROR' => MODULE_PATH.'View/Common/

git 去除本地所有没有保存的修改

git 去除本地所有没有保存的修改,参考How do I revert all local changes in Git managed project to previous state? 知道运行 git checkout . git clean -fd References git clean 小结 How do I revert all local changes in Git managed project to previous state? 原文地址:https://www.cnb

charles 修改返回值

1.修改返回值-使用Rewrite 1.Rewrite 功能适合对网络请求进行一些正则替换 2.针对某个值修改使用tools-rewrite, 3.利用上面的方法替换返回值后,则客户端所有“哈哈哈哈”的问题都会展示替换后的值 4.可以选择替换第一个出现的值,或全部都被替换掉 2.修改返回值使用--Map-local 1.功能适合长期地将某一些请求重定向到另一个网络地址或本地文件 2.选择某一个请求,右键选择Sava response…,将返回值保存起来,然后修改成我们想要变化的值,如图 3.下面

Java基础知识强化之集合框架笔记53:Map集合之Map集合的遍历 键值对对象找键和值

1. Map集合的遍历(键值对对象找键和值) Map -- 夫妻对  思路:  A: 获取所有结婚证的集合  B: 遍历结婚证的集合,得到每一个结婚证  C: 根据结婚证获取丈夫和妻子 转换:  A: 获取所有键值对对象的集合  B: 遍历键值对对象的集合,得到每一个键值对对象  C: 根据键值对对象获取键和值 2. 代码示例: 1 package cn.itcast_01; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 impo

利用checkbox的到值,并且存到数据库修改的话要显示之前选择的

在前台当然是利用checkbox来得到复选框的语言:{% for language in languages%}<input type="checkbox" name="language" value='{{ language.id }}' >{{ language.name }}{% endfor %}而复选框如果是已经选的在前台就展示的是选择的,那么input的属性就应该有checked 那么就可以通过在前台if来判断language.id跟已经选择