免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1644 | 回复: 0
打印 上一主题 下一主题

spring开源项目的应用(1) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-05 21:21 |只看该作者 |倒序浏览

前段时间在网上查找spring的相关资料,结果发现一篇自己06年写的技术文章,^_^  相当的意外

以下是相关的地址
http://biqimahairitai.blog.163.com/blog/static/2241075220084231083423/

spring开源项目的应用(1)- -
                                       
1.新建一个webapp项目,然后在webapp\WEB-INF\src下新建一个xml文件applicationContext.xml

  
   com.informix.jdbc.IfxDriver
  
  
   jdbc:informix-sqli://xx.xx.xx.xxx:xxxxx/xxxx:informixserver=xxx_tcp
  
  
   xxxx
  
  
   xxx
  


  
   
  

  class="com.zj.mtn.biz.CommisionSprHandler" singleton="false">




2.新建包com.zj.common
BaseDAO.java
package com.zj.common;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
// Referenced classes of package com.sinosoft.common:
//            DAO
public class BaseDAO implements DAO {
public BaseDAO() {
}
public DataSource getDataSource() {
  return dataSource;
}
public void setDataSource(DataSource dataSource) {
  this.dataSource = dataSource;
}
public List queryWithJDBC(String sql) {
  JdbcTemplate jTemplate = new JdbcTemplate(getDataSource());
  return jTemplate.queryForList(sql);
}
public int queryForInt(String sql) {
  JdbcTemplate jTemplate = new JdbcTemplate(getDataSource());
  return jTemplate.queryForInt(sql);
}
public void excute(String sql) {
  JdbcTemplate jTemplate = new JdbcTemplate(getDataSource());
  jTemplate.execute(sql);
}
private DataSource dataSource;
}
DAO.java
package com.zj.common;
import java.util.List;
public interface DAO {
public abstract List queryWithJDBC(String s);
public abstract int queryForInt(String s);
public abstract void excute(String s);
}
BeanFactory.java
package com.zj.common;
import java.io.IOException;
import java.net.URL;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.InputStreamResource;
// Referenced classes of package com.sinosoft.common:
//            Loader
public final class BeanFactory {
public BeanFactory() {
}
public static Object getBean(String beanName) {
  return factory.getBean(beanName);
}
private static Logger logger;
static XmlBeanFactory factory = null;
static {
  logger = Logger.getLogger(com.zj.common.BeanFactory.class);
  URL url = Loader.getResource("applicationContext.xml");
  try {
   org.springframework.core.io.Resource is = new InputStreamResource(
     url.openStream());
   factory = new XmlBeanFactory(is);
  } catch (IOException e) {
   logger.error("create beanFactory error !");
   throw new RuntimeException(e);
  }
}
}
Loader.java
package com.zj.common;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.URL;
import org.apache.log4j.Logger;
public class Loader {
public Loader() {
}
public static URL getResource(String resource) {
  ClassLoader classLoader = null;
  URL url = null;
  try {
   classLoader = getTCL();
   if (classLoader != null) {
    url = classLoader.getResource(resource);
    if (url != null)
     return url;
   }
   classLoader = com.zj.common.Loader.class.getClassLoader();
   if (classLoader != null) {
    url = classLoader.getResource(resource);
    if (url != null)
     return url;
   }
  } catch (IllegalArgumentException e) {
   log.warn("Error on load [" + resource + "]", e);
  } catch (IllegalAccessException e) {
   log.warn("Error on load [" + resource + "]", e);
  } catch (InvocationTargetException e) {
   log.warn("Error on load [" + resource + "]", e);
  }
  return ClassLoader.getSystemResource(resource);
}
private static ClassLoader getTCL() throws IllegalArgumentException,
   IllegalAccessException, InvocationTargetException {
  Method method = null;
  try {
   method = java.lang.Thread.class.getMethod("getContextClassLoader",
     null);
  } catch (NoSuchMethodException e) {
   return null;
  }
  return (ClassLoader) method.invoke(Thread.currentThread(), null);
}
private static Logger log;
static {
  log = Logger.getLogger(com.zj.common.Loader.class);
}
}
ICommisionSprHandler.java
package com.zj.mtn.implnts;
import java.sql.Date;
import java.util.List;
public interface ICommisionSprHandler {
public abstract List getClkCommisionList(Date beginDate,Date endDate,String strBranchNo);
}
CommisionSprHandler.java
/*
* 创建日期 2006-6-9
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.zj.mtn.biz;
import java.sql.SQLException;
import java.util.ArrayList;
import java.sql.Date;
import java.util.*;
import java.math.BigDecimal;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.log4j.Logger;
import com.zj.mtn.implnts.*;
import com.zj.mtn.domain.ClkCommisionSprHandlerModel;
import com.zj.mtn.VO.ClkCommisionSprHandlerVO;
import com.zj.mtn.form.MtnQueryForm;
import com.zj.common.*;
/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class CommisionSprHandler implements ICommisionSprHandler {
private static Logger logger = Logger.getLogger((CommisionSprHandler.class)
   .getName());
private DAO dao;
/**
  * @return Returns the dao.
  */
