Action层
package com.action;
import java.io.File;
import java.util.List;import org.apache.commons.io.FileUtils;
import org.apache.struts2.ServletActionContext;import com.bean.PageBean;
import com.bean.Person;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.service.PersonService;public class PersonAction extends ActionSupport implements ModelDriven<Person> {
// 模型驱动
private Person person = new Person();public Person getModel() {
return person;
}// 声明
private PersonService personService;public PersonService getPersonService() {
return personService;
}public void setPersonService(PersonService personService) {
this.personService = personService;
}// 添加
public String addPerson() throws Exception {
if (person.getUploadFileName() != null) {
String path = ServletActionContext.getServletContext().getRealPath("/img");
File file = new File(path + "/" + person.getUploadFileName());
FileUtils.copyFile(person.getUpload(), file);
personService.addPerson(person);
return "addPerson";
} else {
this.addActionError("请上传头像");
return "input";
}
}// 声明页码
private Integer page;public Integer getPage() {
return page;
}public void setPage(Integer page) {
this.page = page;
}private String name;
public String getName() {
return name;
}public void setName(String name) {
this.name = name;
}// 查询所有
public String findAll() {
if (page == null) {
page = 1;
}
PageBean pb = new PageBean();
// 页码
pb.setPage(page);
// 每页显示数据
Integer tr = 2;
pb.setTr(tr);
// 一共有多少数据
Integer trSum = personService.count(name);
pb.setTrSum(trSum);
// 一共有多少页
Integer pageSum = (int) (Math.ceil(trSum * 1.0) / tr);
pb.setPageSum(pageSum);
// 分页的集合
List<Person> list = personService.findAll(page, tr, name);
pb.setPlist(list);ServletActionContext.getRequest().getSession().setAttribute("pb", pb);
return "findAll";
}// 声明ids
private List<Integer> ids;public List<Integer> getIds() {
return ids;
}public void setIds(List<Integer> ids) {
this.ids = ids;
}// 批量删除
public String deleteAll() {
personService.deleteAll(ids);
return "deleteAll";
}}
Service接口
package com.service;
import java.util.List;
import com.bean.Person;
public interface PersonService {
// 添加
void addPerson(Person person);// 分页 总数据
Integer count(String name);// 分页 查询所有
List<Person> findAll(Integer page, Integer tr, String username);// 批量删除
void deleteAll(List<Integer> ids);}
Servcie实现类package com.service;
import java.util.List;
import com.bean.Person;
import com.dao.PersonDao;public class PersonServiceimpl implements PersonService {
// 声明dao层
private PersonDao personDao;public PersonDao getPersonDao() {
return personDao;
}public void setPersonDao(PersonDao personDao) {
this.personDao = personDao;
}// 添加
public void addPerson(Person person) {
personDao.addPerson(person);
}// 分页 总数据
public Integer count(String name) {
return personDao.count(name);
}// 分頁 查询所有
public List<Person> findAll(Integer page, Integer tr, String username) {
return personDao.findAll(page, tr, username);
}// 批量删除
public void deleteAll(List<Integer> ids) {
personDao.deleteAll(ids);
}}
dao接口package com.dao;
import java.util.List;
import com.bean.Person;
public interface PersonDao {
// 添加
void addPerson(Person person);// 分页 总数据
Integer count(String name);// 分页 查询所有
List<Person> findAll(Integer page, Integer tr, String name);// 批量删除
void deleteAll(List<Integer> ids);}
dao实现类package com.dao;
import java.util.List;
import org.hibernate.Query;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import com.bean.Person;
public class PersonDaoimpl extends HibernateDaoSupport implements PersonDao {
// 添加
public void addPerson(Person person) {
this.getHibernateTemplate().save(person);
}// 分页 总数据
public Integer count(String name) {
if (name == null || name.equals("")) {
Query query = this.getSession().createQuery("select count(*) from Person");
Object obj = query.uniqueResult();
long x = (long) obj;
int count = (int) x;
return count;
} else {
Query query = this.getSession()
.createQuery("select count(*) from Person where username like '%" +name+ "%'");
Object obj = query.uniqueResult();
long x = (long) obj;
int count = (int) x;
return count;
}
}// 分页 查询所有
public List<Person> findAll(Integer page, Integer tr, String name) {if (name == null || name.equals("")) {
Query query = this.getSession().createQuery("from Person");
Integer pageStart = (page - 1) * tr;
query.setFirstResult(pageStart);
query.setMaxResults(tr);
List<Person> list = query.list();
return list;
} else {
Query query = this.getSession().createQuery("from Person where username like '%" + name + "%'");
Integer pageStart = (page - 1) * tr;
query.setFirstResult(pageStart);
query.setMaxResults(tr);
List<Person> list = query.list();
return list;
}
}// 批量删除
public void deleteAll(List<Integer> ids) {
for (Integer id : ids) {
Person person = this.getHibernateTemplate().get(Person.class, id);
this.getHibernateTemplate().delete(person);
}
}}
SSH整合 完整增删改查 分页 模糊查询
猜你喜欢
转载自blog.csdn.net/XiaoWangTongXuei/article/details/81115863
今日推荐
周排行