一、在struts的struts-config.xml文件中,先建一个LoginForm、LoginAction、Login.jsp页
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="loginForm" type="com.struts.form.LoginForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="loginForm"
input="/login.jsp"
name="loginForm"
path="/login"
scope="request"
type="com.struts.action.LoginAction" />
</action-mappings>
<message-resources parameter="com.struts.ApplicationResources" />
</struts-config>
二、把Hibernate映射完成后,编写一个实现类为StudentDao.java
package org.dao;
import java.util.HashMap;
import java.util.List;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import org.hibernate.HibernateException;
import org.hibernate.HibernateSessionFactory;
import org.hibernate.MappingException;
import org.hibernate.Session;
import org.hibernate.Transaction;
import antlr.RecognitionException;
public class StudentDao {
public void ar()
{ List li=null;
String sampleReportFile=new String("d://new_report5.jrxml");
try{
Session session=HibernateSessionFactory.getSession();
//Transaction tr=session.getTransaction();
li=session.createQuery("from Student").list();
HashMap parameters=new HashMap();
parameters.put("ReportTitle","Bowling Scores");
parameters.put("NoOfGames", new Integer(3));
// JasperDesign design=JRXmlLoader.load(sampleReportFile);
//JasperReport report=new JasperCompileManager().compileReport(design);
// JasperPrint print=JasperFillManager.fillReport(report,parameters,new JRBeanCollectionDataSource(li));
// JasperExportManager.exportReportToPdfFile(print,"d://simpleHibernatExample.pdf");
// tr.commit();
JasperDesign design=JRXmlLoader.load(sampleReportFile);
JasperReport report=new JasperCompileManager().compileReport(design);
JasperPrint print=JasperFillManager.fillReport(report,parameters,new JRBeanCollectionDataSource(li));
JasperExportManager.exportReportToPdfFile(print,"d://simleHibernateException.pdf");
//tr.commit();
}catch(JRException jre){
jre.printStackTrace();
}catch(MappingException me){
me.printStackTrace();
}catch(HibernateException he){
he.printStackTrace();
}
}
}
三、在LoginAction.java中进行调用
new StudentDao().ar();
这里是把.jasper文件保存成了.pdf格式,想保存成html和xls也一样