- 博客(91)
- 资源 (7)
- 收藏
- 关注
原创 RxJava和retrofit实现多线程下载
一直感慨RxJava在线程切换时很强大,最近项目中使用到了下载的功能,就想结合Retrofit来做一下这方面的尝试。场景很简单,服务器提供3个文件的下载地址。客户端点击按钮去异步下载这些文件。这就涉及到多线程下载。Retrofit部分:BaseApi:/** * songwenju on 16-8-5 : 16 : 09. * 邮箱:songwenju@outlook.co
2016-09-02 15:46:38 7067 2
原创 Android数据库框架--litepal的使用
在写项目的时候遇到了数据库的相关操作,Android 提供的数据库的创建和使用感觉有点小复杂,想着有没有比较好的轮子--框架或者工具类可以使用,结果发现了litepal,一个类似于hibernate,面向对象的方式对数据库进行开发。在万物皆对象的世界,使用起来觉得太爽了。LitePal是一款开源的Android数据库框架(https://github.com/LitePalFramewor
2016-04-29 14:14:21 9673 2
原创 Android Service中给其他的组件回传数据。
1.简单的方法,使用广播。service中处理完数据后发送广播,在需要接收的地方接收广播。2.使用回调接口。编写回调的地方是往往是处理数据的地方,在这里写interface等。如下:public class UpdateLiveDataService extends Service { private WriteToDbListener mWriteToDbListener;
2016-04-15 12:16:39 1088
原创 使用github进行多人开发
1.开发的一个人先将项目先提交到github上。2.其他开发人员该项目fork到自己的github上。3.其他的开发人员在自己的github上修改了之后,然后pull request相关的commit。4.创建项目者可以选择是否合并项目。
2016-04-10 22:07:24 2565
原创 对RecycleView的adapter的抽取
编写RecycleView时,对adapter进行了一些抽取。import android.app.Activity;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.view.View;import com.wjustudio.phoneMa
2016-04-10 11:22:33 1452
原创 Android 获得联系人并排序
方式一:通过观察导出的数据库的字段,根据字段去查询(在小米手机上查询不全)方法没有实现排序 import android.content.Context;import android.database.Cursor;import android.net.Uri;import com.wjustudio.phoneManager.Common.AppConstants;import
2016-04-07 14:31:37 7367
原创 Android判断同一个类的两个对象的内容是否相同
在编写对数据库差异化处理的时候,差异化就是把请求的json对象存入数据库时,当数据库有相同的数据时不更新,否则更新或插入。这里需要取出数据库的数据封装成对象。对于内容的比较,这里使用重写类的equal()和hashCoad()方法。使用eclipse或AndroidStudio可以帮助自动生成。由于项目中请求的json拼装的对象的内容并不全部存入数据库,这就需要我们在自动生成的时候选择适当的字
2016-03-28 15:49:15 12223
原创 Android的RecyclerView的初体验
前言:RecyclerView出来已经很久了,一直在用listView,也来尝试者在项目用一次RecyclerView,把一些心得拿出来分享一下,这里只用RecyclerView来做一个简单的列表展示,感觉还没有体现他的强大之处,相比listView,它少了分割线,点击后背景的变化,点击的回调接口,已经多了些设置。这里将:列举出使用RecyclerView的基本步骤。为RecyclerVi
2016-02-27 12:16:32 670
转载 使用Toolbar + DrawerLayout快速实现菜单侧滑
如果你有在关注一些遵循最新的Material Design设计规范的应用的话(如果没有,假设你有!),也许会发现有很多使用了看起来很舒服、很高大上的侧滑菜单动画效果,示例如下(via 参考2):今天就来使用官方支持库来快速实现这类效果,需要使用到Toolbar和DrawerLayout,详细步骤如下:(如果你还不知道这两个Widget,先自己Google吧~)1.首先需要添加app
2016-02-24 20:03:06 647
转载 TooBar的使用
ToolBar属于ActionBar的升级版,扩展了ActionBar,使得我们可以像使用独立的控件一样使用ToolBar。风格(Style) false truecolorPrimaryColor Toolbar的颜色在layout文件中设置background属性colorPrimaryDark 状态栏背景色textColorPrimary 标题和更多菜单
2016-02-24 19:58:01 585
原创 You must specifiy a layout in the include tag: <include layout="@layout/layoutID" />
出现这个的原因是在下面的layout前面添加了android:
2016-02-24 16:57:33 3342
原创 aidl引用类作为函数的返回值
项目中要编写aidl,为另外一个进程提供本app接受到的一些数据,将这些数据封装为一个对象后作为返回值。1.aidl对应的目录如下2.对应的类的代码:IBufferPlay.aidlpackage lenovo.com.ismartvlive.aidl;//导包import lenovo.com.ismartvlive.aidl.BufferPlayInfo;int
2016-02-18 17:56:38 2396
原创 Markdown语法规则
1 标题与文字格式标题# 这是 H1 ## 这是 H2 ###### 这是 H6 文字格式**这是文字粗体格式***这是文字斜体格式*~~在文字上添加删除线~~2 列表无序列表* 项目1* 项目2* 项目3有序列表1. 项目12. 项目23. 项目3 * 项目1 * 项目23 其它图片![图片名称](h
2016-01-31 10:09:56 650
原创 Android使用Palette把drawable转为bitmap图像大小改变的问题
项目中要做成以下的效果,本地应用直接使用包名和颜色值遍历找对应,三方应用要去提取app的icon颜色作为背景,首先想到了Android5.0新特性相关的palette。
2016-01-23 15:07:40 2075
转载 Android动画插入器
Interpolator英文意思是: 篡改者; 分类机; 校对机SDK对Interpolator的描述是:An interpolator defines the rate of change of an animation. This allows the basic animation effects (alpha, scale, translate, rotate) to be acc
2015-09-11 23:35:30 532
转载 Handler相关的弱引用
如果一个对象只具有弱引用,那就类似于可有可物的生活用品。弱引用与软引用的区别在于:只具有弱引用的对象拥有更短暂的生命周期。在垃圾回收器线程扫描它 所管辖的内存区域的过程中,一旦发现了只具有弱引用的对象,不管当前内存空间足够与否,都会回收它的内存。不过,由于垃圾回收器是一个优先级很低的线程, 因此不一定会很快发现那些只具有弱引用的对象。 弱引用可以和一个引用队列(ReferenceQueue)联合
2015-09-10 20:35:59 858
原创 Android布局中添加条横线
一个View添加点颜色就搞定了 android:layout_width="fill_parent" android:layout_marginTop="10dp" android:layout_height="1dp" android:layout_marginLeft="5dp" android
2015-08-02 21:46:16 27995 1
转载 jquery小结
1.基本选择器 基本选择器是JQuery中最常用的选择器,也是最简单的选择器,它通过元素id、class 和标签名来查找DOM元素。这个非常重要,下面的内容都是以此为基础,逐级提高的。 1).“$(“#id”)”,获取id指定的元素,id是全局唯一的,所以它只有一个成员。 2).“$(“.class”)”,获取class指定的元素,不同的
2015-05-27 20:20:45 637
转载 could not initialize proxy - no Session错误解决
如果在对象中存在外键关联的引用,在Javabean中体现为list对象,hibernate在加载时只默认加载单个属性:例如:class User{String name;String password;List Address}那么在查询时hibernate只默认加载出name和password,当需要使用到address这个List的时候才会去从新查询。这是hibernate的延迟加
2015-05-25 20:15:59 716
转载 HQL语句
1. 查询整个映射对象所有字段Java代码 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段 String hql = "from Users"; Query query = session.createQuery(hql); List use
2015-05-25 09:15:50 498
原创 在struts2的配置文件中用图形化的界面快速include其他struts.xml
为了方便团队开发,我们通常是保留一个struts.xml然后在每一个成员中分一个或若干个struts-XXX.xml。我们知道这些xml文件要包含在struts,xml中。手写的话有时候会出错。图形界面帮忙解决了这一点。在hibernate中快速添加是将XXX.hbm.xml拖到图形界面的hibernate.cfg.xml中。但在struts2中不能拖动。经过探究发现可以这样做。具体步骤如下:
2015-05-24 11:48:39 1287
转载 c标签
JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的。把常用的内容,放在这里备份一份,随用随查。尽量做到不用查,就可以随手就可以写出来。这算是Java程序员的基本功吧,一定要扎实。 JSTL全名为JavaServer Pages Standard Tag Library,目前最新的版本为1.1版。JSTL是由JCP(Java Community Process)所制定的标准规范,
2015-05-21 17:35:11 473
原创 struts2的session
在Struts2里,如果需要在Action中使用到session,可以使用下面几种方式:第一种方式,在action中得到session的例子public class SessionTestAction extends ActionSupport { public String execute() { ActionContext actionContext
2015-05-21 07:19:30 597
原创 SSH整合时jar包冲突解决的注意事项
在SSH项目整合的时候,要注意jar包冲突. 这里的原则是: 1,无依赖关系的舍低取高. 2.有依赖关系的取高。怎么排查是否有冲突,在服务器项目的lib下查看是否有重名的。 注意:每次重新导入包以后要把服务器中的项目删掉再发布。
2015-05-19 10:00:04 1572
原创 在struts2中使用Ajax的json和request/response两种方式
一、准备工作 ①ajax使用Jquery:jquery-min.js ②struts2与json的依赖包:struts2-json-plugin-xxx.jar二、jsp页面内容姓名:<input type="text" name="name" id="nameId"/><label></label>三、javascript的内容<script type="text/javascript"> $(function(){ var value = $("#nam
2015-05-18 09:15:42 3201
转载 struts2 Action获取表单数据
1.通过属性驱动式 [html] view plaincopyform action="sys/login.action" method="post"> input type="text" name="username"> input type="submit" value="submit"> form> Acti
2015-05-16 20:10:51 546
转载 java ssh整合出的错java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I
jar版本的问题,因为Struts自带的antlr-2.7.2.jar比Hibernate3.3自带的antlr-2.7.6.jar的版本要低,故要删除前一个低版本的,且struts1.3 和2.1都带有antlr-2.7.2.jar ,下面我要把它们都清除了,由于myeclipse 添加的struts包不是放在工程lib下的,而是myeclipse自带的,所以删除比较麻烦,最简单的做法应
2015-05-15 08:18:04 512
转载 数据库的一对一,一对多,多对多
关联映射:一对多/多对一存在最普遍的映射关系,A 表中的一行可以匹配 B 表中的多行,但是 B 表中的一行只能匹配 A 表中的一行。只有当一个相关列是一个主键或具有唯一约束时,才能创建一对多关系。简单来讲就如球员与球队的关系;一对多:从球队角度来说一个球队拥有多个球员 即为一对多多对一:从球员角度来说多个球员属于一个球队 即为多对一数据表间一对多关系如下图:
2015-05-14 17:09:15 1260
原创 一张图简单描述一下log4j配置
log4j.properties的一个简单配置信息log4j 格式详解 log4j.rootLogger=日志级别,appender1, appender2, ….日志级别:ALL,不区分大小写注意,需在控制台输入,只需将其中一个appender定义为stdout即可注意,rootLogger默认是对整个工程生效注意,如果只想对某些包操作,那么:log4j.l
2015-05-12 10:10:59 1074
原创 myeclipse导出jar文件
自己编写的工具类,在测试无误的情况下,希望下次能直接导入运用。第一步:在myeclipse中找出要导入的包或类第二步:右键export...点击后,选择java中的jar第三步:勾选提示的选项,是否导出java文件根据需求而定。第四步:一路next,然后finish得到最后导出的jar文件
2015-05-10 23:01:57 1302
转载 ConvertUtils.register
当用到BeanUtils的populate、copyProperties方法或者getProperty,setProperty方法其实都会调用convert进行转换但Converter只支持一些基本的类型,甚至连java.util.Date类型也不支持。而且它比较笨的一个地方是当遇到不认识的类型时,居然会抛出异常来。这个时候就需要给类型注册转换器。比如:意思是所以需要转成Date类型的数据
2015-05-10 22:30:06 684
转载 android布局的id和+id的区别
Android中的组件需要用一个int类型的值来表示,这个值也就是组件标签中的id属性值。 id属性只能接受资源类型的值,也就是必须以@开头的值,例如,@id/abc、@+id/xyz等。 如果在@后面使用“+”,表示当修改完某个布局文件并保存后,系统会自动在R.java文件中生成相应的int类型变量。变量名就是“/”后面的值,例如,@+id/xyz会在R.java文件中生成int
2015-05-08 22:12:38 1336
转载 “This text field does not specify an inputType ora hint” warning
android开发过程中突然发现的warningEditText 报出 “This text field does not specify an inputType ora hint”原因:EditText需要指定默认输入类型加入android:inputType="number|phone",表示指定为数字或电话inputtype类型如下: //文本类型,多为大写
2015-05-07 19:16:38 474
原创 myeclipse10关联hibernate源码
由于myeclipse10最高只能关联到hibernate3.3的版本,我关联到3.5和4.2的版本后怎么也查看不了。于是在http://ncu.dl.sourceforge.net/project/hibernate/hibernate3/3.3.2.GA/hibernate-distribution-3.3.2.GA-dist.zip下载了3.3.2的版本。如何一次关联,在其他项目中都能直
2015-04-27 18:22:15 1143
转载 LayoutParams的用法
LayoutParams继承于Android.View.ViewGroup.LayoutParams. LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams
2015-04-26 09:47:26 468
原创 对java.lang.OutOfMemoryError: PermGen space一些尝试
写struts2程序运行时出现了这个问题,现做以下两个尝试,目前不知道是否还会继续发生:尝试1:PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和存放Instance的Heap区域不同,GC(Garbage C
2015-04-20 20:42:59 519
转载 IOException while loading persisted sessions: java.io.EOFException异常的解决办法
严重: IOException while loading persisted sessions:java.io.EOFExceptionjava.io.EOFExceptionatjava.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2281)atjava.io.ObjectI
2015-04-19 17:39:30 523
原创 struts2在struts.xml中为返回的页面配参数时出现Invalid result location value/parameter
在学ognl表达式时,在struts.xml中为返回的页面配参数时,出现Invalid result location value/parameter,但参数可以传过去,原因是:MyEclipse肯定在普通验证xml方法之外加了Struts的特殊检验规则,解决办法:去掉build较检,保留手动较检,这样当实在是需要MyEclipse提供的Struts2较检的时候手动较检一下。
2015-04-19 12:55:59 2607
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人