首页>代码>jsp+servlet开发java web图书后台管理系统>/StudentManager/src/cn/studentmanage/bj/dao/BJDaoImp.java
package cn.studentmanage.bj.dao;

import java.util.ArrayList;
import java.util.Date;

import cn.studentmanage.bj.entity.BJ;
import cn.studentmanage.data.DatasServlet;
/**
 * DB层操作数据库
 * 但是现在没学,弄个简单临时存储(在Tomcat启动的时候,存储下数据)
 * 	为了结合之前学的知识点,使用Servlet存储
 * 		HttpServlet 提供了一个init这个方法,初始化自己参数
 * @author Administrator
 *
 */
public class BJDaoImp implements IBJDao {

	@Override
	public ArrayList<BJ> findBjByName(String name) {
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		//遍历匹配,满足条件的Bj,存放到 另一个容器中,用户返回结果
		ArrayList<BJ> result=new ArrayList<BJ>();
		if(name.equals("")){ //如果为空字符串,查询所有的数据
			result.addAll(list);
		}else{
			for(BJ item:list){
				//如果满足包含条件
				if(item.getName().contains(name)){
					result.add(item);
				}
			}
		}
		
		return result;
	}

	@Override
	public ArrayList<BJ> findBjByX(String x) {
		//获取所有的班级数据
			ArrayList<BJ>  list=DatasServlet.getAllBj();
			//遍历匹配,满足条件的Bj,存放到 另一个容器中,用户返回结果
			ArrayList<BJ> result=new ArrayList<BJ>();
			if(x.equals("")){ //如果为空字符串,查询所有的数据
				result.addAll(list);
			}else{
				for(BJ item:list){
					//如果满足包含条件
					if(x.equals(item.getX())){
						result.add(item);
					}
				}
			}
		return result;
	}

	@Override
	public ArrayList<BJ> findBjByBJ(BJ bj) {
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		//遍历匹配,满足条件的Bj,存放到 另一个容器中,用户返回结果
		ArrayList<BJ> result=new ArrayList<BJ>();
		//获取筛选条件
		String name=bj.getName();//班级名称
		String x=bj.getX();//获取系
		//考虑 筛选条件为 空的情况 怎么处理呢?两个筛选条件为空,或者其中一个为空
		if("".equals(name)&&"".equals(x)){ //如果都为空,返回所有数据
			result.addAll(list);
		}else if("".equals(x)){ //如果系为空,就根据名称去找
			result.addAll(findBjByName(name));
		}else if("".equals(name)){ //如果班级为空,根据系去查找
			result.addAll(findBjByX(x));
		}else{ //两种筛选条件,都存在
			for(BJ item:list){
				if(name.equals(item.getName())&&x.equals(item.getX())){
					result.add(item);
				}
			}
		}
		
		return result;
	}

	@Override
	public boolean existBJbyName(String name) {
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		//遍历判断是否存在重复
		for(BJ item:list){
			//如果相同,即存在
			if(name.equals(item.getName())){
				return false;
			}
			
		}
		return true;
	}

	@Override
	public void addBj(BJ bj) {
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		//新增
		list.add(bj);
	}

	@Override
	public void removeBjById(String... ids) {
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		for(String id:ids){
			//遍历找到ID ,删除
			for(BJ item:list){
				//如果ID 匹配成功就删除
				if(id.equals(item.getId())){
					list.remove(item);
					//结束内循环
					break;
				}
			}
		}
		
	}

	@Override
	public boolean updateBjByBJ(BJ bj) {
		//要找到原始数据,也就是要修改的数据,根据ID找
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		//遍历查找出要修改的原始数据
		for(BJ item:list){
			//根据ID找,原始数据
			if(bj.getId().equals(item.getId())){
				//现在这个item就是原始数据
				item.setName(bj.getName());
				item.setX(bj.getX());
				item.setCzsj(new Date());
				return true;
			}
		}
		
		return false;
	}

	@Override
	public BJ findBJbyId(String id) {
		//获取所有的班级数据
		ArrayList<BJ>  list=DatasServlet.getAllBj();
		//遍历查找,Id匹配数据
		for(BJ item:list){
			//如果匹配成功,直接返回 该对象
			if(id.equals(item.getId())){
				return item;
			}
		}
		return null;
	}

}
最近下载更多
wwwliu  LV10 2024年6月12日
CHENHAOJUDA  LV10 2022年6月14日
3305787467  LV12 2022年5月23日
yhb123456  LV5 2022年3月20日
北魚  LV3 2021年7月1日
别打脸(・ᆺ・)  LV9 2021年5月30日
园林属于  LV7 2021年5月1日
Zuo2001  LV4 2021年1月6日
18982022686  LV1 2020年12月18日
areslucifer  LV5 2020年11月25日
最近浏览更多
rebest  LV2 2024年12月24日
pangzhihui  LV14 2024年6月27日
微信网友_7052861421883392  LV1 2024年6月25日
www的行为  LV2 2024年6月20日
snow_storm1 2024年6月18日
暂无贡献等级
wwwliu  LV10 2024年6月12日
123456cjj  LV1 2024年6月1日
yuquanzuo  LV2 2024年5月14日
2017143155  LV12 2024年5月6日
pi-nang  LV2 2024年3月11日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友