public DAO getDao() {
  return dao;
}
/**
  * @param dao
  *            The dao to set.
  */
public void setDao(DAO dao) {
  this.dao = dao;
}
public CommisionSprHandler() {
}
public List getClkCommisionList(Date beginDate, Date endDate,
   String strBranchNo) {
  List result = new ArrayList();
  List clkCommisionList = new ArrayList();
  //ClkCommisionHandlerModel aClkCommisionHandler = new ClkCommisionHandlerModel();
  ClkCommisionSprHandlerVO aClkCommisionSprHandler;
  StringBuffer stringbuffer = new StringBuffer();
  stringbuffer
    .append("select t00salesno,t03businesstype as type, t03policyno as policyno,t03insuredname as insuredname, t03payterm as payterm,t03premium as premium, t03commision as commision,t00statdate as statdate from t03_policyperday ");
  stringbuffer
    .append(" where t03businesstype in ('01','04','06','19') and t00salesno like '"
      + strBranchNo + "%' and t03commision  0 ");
  stringbuffer.append(" and t00statdate between '" + beginDate
    + "' and '" + endDate + "'");
  String hsql = stringbuffer.toString();
  result = getDao().queryWithJDBC(hsql);
  Iterator iter = result.iterator();
  for (; iter.hasNext(); clkCommisionList.add(aClkCommisionSprHandler)) {
   aClkCommisionSprHandler= new ClkCommisionSprHandlerVO();
   Map rs = (Map) iter.next();

   aClkCommisionSprHandler.setT00salesno((String) rs.get("t00salesno"));
   aClkCommisionSprHandler.setType((String) rs.get("type"));

   aClkCommisionSprHandler.setPolicyno((String) rs.get("policyno"));
   aClkCommisionSprHandler.setInsuredname((String)rs.get("insuredname"));

   aClkCommisionSprHandler.setPayterm((String) rs.get("payterm"));

   aClkCommisionSprHandler.setPremium((BigDecimal) rs.get("premium"));
   aClkCommisionSprHandler.setCommision((BigDecimal) rs
     .get("commision"));

   aClkCommisionSprHandler.setStatdate((Date) rs.get("statdate"));
  }
  return result;
}
public String getGbk(String str) {
  try {
   return new String(str.getBytes("ISO8859-1"));
  } catch (Exception e) {
   return str;
  }
}
}
BusinessDelegate.java
package com.zj.mtn.dbUtil;
import com.zj.mtn.implnts.*;
import java.sql.*;
import java.util.List;
import com.zj.common.*;
public class BusinessDelegate
{
    public BusinessDelegate()
    {
    }
    public List getClkCommisionList(Date beginDate,Date endDate,String strBranchNo)
    {
        ICommisionSprHandler  commisionSprHandler = (ICommisionSprHandler )BeanFactory.getBean("commisionSprHandler");
        return commisionSprHandler.getClkCommisionList(beginDate,endDate,strBranchNo);
    }
}
CharsetConverter.java
package com.zj.mtn.dbUtil;
public class CharsetConverter
{
    public CharsetConverter()
    {
    }
    public static String ISO8859_1ToGBK(String strOriginal)
    {
        if(strOriginal != null)
        {
            try
            {
                return new String(strOriginal.getBytes("ISO8859_1"), "GB2312");
            }
            catch(Exception exception)
            {
                exception.printStackTrace();
            }
            return strOriginal;
        } else
        {
            return null;
        }
    }
    public static String GBKToISO8859_1(String strOriginal)
    {
        if(strOriginal != null)
        {
            try
            {
                return new String(strOriginal.getBytes("GB2312"), "ISO8859_1");
            }
            catch(Exception exception)
            {
                exception.printStackTrace();
            }
            return strOriginal;
        } else
        {
            return null;
        }
    }
    public static String GBKToUTF8(String strOriginal)
    {
        if(strOriginal != null)
        {
            try
            {
                return new String(strOriginal.getBytes("GB2312"), "UTF-8");
            }
            catch(Exception exception)
            {
                exception.printStackTrace();
            }
            return strOriginal;
        } else
        {
            return null;
        }
    }
}
ClkCommisionSprHandlerModel.java
/*
* 创建日期 2006-6-9
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.zj.mtn.domain;
import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Date;
/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class ClkCommisionSprHandlerModel implements Serializable {

private String t00salesno;
private String type;
private String policyno;
private String insuredname;
private String payterm;
private BigDecimal premium;
private BigDecimal commision;
private Date statdate;
/**
  * @return Returns the commision.
  */
