俊星的BLOG

          2010年10月28日 #

          實現變更統計

          1、在本地數據庫中創建如下表:
          -- Create table
          create table TMP_CR_PERSONS
          (
            SPECIALTY     VARCHAR2(50),
            USER_GROUP    VARCHAR2(50),
            USER_NAME     VARCHAR2(50),
            USER_CATEGORY VARCHAR2(50)
          )

          2、創建DBLINK:
           
            create database link LK2PMS connect to XXX identified by XX
            using '(DESCRIPTION =
              (ADDRESS_LIST =
                (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.5.99)(PORT = 1521))
              )
              (CONNECT_DATA =
                (SERVER = DEDICATED)
                (SERVICE_NAME = oradb9)
              )
            )'

          3、創建視圖,查詢變更清單:
          CREATE OR REPLACE VIEW V_TMP_CR_LIST AS
          SELECT D.CHANGE_REQUEST_CODE,
                 D.PROJECT_NAME,
                 D.PRODUCT_NAME,
                 D.MODULE_NAME,
                 D.TYPE,
                 D.PRIVILEGE,
                 D.PROPOSE_TIME,
                 WF.TRANSACTOR,
                 WF.TASKNAME,
                 P.SPECIALTY,
                 P.USER_GROUP,
                 P.USER_CATEGORY
            FROM PMS_CHANGE@lk2pms D,
                 (SELECT MAX(ID) ID
                    FROM WFT_FLOWCONTROL@lk2pms WF
                   WHERE WF.WORKFLOWID = 'ChangeRequest'
                   GROUP BY WF.WORKID) MX,
                 WFT_FLOWCONTROL@lk2pms WF,
                 TMP_CR_PERSONS P
           WHERE WF.ID = MX.ID
             AND WF.WORKID = D.CHANGE_REQUEST_ID
             AND D.CHANGE_REQUEST_CODE LIKE 'CR%'
             AND WF.TRANSACTOR = P.USER_NAME
             AND D.STATE NOT IN ('結束','終止','拒絕');


          4、創建統計視圖:
          CREATE VIEW V_TMP_CR_STAT AS
          SELECT T.USER_GROUP, T.USER_NAME, COUNT(V.CHANGE_REQUEST_CODE) TOTAL
            FROM V_TMP_CR_LIST V, TMP_CR_PERSONS T
           WHERE V.TRANSACTOR(+) = T.USER_NAME
           GROUP BY CUBE(T.USER_GROUP, T.USER_NAME);

          posted @ 2010-11-22 09:09 俊星 閱讀(296) | 評論 (0)編輯 收藏

          切換IE8中碰到的問題

          1、當然是訪問老系統中的,應該都采用兼容視圖
          2、在訪問網公司系統的時候,出現內存不能寫的錯誤提示,讓后直接頁面加載失敗,解決辦法是,找到用SOGOU瀏覽器加載頁面后,發現需要安裝JITDSign這個插件,所以手工找到JITDSign.cab,解壓后直接運行“regsvr32  JITDSign.ocx”,再刷新頁面,OK了。

          3、其他問題暫未發現。

          posted @ 2010-11-10 10:04 俊星 閱讀(345) | 評論 (0)編輯 收藏

          發布FWMS

          1、利用命令“D:\FWMS\code\trunk\main\ear\ejb>dir /a:d /b”,列舉出所有的EJB模塊清單

          2、結合上面的清單,結合正則“^(.*)$”,替換為“<ant antfile="${FWMS_code}/ear/ejb/$1/META-INF/build.xml" dir="${FWMS_code}/ear/ejb/$1/META-INF" target="ejbdoclet"/>”形式,并將得到的ant元素清單放置到工程下build.xml的“Generating_Code”target中。

          3、基于如下正則,利用UE批量替換properties文件中的project.path:
          查找:(project.path.*)
          目標:project.path=../../../APP-INF/classes;../../../APP-INF/lib/activation.jar;../../../APP-INF/lib/ant.jar;../../../APP-INF/lib/apachepoi.jar;../../../APP-INF/lib/axis.jar;../../../APP-INF/lib/axis-ant.jar;../../../APP-INF/lib/bsh2.0.jar;../../../APP-INF/lib/classes12.zip;../../../APP-INF/lib/commons-
          文件:build.properties
          路徑:D:\FWMS\code\trunk\main\ear\ejb\
          (注意需要選中搜索子目錄項)

          4、上述完成之后,執行build_code.bat 即可完成EJB的編譯

          5、設置ct-config.xml中相關內容,最后是啟動weblogic 并設置數據源,同時發布應用。

          6、發布啟動weblogic的時候,報“java.lang.OutOfMemoryError: PermGen space”異常,在C:\bea\weblogic92\common\bin的commEnv.cmd中,查看到其內存設置為“set MEM_ARGS=-Xms128m -Xmx256m”;在C:\bea\user_projects\domains\fwms_domain\bin下startWebLogic.cmd中,添加“set MEM_ARGS=-Xms256m -Xmx512m -XX:MaxPermSize=128m”,適當加大內存。

          posted @ 2010-11-09 11:59 俊星 閱讀(463) | 評論 (0)編輯 收藏

          ActiveMQ初探

          Apache ActiveMQ是一個高性能的消息代理,實現了JMS 1.1。
          目前的最新版本是5.4.1
          1、下載相關包,并將activemq-all-5.4.1.jar加入到工程中。

          2、運行bin目錄下的actionmq.bat文件,啟動broker,在conf下是相關的配置文件,例如activemq.xml

          3、可通過訪問http://localhost:8161/admin/來查看啟動情況,有可通過netstat -an|find "61616" 來查看端口,因為通過查看activemq.xml中即可發現傳輸連接器即配置的占用61616端口:
          <transportConnectors>
                  <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
           </transportConnectors>

          4、編寫消息接收類:
          import javax.jms.Connection;
          import javax.jms.ConnectionFactory;
          import javax.jms.Destination;
          import javax.jms.JMSException;
          import javax.jms.MessageConsumer;
          import javax.jms.Session;
          import javax.jms.TextMessage;

          import org.apache.activemq.ActiveMQConnection;
          import org.apache.activemq.ActiveMQConnectionFactory;

          public class JmsReceiver {
              
          public static void main(String[] args) throws JMSException {
                  ConnectionFactory connectionFactory 
          = new ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_USER,
                          ActiveMQConnection.DEFAULT_PASSWORD, 
          "tcp://localhost:61616");
                  Connection connection 
          = connectionFactory.createConnection();
                  connection.start();
                  Session session 
          = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
                  
          // 需要在activemq的控制臺中創建queue:testqueue
                  Destination destination = session.createQueue("testqueue");
                  MessageConsumer consumer 
          = session.createConsumer(destination);
                  
                  
          while (true{
                      TextMessage message 
          = (TextMessage) consumer.receive(1000);
                      
          if (null != message)
                          System.out.println(
          "收到消息:" + message.getText());
                      
          else
                          
          break;
                  }

                  session.close();
                  connection.close();
              }

          }


          5、編寫消息產生類:
          import javax.jms.Connection;
          import javax.jms.ConnectionFactory;
          import javax.jms.DeliveryMode;
          import javax.jms.Destination;
          import javax.jms.JMSException;
          import javax.jms.MessageProducer;
          import javax.jms.Session;
          import javax.jms.TextMessage;

          import org.apache.activemq.ActiveMQConnection;
          import org.apache.activemq.ActiveMQConnectionFactory;

          public class JmsSender {
              
          public static void main(String[] args) throws JMSException {
                  ConnectionFactory connectionFactory 
          = new ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_USER,
                          ActiveMQConnection.DEFAULT_PASSWORD, 
          "tcp://localhost:61616");
                  Connection connection 
          = connectionFactory.createConnection();
                  connection.start();
                  Session session 
          = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
                  Destination destination 
          = session.createQueue("testqueue");
                  MessageProducer producer 
          = session.createProducer(destination);
                  producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
                  sendMsg(session, producer);
                  session.commit();
                  connection.close();
              }


              
          public static void sendMsg(Session session, MessageProducer producer) throws JMSException {
                  
          // 創建一條文本消息
                  TextMessage message = session.createTextMessage("你好 ActiveMQ!");
                  producer.send(message);
                  System.out.println(
          "");
              }

          }


          6、通過訪問http://localhost:8161/admin/,在queue中創建testqueue,先執行消息發送類,后執行消息接收類,借看看到消息接收類的如下執行結果:
          收到消息:你好 ActiveMQ!
          收到消息:你好 ActiveMQ!

          (執行多次消息發送類,則會接受到多條“你好 ActiveMQ!”消息)

          posted @ 2010-10-28 17:53 俊星 閱讀(2906) | 評論 (1)編輯 收藏

          主站蜘蛛池模板: 忻州市| 神木县| 阿荣旗| 富民县| 岳西县| 西贡区| 彩票| 宁城县| 永昌县| 宜君县| 平和县| 西乌珠穆沁旗| 宝兴县| 嫩江县| 循化| 南木林县| 万州区| 东城区| 高州市| 富川| 吉首市| 镇原县| 克拉玛依市| 集贤县| 南康市| 龙山县| 隆林| 鸡泽县| 阿克苏市| 普洱| 河东区| 武功县| 志丹县| 开阳县| 兴宁市| 桦川县| 四平市| 绥江县| 西峡县| 阜城县| 高要市|