如何生成辅助代码
GreenDAO框架一大特点就是通过在编译时生成辅助代码的方式,降低运行时的负担,提高运行时的效率。这里代码生成用的是FreeMarker。
是否在运行时用到反射
答案是肯定的。GreenDAO在使用过程中,需要先创建DaoMaster对象。在这个过程中reflectProperties方法就用到了反射,提取DAO类中的字段信息,这个操作建议是在Application的OnCreate()中做,只处理一次。
关于性能
在具体执行CRUD的时候,都是调用预先已经处理好的SQL语句进行拼接,并且还进行了优化(具体看TableStatements)。