spring处理业务示例(源码)

用spring写的一个模仿"手机充值+查话费+销户"的一个小例子,供spring入门者参考. 

三层结构:

表现层(view) +业务层(business)+数据访问层(dao)

spring处理业务示例(源码)

首先定义业务层的接口:

IService.java

 

package  business;

import  po.cardPO;
import  po.phonePO;

public   interface  IService  ... {
    
//查询余额
    public double queryBalance(phonePO phone);
    
//充值
    public boolean addMoney(phonePO phone,cardPO card);
    
//销户
    public boolean delAccount(phonePO phone);
    
//判断是否是合法用户
    public boolean isUser(phonePO phone);
}

 

定义dao层的接口:

IMobileDAO.java

 

package  dao;

import  po.cardPO;
import  po.phonePO;

public   interface  IMobileDAO  ... {
    
//判断是不是合法手机用户
    public boolean isPhoneExist(phonePO phone);
    
//判断充值卡是否有效
    public boolean isCardExist(cardPO card);
    
//充值
    public boolean addMoney(phonePO phone);
    
//查询余额
    public double queryBalance(phonePO phone);
    
//查询充值卡金额
    public double queryCardMoney(cardPO card);
    
//销户
    public boolean delAccount(phonePO phone);
}

 

两个po对象:

phonePO.java 手机信息:

 

package  po;

public   class  phonePO  ... {
    
//手机号
    private String phonenb;
    
//手机密码
    private String password;
    
//话费
    private double money;
    
//状态标志  o表示已注销,1表示正常使用
    private int flag;
    
    
    
public int getFlag() ...{
        
return flag;
    }

    
public void setFlag(int flag) ...{
        
this.flag = flag;
    }

    
public double getMoney() ...{
        
return money;
    }

    
public void setMoney(double money) ...{
        
this.money = money;
    }

    
public String getPassword() ...{
        
return password;
    }

    
public void setPassword(String password) ...{
        
this.password = password;
    }

    
public String getPhonenb() ...{
        
return phonenb;
    }

    
public void setPhonenb(String phonenb) ...{
        
this.phonenb = phonenb;
    }

}

 

cardPO.java 充值卡信息:

 

package  po;

public   class  cardPO  ... {
    
//充值卡密码
    private String password;
    
//充值卡金额
    private double money;
    
public double getMoney() ...{
        
return money;
    }

    
public void setMoney(double money) ...{
        
this.money = money;
    }

    
public String getPassword() ...{
        
return password;
    }

    
public void setPassword(String password) ...{
        
this.password = password;
    }

}

 

实现两个接口:

业务层:ServiceImp.java

 

package  business;

import  dao.IMobileDAO;
import  po.cardPO;
import  po.phonePO;

public   class  ServiceImp  implements  IService  ... {
    
private IMobileDAO mobile;
    
public boolean addMoney(phonePO phone, cardPO card) ...{
        
boolean isok=false;
        
if(mobile.isPhoneExist(phone) && mobile.isCardExist(card))...{
            phone.setMoney(getMobile().queryBalance(phone)
+getMobile().queryCardMoney(card));
            isok
=getMobile().addMoney(phone);
        }

        
return isok;
    }


    
public boolean delAccount(phonePO phone) ...{
        
boolean isok=false;
        
if(mobile.isPhoneExist(phone))...{
            isok
=getMobile().delAccount(phone);
        }

        
return isok;
    }


    
public double queryBalance(phonePO phone) ...{
        
double money=0;
        
if(mobile.isPhoneExist(phone))...{
            money
=getMobile().queryBalance(phone);
        }

        
return money;
    }


    
public IMobileDAO getMobile() ...{
        
return mobile;
    }


    
public void setMobile(IMobileDAO mobile) ...{
        
this.mobile = mobile;
    }


    
public boolean isUser(phonePO phone) ...{
        
        
return getMobile().isPhoneExist(phone);
    }

}

 

dao层:MobileDAO.java

 

package  dao;

import  java.util.Iterator;
import  java.util.List;
import  java.util.Map;

import  javax.sql.DataSource;
import  po.cardPO;
import  p

你可能感兴趣的:(java,DAO,spring,sql,mobile)