返回列表 发帖

[ORM框架] 数据库连接错误

我们公司的ERP系统,在执行产品库存月结这个功能的时候,每次执行到一定程度,就会出现连接不到数据库的异常,异常信息如下:

  1. ERROR:Network error IOException: Address already in use: connect
  2. Date:[2009-01-13 16:19:40] From:[org.hibernate.util.JDBCExceptionReporter.logExc
  3. eptions(JDBCExceptionReporter.java:72)]
  4. ERROR:Network error IOException: Address already in use: connect
  5. Date:[2009-01-13 16:19:41] From:[org.hibernate.util.JDBCExceptionReporter.logExc
  6. eptions(JDBCExceptionReporter.java:72)]
  7. org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: Cannot
  8. open connection; uncategorized SQLException for SQL [???]; SQL state [08S01]; er
  9. ror code [0]; Network error IOException: Address already in use: connect; nested
  10. exception is java.sql.SQLException: Network error IOException: Address already
  11. in use: connect
  12. java.sql.SQLException: Network error IOException: Address already in use: connec
  13. t
  14.         at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java
  15. :372)
  16.         at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java
  17. :50)
  18.         at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:178)
  19.         at java.sql.DriverManager.getConnection(DriverManager.java:525)
  20.         at java.sql.DriverManager.getConnection(DriverManager.java:140)
  21.         at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnec
  22. tionFromDriverManager(DriverManagerDataSource.java:291)
  23.         at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnec
  24. tionFromDriverManager(DriverManagerDataSource.java:277)
  25.         at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnec
  26. tionFromDriverManager(DriverManagerDataSource.java:259)
  27.         at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnec
  28. tion(DriverManagerDataSource.java:241)
  29.         at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.
  30. getConnection(LocalDataSourceConnectionProvider.java:80)
  31.         at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager
  32. .java:311)
  33.         at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.
  34. java:114)
  35.         at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatc
  36. her.java:105)
  37.         at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1561)
  38.         at org.hibernate.loader.Loader.doQuery(Loader.java:661)
  39.         at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Lo
  40. ader.java:223)
  41.         at org.hibernate.loader.Loader.loadEntity(Loader.java:1782)
  42.         at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityL
  43. oader.java:93)
  44.         at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityL
  45. oader.java:81)
  46.         at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractE
  47. ntityPersister.java:2729)
  48.         at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(D
  49. efaultLoadEventListener.java:365)
  50.         at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEv
  51. entListener.java:346)
  52.         at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEven
  53. tListener.java:123)
  54.         at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultL
  55. oadEventListener.java:161)
  56.         at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEv
  57. entListener.java:87)
  58.         at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:781)
  59.         at org.hibernate.impl.SessionImpl.load(SessionImpl.java:703)
  60.         at org.hibernate.impl.SessionImpl.load(SessionImpl.java:696)
  61.         at org.springframework.orm.hibernate3.HibernateTemplate$3.doInHibernate(
  62. HibernateTemplate.java:489)
  63.         at org.springframework.orm.hibernate3.HibernateTemplate.execute(Hibernat
  64. eTemplate.java:365)
  65.         at org.springframework.orm.hibernate3.HibernateTemplate.load(HibernateTe
  66. mplate.java:483)
  67.         at org.springframework.orm.hibernate3.HibernateTemplate.load(HibernateTe
  68. mplate.java:477)
  69.         at com.power.base.BaseDao.removeByPrimaryKey(BaseDao.java:88)
  70.         at com.power.stock.menology.dao.hibernate.StockMenologyDAOImpl.statistic
  71. StockMenology(StockMenologyDAOImpl.java:181)
  72.         at com.power.stock.menology.dao.hibernate.StockMenologyDAOImpl.executeTa
  73. sk(StockMenologyDAOImpl.java:58)
  74.         at com.power.common.service.spring.ExecuteTaskThread.run(ExecuteTaskThre
  75. ad.java:38)
  76. Caused by: java.net.BindException: Address already in use: connect
  77.         at java.net.PlainSocketImpl.socketConnect(Native Method)
  78.         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
  79.         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
  80.         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
  81.         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
  82.         at java.net.Socket.connect(Socket.java:516)
  83.         at sun.reflect.GeneratedMethodAccessor78.invoke(Unknown Source)
  84.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
  85. sorImpl.java:25)
  86.         at java.lang.reflect.Method.invoke(Method.java:585)
  87.         at net.sourceforge.jtds.jdbc.SharedSocket.createSocketForJDBC3(SharedSoc
  88. ket.java:289)
  89.         at net.sourceforge.jtds.jdbc.SharedSocket.<init>(SharedSocket.java:250)
  90.         at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java
  91. :297)
  92.         ... 35 more
