隔壁beetl群在讨论,一时兴起写了段demo实现,已上传。
先上两段代码
接口类
package org.nutz.dao.mapper;
import java.util.List;
import net.wendal.nutzbook.bean.User;
public interface UserMapper {
User fetchById(int id);
List<User> queryByName(String name);
User fetchBy(int id); // 基于局部变量参数表+jdk参数名表
}
测试类
@Test
public void testMap() {
// UserMapper 只是个接口
UserMapper us = SimpleMapper.map(ioc.get(Dao.class), UserMapper.class);
User user = us.fetchById(1);
assertNotNull(user);
List<User> list = us.queryByName("admin");
assertNotNull(list);
assertTrue(list.size() > 0);
assertEquals(user.getName(), us.fetchBy(1).getName());
}
问题是,这东西一旦参数多一个少一个,就得在接口加方法,看着很美(sure?),但不实用吧?