=====套路代码,需要非常熟悉。
目前失误地点:
【表单 项忘记添加 name 属性】,导致 servlet,service,dao代码没问题。数据封装失败。
流程:
①表单页面:【表单 项忘记添加 name 属性】,===》
②servlet:request.getParameterMap()接收所有 表单数据,各自封装为map里一条(K,V)。
代码:
//1. 接收参数
Map<String, String[]> parameterMap = request.getParameterMap();
//2. 封装实体
Linkman linkman = new Linkman();
try {
BeanUtils.populate(linkman, parameterMap);
} catch (IllegalAccessException | InvocationTargetException e) {
e.printStackTrace();
}
boolean success = service.save(linkman);
③service:调dao.save(
linkman)。这里没有其他业务逻辑。
④dao:
//1. 创建一个QueryRunner对象
QueryRunner runner = new QueryRunner(DataSourceUtils.getDataSource());
//2. 定义sql和参数值,执行sql语句
String sql = "insert into linkman"
+ " ( lkm_name, lkm_gender, lkm_mobile, lkm_email, lkm_qq) "
+ "values (?,?,?,?,?)";
Object[] params = { linkman.getLkm_name(), linkman.getLkm_gender(),
linkman.getLkm_mobile(),linkman.getLkm_email(),linkman.getLkm_qq()
};
int count = runner.update(sql, params);
代码框架,完整代码参考:http://pan.baidu.com/s/1c2nMi8w