前言
这是前一篇http://blog.csdn.net/u011958281/article/details/73499642博文,没有想到会有那么多读者,初次编写,为了实现功能,牺牲了很多,最近经过一轮学习,有了一点新的想法,结合学习,特此分享ATM加强版,改进篇主要是加强性能安全,针对代码的优化,代码解耦度更好,更具可读性,功能化分的更好。
代码的清晰度更好,直观性更强,这里可以看一下我的这片博文,JavaWEB分层设计思想模式http://blog.csdn.net/u011958281/article/details/74156940
作者也是通过学习,不断的规范自己的代码分类,可能写起来多了工作,多了划分,但是整体可读性更强,后期代码的复用率也是对于整体很看重的。
1. 代码解析与分析改进
- DAO接口
package com.shao.DAO;
import java.sql.SQLException;
import com.shao.model.user;
public interface accountDAO {
/**
* 登录检验
* @param name
* @param password
* @return
* @throws SQLException
*/
public user query(String name,String password) throws SQLException;
/**
* 添加账户
* @throws SQLException
*/
public void addUser(String name,String password) throws SQLException;
/**
* 更新用户账户信息
* @throws SQLException
*/
public void updateAccount(String FromName,String ToName,double balance) throws SQLException;
/**
* 查询账户
* @param name
* @return
* @throws SQLException
*/
public user findUserByName(String name) throws SQLException;
}
- DAO接口实现层
package com.shao.DAO.impl;
import java.sql.SQLException;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;
import com.shao.DAO.accountDAO;
import com.shao.model.user;
import com.shao.util.C3P0Util;
import com.shao.util.ManagerThreadLocal;
public class accountDAO_impl implements accountDAO{
@Override
public user query(String name, String password) throws SQLException {
// TODO Auto-generated method stub
QueryRunner qr = new QueryRunner();
return qr.query(ManagerThreadLocal.getConne