public BigDecimal getCommision() {
  return commision;
}
/**
  * @param commision The commision to set.
  */
public void setCommision(BigDecimal commision) {
  this.commision = commision;
}
/**
  * @return Returns the insuredname.
  */
public String getInsuredname() {
  return insuredname;
}
/**
  * @param insuredname The insuredname to set.
  */
public void setInsuredname(String insuredname) {
  this.insuredname = insuredname;
}
/**
  * @return Returns the payterm.
  */
public String getPayterm() {
  return payterm;
}
/**
  * @param payterm The payterm to set.
  */
public void setPayterm(String payterm) {
  this.payterm = payterm;
}
/**
  * @return Returns the policyno.
  */
public String getPolicyno() {
  return policyno;
}
/**
  * @param policyno The policyno to set.
  */
public void setPolicyno(String policyno) {
  this.policyno = policyno;
}
/**
  * @return Returns the premium.
  */
public BigDecimal getPremium() {
  return premium;
}
/**
  * @param premium The premium to set.
  */
public void setPremium(BigDecimal premium) {
  this.premium = premium;
}
/**
  * @return Returns the statdate.
  */
public Date getStatdate() {
  return statdate;
}
/**
  * @param statdate The statdate to set.
  */
public void setStatdate(Date statdate) {
  this.statdate = statdate;
}
/**
  * @return Returns the t00salesno.
  */
public String getT00salesno() {
  return t00salesno;
}
/**
  * @param t00salesno The t00salesno to set.
  */
public void setT00salesno(String t00salesno) {
  this.t00salesno = t00salesno;
}
/**
  * @return Returns the type.
  */
public String getType() {
  return type;
}
/**
  * @param type The type to set.
  */
public void setType(String type) {
  this.type = type;
}
public ClkCommisionSprHandlerModel(String t00salesno, String type, String policyno, String insuredname, String payterm, BigDecimal premium, BigDecimal commision, Date statdate) {
  super();
  // TODO Auto-generated constructor stub
  this.t00salesno = t00salesno;
  this.type = type;
  this.policyno = policyno;
  this.insuredname = insuredname;
  this.payterm = payterm;
  this.premium = premium;
  this.commision = commision;
  this.statdate = statdate;
}
public ClkCommisionSprHandlerModel() {
  super();
  // TODO Auto-generated constructor stub
}
}
ClkCommisionSprHandlerVO.java
/*
* 创建日期 2006-6-9
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.zj.mtn.VO;
import java.io.Serializable;
import java.sql.Date;
import java.math.BigDecimal;
import com.zj.indemqry.pub.StringUtil;
/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class ClkCommisionSprHandlerVO {
private int colId;
private String urlLink;
private String trClassName;
private String t00salesno;
private String type;
private String policyno;
private String insuredname;
private String payterm;
private BigDecimal premium;
private BigDecimal commision;
private Date statdate;
/**
  * @return Returns the colId.
  */
public int getColId() {
  return colId;
}
/**
  * @param colId The colId to set.
  */
public void setColId(int colId) {
  this.colId = colId;
}
/**
  * @return Returns the commision.
  */
public BigDecimal getCommision() {
  return commision;
}
/**
  * @param commision The commision to set.
  */
public void setCommision(BigDecimal commision) {
  this.commision = commision;
}
/**
  * @return Returns the insuredname.
  */
public String getInsuredname() {
  return insuredname;
}
/**
  * @param insuredname The insuredname to set.
  */
public void setInsuredname(String insuredname) {
  this.insuredname = insuredname;
}
/**
  * @return Returns the payterm.
  */
public String getPayterm() {
  return payterm;
}
/**
  * @param payterm The payterm to set.
  */
public void setPayterm(String payterm) {
  this.payterm = payterm;
}
/**
  * @return Returns the policyno.
  */
public String getPolicyno() {
  return policyno;
}
/**
  * @param policyno The policyno to set.
  */
public void setPolicyno(String policyno) {
  this.policyno = policyno;
}
/**
  * @return Returns the premium.
  */
public BigDecimal getPremium() {
  return premium;
}
/**
  * @param premium The premium to set.
  */
public void setPremium(BigDecimal premium) {
  this.premium = premium;
}
/**
  * @return Returns the statdate.
  */
public Date getStatdate() {
  return statdate;
}
/**
  * @param statdate The statdate to set.
  */
public void setStatdate(Date statdate) {
  this.statdate = statdate;
}
/**
  * @return Returns the t00salesno.
  */
public String getT00salesno() {
  return t00salesno;
}
/**
  * @param t00salesno The t00salesno to set.
  */
