首页 > 代码库 > 暑期项目经验(六)--struts+jasperreporters
暑期项目经验(六)--struts+jasperreporters
struts + jasperreporters
1.jasperreporters+ireport,版本要对应,先用ireport制作相应模版,生成相应.jasper文件。
实例如下:
2.jar包:
3.实体类
package com.pxj.report.pojo;public class Address { private String city; private String zipcode; public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getZipcode() { return zipcode; } public void setZipcode(String zipcode) { this.zipcode = zipcode; } }package com.pxj.report.pojo;import java.util.HashSet;import java.util.Set;public class Company implements Comparable<Company>{ private String name; private Address address; private Set<Staff> staffs = new HashSet<Staff>(); public String getName() { return name; } public void setName(String name) { this.name = name; } public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address; } public Set<Staff> getStaffs() { return staffs; } public void setStaffs(Set<Staff> staffs) { this.staffs = staffs; } public int compareTo(Company o) { return o.getName().compareTo(this.getName()); } }package com.pxj.report.pojo;public class Staff { private String name; private Company company; public String getName() { return name; } public void setName(String name) { this.name = name; } public Company getCompany() { return company; } public void setCompany(Company company) { this.company = company; } }
4.Action
package com.pxj.report.action;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import com.opensymphony.xwork2.ActionSupport;import com.pxj.report.pojo.Address;import com.pxj.report.pojo.Company;import com.pxj.report.pojo.Staff;public class DemoAction extends ActionSupport{ private static final long serialVersionUID = 1446363L; private List<Staff> list; Map<String,Object> map; public List<Staff> getList() { return list; } public void setList(List<Staff> list) { this.list = list; } public Map<String, Object> getMap() { return map; } public void setMap(Map<String, Object> map) { this.map = map; } @Override public String execute() throws Exception { list = getData(); map = getParameter(); return super.execute(); } private Map<String, Object> getParameter() { Map<String,Object> map = new HashMap<String,Object>(); map.put("date", "2014-08-04"); return map; } private List<Staff> getData() { Address addr = new Address(); addr.setCity("重庆"); addr.setZipcode("20140804"); Company company1 = new Company(); company1.setName("天友"); company1.setAddress(addr); Company company2 = new Company(); company2.setName("谷歌"); company2.setAddress(addr); Staff staff1 = new Staff(); staff1.setName("张三"); staff1.setCompany(company1); Staff staff2 = new Staff(); staff2.setName("李四"); staff2.setCompany(company2); Staff staff3 = new Staff(); staff3.setName("王五"); staff3.setCompany(company1); List<Staff> list = new ArrayList<Staff>(); list.add(staff1); list.add(staff2); list.add(staff3); return list; }}
5.struts.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"><struts> <package name="project" namespace="/" extends="jasperreports-default"> <action name="viewDemo" class="com.pxj.report.action.DemoAction"> <result name="success" type="jasper"> <!-- 指定类型 --> <param name="location">/jasper/strust2Demo.jasper</param> <!-- 指定jasper文件位置 --> <param name="dataSource">list</param> <!-- 指定数据源 --> <param name="format">PDF</param> <!-- 指定生成格式 --> <param name="reportParameters">map</param> <!-- 指定传递替换参数 --> </result> </action> </package></struts>
暑期项目经验(六)--struts+jasperreporters
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。