复制代码

这个问题我百思不解,因为用这个系统,只是执行这个月结功能会这样,而且一开始是一直在执行的,但都是还没有执行完,就会出现以上的错误,而且出这个错误的时间都不一样,有时候执行了一点点就会出现,有时候执行了很久,才出现,
当出现这个错误之后,我继续在没有断开这个系统页面的情况下,查询其他的报表,一样可以把数据查出来,请问哪位高手知道这是什么原因吗?

提问赏金:8金币
获奖名单 : boxiong(2金币)    heyitang(2金币)    bruceye(1金币)    robin(2金币)    kongyeeku(1金币)    
顺着天赋做事,逆着个性做人!

  1. uncategorized SQLException for SQL [???]; SQL state [08S01]; er
  2. ror code [0];
复制代码

谁知道上面哪句话到底是指什么错误呢?
顺着天赋做事,逆着个性做人!

TOP

月结功能会进行一些什么操作呢? 楼主贴点代码出来

TOP

代码很多的呀.就是把成品仓库每月的进\出仓所有单据进行结算处理

最终得到一个库存的进销存月报表

[ 本帖最后由 vincent_liao 于 2009-1-13 17:00 编辑 ]
顺着天赋做事,逆着个性做人!

TOP

执行的代码如下

  1. public class StockMenologyDAOImpl implements IBaseTask
  2. {
  3. private final String UNLOADDISREPAIR = "0003";
  4. private final String UNLOADFREEZE = "0018";
  5. private final String DISREPAIR = "0019";
  6. private final String LOADFREEZE = "0003";
  7. private final String UNLOADSTOCKUP = "0020";
  8. private final String LOADSTOCKUP = "0018";

  9. private IBaseDao dao = null;
  10. public IBaseDao getBaseDao(){
  11.   return dao;
  12. }
  13. public void setBaseDao(IBaseDao dao){
  14.   this.dao = dao;
  15. }
  16. private ISmJdbcDao jdbc = null;
  17. public ISmJdbcDao getJdbcDao(){
  18.   return jdbc;
  19. }
  20. public void setJdbcDao(ISmJdbcDao jdbc){
  21.   this.jdbc = jdbc;
  22. }

  23. private HibernateTemplate hibernateTemplate = null;
  24. public HibernateTemplate getHibernateTemplate() {
  25.   return hibernateTemplate;
  26. }
  27. public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
  28.   this.hibernateTemplate = hibernateTemplate;
  29. }
  30. public void executeTask(Date today) throws Exception{
  31.   Calendar calendar = Calendar.getInstance();
  32.   calendar.setTime(today);
  33.   int thisyear = calendar.get(Calendar.YEAR);
  34.   int thismonth = calendar.get(Calendar.MONTH)+1;
  35.   int thisday = calendar.get(Calendar.DAY_OF_MONTH);
  36.   
  37.   statisticStockMenology(new Integer(thisyear), new Integer(thismonth), new Integer(thisday));
  38. }

  39. public void statisticStockMenology(Integer year, Integer mongth, Integer menologyCircle) throws Exception
  40. {
  41.   Calendar menologyDate = Calendar.getInstance();
  42.   menologyDate.set(Calendar.YEAR, year.intValue());
  43.   menologyDate.set(Calendar.MONTH, mongth.intValue() - 1);
  44.   menologyDate.set(Calendar.DATE, menologyCircle.intValue());
  45.   Calendar lastMenologyDate = Calendar.getInstance();
  46.   lastMenologyDate.setTime(menologyDate.getTime());
  47.   lastMenologyDate.set(Calendar.MONTH, menologyDate.get(Calendar.MONTH) - 2);
  48.   String strMenologyDate = String.valueOf(menologyDate.get(Calendar.YEAR)) + "-"
  49.    + String.valueOf(menologyDate.get(Calendar.MONTH) + 1) + "-"
  50.    + String.valueOf(menologyCircle);
  51.   String strCalculateDate = String.valueOf(year) + "-"
  52.    + String.valueOf(mongth) + "-"
  53.    + String.valueOf(menologyCircle.intValue() + 1);
  54.   String strLastMenologyDate = String.valueOf(lastMenologyDate.get(Calendar.YEAR)) + "-"
  55.    + String.valueOf(lastMenologyDate.get(Calendar.MONTH) + 1) + "-"
  56.    + String.valueOf(menologyCircle);
  57.   
  58.   lockLoad(strCalculateDate);
  59.   
  60.   //Search the stock detail info
  61.   List stockDetails = findVStockDetail();
  62.   //Set flag(0) for recordes that should be kept
  63.   int[] flags = new int[stockDetails.size()];
  64.   for (int i = 0; i < stockDetails.size() - 1; i++)
  65.   {
  66.    flags[i] = 0;
  67.   }
  68.   //Search warehouse operation from the menology date to today
  69.   List stockOperates = findStockOperate(strCalculateDate);
  70.   //Recover the stock detail info to the menology date by the operation info
  71.   if (stockOperates.size() > 0)
  72.   {
  73.    for (int i = 0; i < stockOperates.size(); i++)
  74.    {
  75.     StockOperate stockOperate = (StockOperate)stockOperates.get(i);
  76.     for (int j = 0; j < stockDetails.size(); j++)
  77.     {
  78.      VStstockdetail stockDetail = (VStstockdetail)stockDetails.get(j);
  79.      if (stockOperate.getProductDirectoryID().intValue() ==
  80.        stockDetail.getProductDirectoryID().intValue() &&
  81.        stockOperate.getGradeCode().equals(stockDetail.getGradeCode()) &&
  82.        stockOperate.getColorCode().equals(stockDetail.getColorCode()) &&
  83.        stockOperate.getPackID().intValue() == stockDetail.getPackID().intValue() &&
  84.        stockOperate.getWarehouseID().intValue() == stockDetail.getWarehouseID().intValue())
  85.      {
  86.       flags[j] = 1;
  87.       if (stockOperate.getOperateType().intValue() == 0)
  88.       {
  89.        if (stockOperate.getStockType().equals(UNLOADDISREPAIR))
  90.        {
  91.         stockDetail.setDisrepair(new Integer(stockDetail.getDisrepair().intValue() +
  92.           stockOperate.getQuantity().intValue()));
  93.        }
  94.        else if (stockOperate.getStockType().equals(UNLOADFREEZE))
  95.        {
  96.         stockDetail.setFreeze(new Integer(stockDetail.getFreeze().intValue() -
  97.           stockOperate.getQuantity().intValue()));
  98.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() +
  99.           stockOperate.getQuantity().intValue()));
  100.        }
  101.        else if (stockOperate.getStockType().equals(DISREPAIR))
  102.        {
  103.         stockDetail.setDisrepair(new Integer(stockDetail.getDisrepair().intValue() -
  104.           stockOperate.getQuantity().intValue()));
  105.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() +
  106.           stockOperate.getQuantity().intValue()));
  107.        }
  108.        else if (stockOperate.getStockType().equals(UNLOADSTOCKUP))
  109.        {
  110.         stockDetail.setStockUp(new Integer(stockDetail.getStockUp().intValue() -
  111.           stockOperate.getQuantity().intValue()));
  112.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() +
  113.           stockOperate.getQuantity().intValue()));
  114.        }
  115.        else
  116.        {
  117.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() +
  118.           stockOperate.getQuantity().intValue()));
  119.        }
  120.       }
  121.       else if (stockOperate.getOperateType().intValue() == 1)
  122.       {
  123.        if (stockOperate.getStockType().equals(LOADFREEZE))
  124.        {
  125.         stockDetail.setFreeze(new Integer(stockDetail.getFreeze().intValue() +
  126.           stockOperate.getQuantity().intValue()));
  127.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() -
  128.           stockOperate.getQuantity().intValue()));
  129.        }
  130.        else if (stockOperate.getStockType().equals(LOADSTOCKUP))
  131.        {
  132.         stockDetail.setStockUp(new Integer(stockDetail.getStockUp().intValue() +
  133.           stockOperate.getQuantity().intValue()));
  134.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() -
  135.           stockOperate.getQuantity().intValue()));
  136.        }
  137.        else
  138.        {
  139.         stockDetail.setQuantity(new Integer(stockDetail.getQuantity().intValue() -
  140.           stockOperate.getQuantity().intValue()));
  141.        }
  142.       }
  143.      }
  144.     }
  145.    }
  146.   }
  147.   //Save these available data to the temporary database table
  148.   for (int i = 0; i < stockDetails.size(); i++)
  149.   {
  150.    VStstockdetail stockDetail = (VStstockdetail)stockDetails.get(i);
  151.    if (stockDetail.getQuantity().intValue() == 0 &&
  152.      stockDetail.getReserve().intValue() == 0 &&
  153.      stockDetail.getStockUp().intValue() == 0 &&
  154.      stockDetail.getFreeze().intValue() == 0 &&
  155.      stockDetail.getDisrepair().intValue() == 0)
  156.    {
  157.     if (flags[i] == 0)
  158.     {
  159.      dao.removeByPrimaryKey(StockDetail.class, stockDetail.getStockDetailID());     
  160.      saveTempMenogoly(stockDetail, menologyDate);
  161.     }
  162.    }
  163.    else
  164.    {
  165.     saveTempMenogoly(stockDetail, menologyDate);
  166.    }
  167.   }
  168.   //Sum the temporary menology info
  169.   List menologyList = findTempMenologyList();
  170.   deleteTempMenogoly();
  171.   Integer startID = getSerialNumbers("2017", new Integer(menologyList.size()));
  172.   for (int i = 0; i < menologyList.size(); i++)
  173.   {
  174.    StockMenology tempObject = (StockMenology)menologyList.get(i);
  175.    tempObject.setMenologyID(new Integer(startID.intValue() + i));
  176.    tempObject.setMenologyDate(com.power.utils.DateUtils.strToDate(strMenologyDate));
  177.    tempObject.setTotalIn(searchTotalOperate("1", tempObject.getProductDirectoryID(),
  178.      tempObject.getGradeCode(), tempObject.getColorCode(), tempObject.getPackID(),
  179.      tempObject.getWarehouseID(), strMenologyDate, strLastMenologyDate));
  180.    tempObject.setTotalOut(searchTotalOperate("0", tempObject.getProductDirectoryID(),
  181.      tempObject.getGradeCode(), tempObject.getColorCode(), tempObject.getPackID(),
  182.      tempObject.getWarehouseID(), strMenologyDate, strLastMenologyDate));
  183.    dao.createObject(tempObject);
  184.   }
  185. }

  186. private void lockLoad(String strCalculateDate)
  187. {
  188.   String hsql = "update Load set Lock = 1 where LoadDate < '" + strCalculateDate + "'";
  189.   try
  190.   {
  191.    dao.execute(hsql);
  192.   }
  193.   catch (Exception e)
  194.   {
  195.    e.printStackTrace();
  196.   }
  197. }

  198. private List findVStockDetail()
  199. {
  200.   List list = new ArrayList();
  201.   String hsql = "from VStstockdetail";
  202.   
  203.   list = getHibernateTemplate().find(hsql);
  204.   
  205.   if (list == null)
  206.   {
  207.    list = new ArrayList();
  208.   }
  209.   
  210.   return list;
  211. }

  212. private List findStockOperate(String from)
  213. {
  214.   List list = new ArrayList();
  215.   
  216.   String hsql = "from StockOperate where OperateDate >= '" + from + "'";
  217.   list = getHibernateTemplate().find(hsql);
  218.   
  219.   return list;
  220. }

  221. public void saveTempMenogoly(VStstockdetail stockDetail, Calendar menologyDate)
  222. {
  223.   StockMenology stockMenology = new StockMenology();
  224.   
  225.   stockMenology.setMenologyID(new Integer(- 1 * stockDetail.getStockDetailID().intValue()));
  226.   stockMenology.setColorCode(stockDetail.getColorCode());
  227.   stockMenology.setDisrepair(stockDetail.getDisrepair());
  228.   stockMenology.setFreeze(stockDetail.getFreeze());
  229.   stockMenology.setFreightID(stockDetail.getFreightID());
  230.   stockMenology.setGradeCode(stockDetail.getGradeCode());
  231.   String today = String.valueOf(menologyDate.get(Calendar.YEAR)) + "-";
  232.   today = today + String.valueOf(menologyDate.get(Calendar.MONTH) + 1) + "-";
  233.   today = today + String.valueOf(menologyDate.get(Calendar.DATE));
  234.   stockMenology.setMenologyYear(new Integer(menologyDate.get(Calendar.YEAR)));
  235.   stockMenology.setMenologyMonth(new Integer(menologyDate.get(Calendar.MONTH) + 1));
  236.   stockMenology.setMenologyDate(com.power.utils.DateUtils.strToDate(today));
  237.   stockMenology.setPackID(stockDetail.getPackID());
  238.   stockMenology.setPackQuantity(stockDetail.getPackQuantity());
  239.   stockMenology.setProductDirectoryID(stockDetail.getProductDirectoryID());
  240.   stockMenology.setQuantity(stockDetail.getQuantity());
  241.   stockMenology.setRemark(stockDetail.getRemark());
  242.   stockMenology.setReserve(stockDetail.getReserve());
  243.   stockMenology.setStatus(new Short("0"));
  244.   stockMenology.setStockUp(stockDetail.getStockUp());
  245.   stockMenology.setTotalIn(new Integer(0));
  246.   stockMenology.setTotalOut(new Integer(0));
  247.   stockMenology.setWarehouseID(stockDetail.getWarehouseID());
  248.   stockMenology.setWarehouseTypeCode(stockDetail.getWarehouseTypeCode());
  249.   try
  250.   {
  251.    dao.createObject(stockMenology);
  252.   }
  253.   catch (Exception e)
  254.   {
  255.    e.printStackTrace();
  256.   }
  257. }

  258. public List findTempMenologyList()
  259. {
  260.   List list = new ArrayList();
  261.   List tempList = new ArrayList();
  262.   
  263.   String hsql = "select menologyYear, menologyMonth, menologyDate, productDirectoryID, ";
  264.   hsql = hsql + "gradeCode, colorCode, packID, packQuantity, sum(quantity) as SQuntity, ";
  265.   hsql = hsql + "sum(reserve) as SReserve, sum(stockUp) as SStockUp, ";
  266.   hsql = hsql + "sum(freeze) as SFreeze, sum(disrepair) as SDisrepair, ";
  267.   hsql = hsql + "sum(totalIn) as STotalIn, sum(totalOut) as STotalOut, ";
  268.   hsql = hsql + "freightID, warehouseID, warehouseTypeCode from StockMenology where MenologyID < 0 ";
  269.   hsql = hsql + "group by menologyYear, menologyMonth, MenologyDate, ProductDirectoryID, GradeCode, ";
  270.   hsql = hsql + "ColorCode, PackID, PackQuantity, FreightID, WarehouseID, WarehouseTypeCode";
  271.   try
  272.   {
  273.    tempList = getHibernateTemplate().find(hsql);
  274.    if (tempList == null)
  275.    {
  276.     tempList = new ArrayList();
  277.    }
  278.   }
  279.   catch (Exception e)
  280.   {
  281.    e.printStackTrace();
  282.   }
  283.   for (int i = 0; i < tempList.size(); i++)
  284.   {
  285.    Object[] attrs = (Object[])tempList.get(i);
  286.    StockMenology stockMenology = new StockMenology();
  287.    int j = 0;
  288.    stockMenology.setMenologyYear((Integer)attrs[j]);
  289.    j = j + 1;
  290.    stockMenology.setMenologyMonth((Integer)attrs[j]);
  291.    j = j + 1;
  292.    stockMenology.setMenologyDate((Date)attrs[j]);
  293.    j = j + 1;
  294.    stockMenology.setProductDirectoryID((Integer)attrs[j]);
  295.    j = j + 1;
  296.    stockMenology.setGradeCode((String)attrs[j]);
  297.    j = j + 1;
  298.    stockMenology.setColorCode((String)attrs[j]);
  299.    j = j + 1;
  300.    stockMenology.setPackID((Integer)attrs[j]);
  301.    j = j + 1;
  302.    stockMenology.setPackQuantity((Integer)attrs[j]);
  303.    j = j + 1;
  304.    stockMenology.setQuantity((Integer)attrs[j]);
  305.    j = j + 1;
  306.    stockMenology.setReserve((Integer)attrs[j]);
  307.    j = j + 1;
  308.    stockMenology.setStockUp((Integer)attrs[j]);
  309.    j = j + 1;
  310.    stockMenology.setFreeze((Integer)attrs[j]);
  311.    j = j + 1;
  312.    stockMenology.setDisrepair((Integer)attrs[j]);
  313.    j = j + 1;
  314.    stockMenology.setTotalIn((Integer)attrs[j]);
  315.    j = j + 1;
  316.    stockMenology.setTotalOut((Integer)attrs[j]);
  317.    j = j + 1;
  318.    stockMenology.setFreightID((Integer)attrs[j]);
  319.    j = j + 1;
  320.    stockMenology.setWarehouseID((Integer)attrs[j]);
  321.    j = j + 1;
  322.    stockMenology.setWarehouseTypeCode((String)attrs[j]);   
  323.    list.add(stockMenology);
  324.   }
  325.   
  326.   return list;
  327. }

  328. public void deleteTempMenogoly()
  329. {
  330.   String hsql = "delete from StockMenology where MenologyID < 0";
  331.   try
  332.   {
  333.    dao.delete(hsql);
  334.   }
  335.   catch (Exception e)
  336.   {
  337.    e.printStackTrace();
  338.   }
  339. }

  340. public Integer searchTotalOperate(String operateType, Integer productDirectoryID,
  341.    String gradeCode, String colorCode, Integer packID, Integer warehouseID,
  342.    String strMenologyDate, String strLastMenologyDate)
  343. {
  344.   Integer result = new Integer(0);
  345.   
  346.   String hsql = "select sum(quantity) from StockOperate where ";
  347.   hsql = hsql + "OperateType = " + operateType + " and ";
  348.   if (operateType.equals("1"))
  349.   {
  350.    hsql = hsql + "(StockType <> '0016' or StockType <> '0018' or StockType <> '0016') and ";
  351.   }
  352.   else
  353.   {
  354.    hsql = hsql + "(StockType <> '0018' or StockType <> '0019' or StockType <> '0020') and ";
  355.   }
  356.   hsql = hsql + "ProductDirectoryID = " + String.valueOf(productDirectoryID) + " and ";
  357.   hsql = hsql + "GradeCode = '" + gradeCode + "' and ";
  358.   hsql = hsql + "ColorCode = '" + colorCode + "' and ";
  359.   hsql = hsql + "PackID = " + String.valueOf(packID) + " and ";
  360.   hsql = hsql + "WarehouseID = " + String.valueOf(warehouseID) + " and ";
  361.   hsql = hsql + "OperateDate <= '" + strMenologyDate + "' and ";
  362.   hsql = hsql + "OperateDate > '" + strLastMenologyDate + "'";
  363.   result = (Integer)dao.findObject(hsql);
  364.   
  365.   if (result == null)
  366.   {
  367.    result = new Integer(0);
  368.   }
  369.   
  370.   return result;
  371. }

  372. public Integer getSerialNumbers(String code, Integer batchQuantity)
  373. {
  374.   Integer serialNumber = new Integer(0);
  375.   String hsql = "select sn from SmIdentity sn where sn.code='" + code + "'";
  376.   Object obj = dao.findObject(hsql);  
  377.   try
  378.   {
  379.    if (obj != null)
  380.    {
  381.     SmIdentity smIdentity = (SmIdentity) obj;
  382.     serialNumber = new Integer(smIdentity.getCurValue() + smIdentity.getInc());
  383.     smIdentity.setCurValue(smIdentity.getCurValue()
  384.       + smIdentity.getInc() * batchQuantity.intValue());
  385.     dao.updateObject(smIdentity);
  386.    }
  387.   }
  388.   catch (Exception e)
  389.   {
  390.    e.printStackTrace();
  391.   }
  392.   
  393.   return serialNumber;
  394. }

  395. public IBaseDao getDao()
  396. {
  397.   return dao;
  398. }
  399. public void setDao(IBaseDao dao)
  400. {
  401.   this.dao = dao;
  402. }
  403. public String getDISREPAIR()
  404. {
  405.   return DISREPAIR;
  406. }
  407. public String getLOADFREEZE()
  408. {
  409.   return LOADFREEZE;
  410. }
  411. public String getUNLOADDISREPAIR()
  412. {
  413.   return UNLOADDISREPAIR;
  414. }
  415. public String getUNLOADFREEZE()
  416. {
  417.   return UNLOADFREEZE;
  418. }
  419. }