public void setT00salesno(String t00salesno) {
  this.t00salesno = t00salesno;
}
/**
  * @return Returns the trClassName.
  */
public String getTrClassName() {
  return trClassName;
}
/**
  * @param trClassName The trClassName to set.
  */
public void setTrClassName(String trClassName) {
  this.trClassName = trClassName;
}
/**
  * @return Returns the type.
  */
public String getType() {
  return type;
}
/**
  * @param type The type to set.
  */
public void setType(String type) {
  this.type = type;
}
/**
  * @return Returns the urlLink.
  */
public String getUrlLink() {
  return urlLink;
}
/**
  * @param urlLink The urlLink to set.
  */
public void setUrlLink(String urlLink) {
  this.urlLink = urlLink;
}

}
/*
* 创建日期 2006-1-20
*程序员:zjnubridge
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.zj.mtn.action;
import java.sql.SQLException;
import java.util.TreeMap;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import  com.zj.mtn.dbUtil.BusinessDelegate;
import com.zj.login.domain.UserAccount;
import com.zj.mtn.VO.*;
import com.zj.mtn.biz.*;
import com.zj.mtn.biz.MtnQueryLogic;
import com.zj.mtn.biz.MtnRevQueryLogic;
import com.zj.mtn.biz.Zj01ClkSumPremLogic;
import com.zj.mtn.domain.*;
import com.zj.mtn.domain.StaDataList;
import com.zj.mtn.domain.ZjStaDataList;
import com.zj.mtn.form.MtnQueryForm;
import com.zj.mtn.action.ZJLBB02;
import com.zj.mtn.domain.StaData;
import com.zj.util.*;
import java.sql.Date;
/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class MtnQueryAction extends Action {
// --------------------------------------------------------- Instance
// Variables
// --------------------------------------------------------- Methods
private static Log log = LogFactory.getLog(MtnQueryAction.class);
public ActionForward execute(ActionMapping actionMapping,
   ActionForm actionForm, HttpServletRequest request,
   HttpServletResponse httpServletResponse) throws SQLException {
  MtnQueryForm mtnQueryForm = (MtnQueryForm) actionForm;
  UserAccount aUserAccount=(UserAccount)request.getSession().getAttribute("USERACCOUNT");
  /*
* 使用spring做数据库底层逻辑
*
**/
  if (mtnQueryForm.getSelect().equals("mtn110-1")) {
   BusinessDelegate bd = new BusinessDelegate();
   Date beginDate=mtnQueryForm.getProcDateStart();
   Date endDate=mtnQueryForm.getProcDateEnd();
   String strBranchNo=mtnQueryForm.getAcceptBranchNo();
   List resultList = bd.getClkCommisionList(beginDate,endDate,strBranchNo);
   log.info("======================================");
   log.info("userCode:" + aUserAccount.getUserCode());
   log.info("userName:" + aUserAccount.getUserName());
   log.info("userBranch:" + aUserAccount.getBranchName());
   log.info("userDeptName:" + aUserAccount.getDeptName());
   log.info("operate:查询xxxxxxxxxx");
   log.info("current time:" + DateTimeUtil.getCurrentSysDate() + " "
     + DateTimeUtil.getCurrentSysTime());
   log.info("beginDate:" + mtnQueryForm.getProcDateStart());
   log.info("endDate:" + mtnQueryForm.getProcDateEnd());
   log.info("branchNo:" + mtnQueryForm.getAcceptBranchNo());
   log.info("sayWay:" + mtnQueryForm.getSaleWay());
   log.info("back record amount :" + resultList.size());
   log.info("======================================");
   int i = 0;
   
  for (int j = 0; j     System.out.println("111");
    ClkCommisionHandlerVO std = (ClkCommisionHandlerVO) resultList
      .get(j);
    System.out.println("sdf");
    std.setColId(j + 1);
    if (i == 0) {
     std.setTrClassName("odd");
     i++;
    } else {
     std.setTrClassName("even");
     i = 0;
    }
   }
   request.getSession().setAttribute("clkCommisionHandlerList",
     resultList);
   request.getSession().setAttribute("acceptBranchNo",
     mtnQueryForm.getAcceptBranchNo());
   request.getSession().setAttribute("procDateStart",
     mtnQueryForm.getProcDateStart());
   request.getSession().setAttribute("procDateEnd",
     mtnQueryForm.getProcDateEnd());
   request.getSession().setAttribute("saleWay",
     mtnQueryForm.getSaleWay());
   System.out.println("fsdsfsdfhgfdshd");
   return (actionMapping.findForward("mtn110"));
  }
  return (actionMapping.findForward("error"));
} //end doExecute()
}


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/95708/showart_1919116.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP