SpringBoot 之 Dao层模拟数据库操作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot 之 Dao层模拟数据库操作相关的知识,希望对你有一定的参考价值。

单表操作:

@Repository
public class DepartmentDao {
	private static Map<Integer, Department> departments = null;

	private static Integer initId = 5;

	static {
		departments = new HashMap<Integer, Department>();
		departments.put(1, new Department(1, "行政部"));
		departments.put(2, new Department(2, "财务部"));
		departments.put(3, new Department(3, "运营部"));
		departments.put(4, new Department(4, "开发部"));
	}

	public void addDepartment(Department department) {
		department.setId(initId);
		departments.put(initId, department);
		initId++;
	}

	public Collection<Department> getDepartments() {
		return departments.values();
	}

	public Department getDepartment(Integer id) {
		return departments.get(id);
	}

	public void delDepartment(Integer id) {
		departments.remove(id);
	}
}

关联表操作:

@Repository
public class EmployeeDao {
	private static Map<Integer, Employee> employees = null;

	@Autowired
	private DepartmentDao departmentDao;

	static {
		employees = new HashMap<Integer, Employee>();
		employees.put(1, new Employee(1, "张三", 3));
		employees.put(2, new Employee(2, "李四", 1));
		employees.put(3, new Employee(3, "王五", 4));
		employees.put(4, new Employee(4, "赵六", 2));
	}

	private static Integer initId = 5;

	public void addEmployee(Employee employee) {
		employee.setId(initId);
		employees.put(initId, employee);
		initId++;
	}

	public Collection<Employee> getEmployees() {
		return employees.values();
	}

	public Employee getEmployee(Integer id) {
		Employee employee = employees.get(id);
		Integer departmentId = employee.getDepartmentId();
		Department department = departmentDao.getDepartment(departmentId);
		employee.setDepartment(department);
		return employee;
	}

	public void delEmployee(Integer id) {
		employees.remove(id);
	}
}

以上是关于SpringBoot 之 Dao层模拟数据库操作的主要内容,如果未能解决你的问题,请参考以下文章

Spring框架之使用JdbcTemplate开发Dao层程序

springboot+vue之短信发送

SpringBoot+MyBatis项目Dao层最简单写法

SpringBoot框架中的DAO层Entity层Service层Controller层

SpringBoot之事务管理Transactional

Springboot的entity,dao,controller,service层级理解