复制代码

[ 本帖最后由 vincent_liao 于 2009-1-13 17:01 编辑 ]
顺着天赋做事,逆着个性做人!

TOP

请各路高手指点指点,不知道有没有高手曾经遇到过类似我这种的情况
顺着天赋做事,逆着个性做人!

TOP

没人能回答我的问题吗?
顺着天赋做事,逆着个性做人!

TOP

  1. ERROR:Network error IOException: Address already in use: connect
  2. Date:[2009-01-13 16:19:40] From:[org.hibernate.util.JDBCExceptionReporter.logExc
  3. eptions(JDBCExceptionReporter.java:72)]
  4. ERROR:Network error IOException: Address already in use: connect
复制代码


地址在使用?你系统中有什么涉及到Network Address  (难道你用了Socket ?)

根据你上面的信息提示,你这个项目是用的  struts+hibernate+jdbc+sql server 来做的系统吗?
倚楼听风雨,笑看江湖路。。。

TOP

com.power.base.BaseDao.removeByPrimaryKey(BaseDao.java:88)
看下是不是你的finally块没写好
close之类的操作是不是没有捕捉异常
青春是那么的耀眼,我该怎样度过?

TOP

这个项目是用Hibernate+Struts+Spring+SQL Server做成的
顺着天赋做事,逆着个性做人!

TOP

返回列表