/** * crud基础方法的调用方式 * call,callSuper,new Object(),super方式调用 * filter 过滤器 * properties 属性字段,例如要查询id ,name 则properties.add("id");properties.add("name"),查询所有字段用"*",即properties.add("*") * limit 分页参数 记录数,设置为 0 或者 nul,表示查询所有纪录 * offset 分页参数 初始位置, 设置为 0 或者 nul,表示查询所有纪录 * order 排序,例如用年龄字段排序,即"order age asc"或者 "order age desc"; */ public void test(){ //模型名 String modelName = "TestUser"; Filter filter = new Filter(); List<String> properties = new ArrayList<>(); int limit = 0; int offset = 0; String order = null; //***************************************查询******************************* //call方式调用 List<Map<String,Object>> list1 = (List<Map<String, Object>>) this.getMeta().get(modelName).call("search",filter,properties,limit,offset,order); //callSuper方式调用 List<Map<String,Object>> list2 = (List<Map<String, Object>>) this.getMeta().get(modelName).callSuper(TestUser.class,"search",filter,properties,limit,offset,order); //new方式调用,最终具体调用还是调用callSuper方式实现 List<TestUser> list3 = new TestUser().search(filter,properties,limit,offset,order); //super方式调用,此为java的继承调用,继承自BaseModel,最终具体调用还是调用callSuper方式实现 List<TestUser> list4 = super.search(filter,properties,limit,offset,order); //***************************************新增******************************* List<Map<String, Object>> valuesList = new ArrayList<>(); //call方式调用 RecordSet recordSet1 = (RecordSet) this.getMeta().get(modelName).call("create",valuesList); //callSuper方式调用 RecordSet recordSet2 = (RecordSet) this.getMeta().get(modelName).callSuper(TestUser.class,"create",valuesList); //new方式调用,最终具体调用还是调用callSuper方式实现 TestUser user = new TestUser(); user.put("name","zhangsan"); user.create(); //super方式调用,此为java的继承调用,继承自BaseModel,最终具体调用还是调用callSuper方式实现 List<TestUser> userList = new ArrayList<>(); userList.add(user); super.batchCreate(userList); //***************************************更新******************************* Map<String, Object> value = new HashMap<>(); value.put("id","666"); value.put("name","张三"); //call方式调用 RecordSet recordSet3 = (RecordSet) this.getMeta().get(modelName).call("update",value); //callSuper方式调用 RecordSet recordSet4 = (RecordSet) this.getMeta().get(modelName).callSuper(TestUser.class,"update",value); //new方式调用,最终具体调用还是调用callSuper方式实现 user.put("name","zhangsan"); user.update(); //***************************************删除******************************* //根据id删除 RecordSet rs = this.getMeta().get(modelName); String id = "666"; rs.browse(id).delete(); List<String> ids = new ArrayList<>(); ids.add("666"); ids.add("777"); rs.browse(ids).delete(); TestUser user1 = new TestUser(); user1.put("id","666"); user1.delete(); }