📄 employeeproxyimpl.java
字号:
package com.pet.proxyImpl;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Expression;
import org.hibernate.criterion.MatchMode;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.pet.dao.PetCliniqueDAO;
import com.pet.pojo.Employee;
import com.pet.proxy.EmployeeProxy;
import com.pet.toolkit.Pagination;
public class EmployeeProxyImpl implements EmployeeProxy {
private static final String QUERY_MAX_ID="SELECT MAX(eid) FROM Employee WHERE cid=";
private static final String QUERY_ALL_RESULTS="SELECT COUNT(*) FROM Employee";
private PetCliniqueDAO empd;
public PetCliniqueDAO getEmpd() {
return empd;
}
public void setEmpd(PetCliniqueDAO empd) {
this.empd = empd;
}
/*
* (non-JavaDocu)
* 返回1为success,返回2为passWord错误,返回0为employeeCode错误或不存在!
* @see com.pet.proxy.EmployeeProxy#login(java.lang.String, java.lang.String)
*/
public Employee login(String employeeCode, String passWord) {
DetachedCriteria dc=DetachedCriteria.forClass(Employee.class)
.add(Expression.eq("employeeCode", employeeCode));
Employee employee=(Employee)empd.searchObject(dc);
return employee;
}
public void Save(Employee employee){
empd.save(employee);
}
public long searchPrimaryKey(String primaryKey){
primaryKey=QUERY_MAX_ID+primaryKey;
System.out.println(primaryKey+"----"+empd);
long pKey=empd.queryTotalResults(primaryKey);
System.out.println(pKey);
return pKey;
}
public void editEmployee(Employee employee){
empd.edit(employee);
}
public Employee searchOne(Integer id){
DetachedCriteria dc=DetachedCriteria.forClass(Employee.class)
.add(Expression.eq("eid", id));
Employee emp=(Employee)empd.searchObject(dc);
return emp;
}
public long searchResults(Map<String ,String> map){
if(map.isEmpty()){
long totalResults=empd.queryTotalResults(QUERY_ALL_RESULTS);
return totalResults;
}
else{
String queryHQL=QUERY_ALL_RESULTS+" WHERE";
String key;
int i=map.size();
Iterator<String> keyIt=map.keySet().iterator();
int j=0;
while(keyIt.hasNext()){
j++;
key=keyIt.next();
queryHQL+=" "+key+" like '%";
queryHQL+=map.get(key)+"%'";
if(j<i)
queryHQL+=" and";
}
//System.out.println("总记录数:"+queryHQL);
return empd.queryTotalResults(queryHQL);
}
}
@SuppressWarnings("unchecked")
public List<Employee> searchByCondition(Map<String ,String> map,Pagination page){
DetachedCriteria dc=DetachedCriteria.forClass(Employee.class);
if(map.isEmpty()){
List<Employee> empList=(List<Employee>)empd.searchObjects(dc, page);
return empList;
}else{
Iterator<String> keyIt=map.keySet().iterator();
String key;
while(keyIt.hasNext()){
key=keyIt.next();
dc.add(Expression.ilike(key, map.get(key), MatchMode.ANYWHERE));
}
List<Employee> empList=(List<Employee>)empd.searchObjects(dc, page);
return empList;
}
}
public void edit(Employee employee){
}
public static void main(String[] args) {
ApplicationContext ac=new FileSystemXmlApplicationContext("/WebRoot/WEB-INF/spring-config.xml");
EmployeeProxyImpl ep=(EmployeeProxyImpl)ac.getBean("employeeProxyImpl");
ep.searchPrimaryKey("1");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -