package com.jasperReport;
import java.io.IOException;
import java.net.URL;
import java.sql.SQLException;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import com.report.Dto.InfoDto;
import com.report.Dto.User;
import com.report.common.AbstractPDFReport;
public class Report extends AbstractPDFReport{
@Override
protected String getJrxmlPath() {
return "/com/temple/Demo.jrxml";
}
public JasperPrint output()
throws IOException, JRException, ParseException, SQLException {
InfoDto infoDto = new InfoDto();
infoDto.setRole("管理员");
List<User> sub1List = new ArrayList<User>();
User user = new User();
user.setUsername("admin");
user.setRealname("张三");
user.setAddress("广南西路民族大道105号");
user.setPhone("13512345678");
user.setEmail("123@163.com");
User user1 = new User();
user1.setUsername("super");
user1.setRealname("李明珠");
user1.setAddress("广南西路民族大道102号");
user1.setPhone("13512344561");
user1.setEmail("12322@163.com");
User user2 = new User();
user2.setUsername("zss");
user2.setRealname("张珊珊");
user2.setAddress("广南西路民族大道100号");
user2.setPhone("13212315678");
user2.setEmail("11123@126.com");
User user3 = new User();
user3.setUsername("oooo");
user3.setRealname("tim");
user3.setAddress("广南西路民族大道109号");
user3.setPhone("18512345678");
user3.setEmail("1223@1623.com");
User user4 = new User();
user4.setUsername("popo");
user4.setRealname("李天一");
user4.setAddress("广南西路民族大道99号");
user4.setPhone("13598745678");
user4.setEmail("12323@185.com");
sub1List.add(user);
sub1List.add(user1);
sub1List.add(user2);
sub1List.add(user3);
sub1List.add(user4);
infoDto.setSub1List(sub1List);
List<InfoDto> resultList = new ArrayList<InfoDto>();
resultList.add(infoDto);
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(resultList);
Map<String, Object> params = new HashMap<String, Object>();
URL url = getClass().getResource("../../com/temple");
params.put("SUBREPORT_DIR", url.getPath());
return createReport(params, ds);
}
}