注:这主要是做获取员工列表查询,在staticmap中获取用户部门,一次获取多次读取。
1.dept类中正常封装
public class Dept {
private Integer id;
private String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
2.user表中
private Integer dept_id;
private String dname;
public Integer getDept_id() {
return dept_id;
}
public void setDept_id(Integer dept_id) {
this.dept_id = dept_id;
}
public String getDname() {
dname = StaticMap.getName(dept_id.toString()); //改变了这。。其他属性正常封装
return dname;
}
public void setDname(String dname) {
this.dname=dname;
}
3.写一个装静态数据类
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import com.baidu.entity.Dept;
import com.baidu.mapper.BigMapper;
@Component
public class StaticMap {
@Resource
private BigMapper bigMapper;
public static Map<String, String> map=new HashMap<String, String>();
@PostConstruct
public void init(){
if(map.isEmpty()){
List<Dept> depts=bigMapper.getDeptList();
for (Dept dept : depts) {
map.put(dept.getId().toString(), dept.getName());
System.out.println(dept.getId()+ dept.getName());
System.out.println(map);
}
}
}
public static String getName(String integer){
System.out.println(integer);
String dname =(String)map.get(integer);
System.out.println(dname);
return dname;
}
}
4.其他都不变