RANDY

          Nothing is difficulty if you put your heat into it!!!
          posts - 3, comments - 1, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          2006年10月12日

            今天讀了"使用UMLWeb應(yīng)用程序構(gòu)建模型"對關(guān)于利用Rose進(jìn)行Web開發(fā)有了一點認(rèn)識!
          最近由于看了RUP開發(fā)方法但是由于其分析方法一般都是基于C/S進(jìn)行講述的.所以他的描述方式不利于對于Web 開發(fā)!
          起初我主要有一下疑問:
             1.RUP的設(shè)計方法怎么將WEB開發(fā)的表示元素表達(dá)出來.

             C/S開發(fā)中的界面用邊界類進(jìn)行實現(xiàn),那么在B/S下怎么實現(xiàn)呢!比如JSP頁面

             2.由于在B/S下的開發(fā)中有多種設(shè)計模式進(jìn)行選擇,那么關(guān)于設(shè)計模式的確立在哪個階段進(jìn)行描述?用什么方式?

             3.如果可以在某個階段確立,那么確立后的詳細(xì)信息可以描述出來嗎?怎么描述?假設(shè)采用MVC

            如:視圖層:的視圖的詳細(xì)描述和導(dǎo)航關(guān)系

              控制層:控制器的詳細(xì)描述

              模型層:它的確立時期,和各個業(yè)務(wù)對象之間的關(guān)系的描述方式

             4.是否可以將采用的技術(shù)溶入設(shè)計之中,如果可以則怎么進(jìn)行描述.

            如:采用各種框架

          ??????? 視圖層:采用Struts

              持久化層:采用Hibernate

          ??????? 業(yè)務(wù)邏輯層:采用EJB

          ????? 就是說怎么在分析階段對它們進(jìn)行簡要說明,以利于后期設(shè)計的明確.
          我看來了這片文章后有以下心得:
          1.
          首先我對web開發(fā)時利用UML進(jìn)行開發(fā)時的流程有了簡單的認(rèn)識,如一般的設(shè)計時候他要先對抽取出用例在從用例中抽取出分析類,在對類之間的關(guān)系進(jìn)行描述.而在Web開發(fā)中應(yīng)當(dāng)先從用例中提取出頁面元素,組件,在對其鏈接關(guān)系和導(dǎo)航信息進(jìn)行描述.
            那么在UML是怎么實現(xiàn)的呢?
          他是通過UML自有的機(jī)制,即可以自定義,構(gòu)造型,標(biāo)注,約束.來對頁面元素進(jìn)行描述的!
          概括的說分以下步驟:
           1.建模:
           2.Web頁程序構(gòu)架
           3.Web頁建模

          左邊的頁面表示了服務(wù)器端頁面

          右邊表示了客戶端頁面

          <<build>> 這種關(guān)聯(lián)關(guān)系的構(gòu)造型為: ?build? ,因為可以說服務(wù)器頁構(gòu)建了客戶機(jī)頁

          Link 表示了頁面之間的鏈接關(guān)系

          待續(xù)................

          ?

          ?

          posted @ 2006-10-12 22:52 劉恒濤 閱讀(466) | 評論 (1)編輯 收藏

          2006年10月9日

            一同學(xué)問了一個字符串反轉(zhuǎn)的問題!開始覺得很簡單的!
            一種思路就是獲得字符串在將它轉(zhuǎn)換成為字符串?dāng)?shù)組在用循環(huán)將他輸出就可以了!
           我作了兩個頁面,一個用于輸入,一個用于處理;
            我最初是這么寫的:
             我正序輸出時是正確的即
          <%
          ? for(int i=0;i<=s.lenth.i++)
          %>
          第一次嘗試:
           ? <%
          ? String fanzhuan=request.getParameter("fanxu");
          ????? if((fanzhuan.length()==0)&&(fanzhuan=="")){
          ???? out.print("TextField can't be null");
          ???????? }
          ????? else{
          ??char s[]=fanzhuan.toCharArray();
          ??String fanzhuan2="";
          ??int j=s.length;
          ??for(int i=j;i>0;i--)//老出越界的錯誤暈!
          ??{
          ???fanzhuan2+=s[i];
          ??}
          ??? out.print(fanzhuan2);
          ??}
          %>

          出錯信息:
          java.lang.ArrayIndexOutOfBoundsException: 3
          	org.apache.jsp.fanxu2_jsp._jspService(fanxu2_jsp.java:58)
          	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
          	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
          	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
          	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
          	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
          第二次嘗試:
          ?
          ?for(int i=j;i>0;--i)//老出越界的錯誤暈!
          ??{

          ???fanzhuan2+=s[i];
          ??}
          出錯信息:
          java.lang.ArrayIndexOutOfBoundsException: 3
          	org.apache.jsp.fanxu2_jsp._jspService(fanxu2_jsp.java:58)
          	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
          	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
          	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
          	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
          	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
          第四次嘗試:
          ?for(int i=j;i>-1;--i)//老出越界的錯誤暈!
          ??{

          ???fanzhuan2+=s[i];
          ??}
          出錯信息:
          java.lang.ArrayIndexOutOfBoundsException: 3
          	org.apache.jsp.fanxu2_jsp._jspService(fanxu2_jsp.java:58)
          	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
          	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
          	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
          	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
          	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
          第五次嘗試:
          ?for(int i=j;i>1;--i)//老出越界的錯誤暈!
          ??{

          ???fanzhuan2+=s[i];
          ??}
          java.lang.ArrayIndexOutOfBoundsException: 3 org.apache.jsp.fanxu2_jsp._jspService(fanxu2_jsp.java:58) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) javax.servlet.http.HttpServlet.service(HttpServlet.java:810) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) javax.servlet.http.HttpServlet.service(HttpServlet.java:810) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 第六次嘗試
             ?for(int i=j;i>1;)//老出越界的錯誤暈!
          ??{
          ???i=i-1;
          ???fanzhuan2+=s[i];
          ??}
          這次終于成功了
          第七次測試

          ?? while(j>0)
          ?? {
          ???? j--;
          ???? fanzhuan2+=s[j];
          ??? }???
          ??? out.print(fanzhuan2);
          ???????? }
          成功!
          第八次測試
          do {???
          ??? j--;???
          ???? fanzhuan2+=s[j];
          ??????? }??
          ??????? while(j>0);???
          ???????? out.print(fanzhuan2);????
          成功!

          第九次測試:
          ???? do {???
          ?
          ???? fanzhuan2+=s[j];
          ??????????? j--;??
          ??????? }??
          ??????? while(j>0);??
          出錯同上!



           由上面的嘗試可以發(fā)現(xiàn)問題是出在i--
          是在那里運算的要是在
          fanzhuan2+=s[j]; 之前則正確!
          在之后則出現(xiàn)越界的錯誤!

            很簡單的問題就是因為獲得length是出組的長度而不是最后一個元素的位置!應(yīng)減一!
          可見還是因為對for語句和數(shù)組概念的理解不深刻!

          posted @ 2006-10-09 22:24 劉恒濤 閱讀(514) | 評論 (0)編輯 收藏

          ??????? 進(jìn)幾天在看EJB然后就找了一個簡單的例子進(jìn)行測試可是老出錯!
          最后才發(fā)現(xiàn)是jboos4.02自己到的問題郁悶啊!
          ??????? 我建立了一個簡單的stateless EJB功能就是將小寫的字符串轉(zhuǎn)換為大寫的字符串!
          很簡單的!可是老是調(diào)不通:出錯信息為:
          ??????? java.lang.ClassCastException
          com.sun.corba.se.impl.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:229)
          javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137)
          org.apache.jsp.common_jsp.jspInit(common_jsp.java:28)
          org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:78)
          org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:155)
          org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:315)
          org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
          org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
          javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
          開始我在百度里搜索后將所有的鏈接都看了一便遇到這個問題的人還不算多!
          經(jīng)過檢索和測試發(fā)現(xiàn)都不對!無賴中就進(jìn)google進(jìn)行搜索才發(fā)現(xiàn)了一點線索
          java技術(shù)論壇上有這么一個帖子:
          http://forum.java.sun.com/thread.jspa?threadID=742861&messageID=4258493
          是這么回答的:
          The class files loaded on the Client side is mismatching the class files from the Server.

          Ensure that the version of the class files are same and try again.

          Thanks and regards,
          Pazhanikanthan. P
          我看了一下盡管不懂不過我猜測可能是版本的問題至于是java還是jboos就不清除了!
          然后又在jboos的技術(shù)論壇上找到這么一個帖子:
          ?http://staging.jboss.com/index.html?module=bb&op=viewtopic&p=3880890
          是這么回答的:
          Hi, after reading a lot of articels now i new, that this is not a bug and i didn't make a mistake. the problem is, that there is a change of settings between jboss 4.0.2 RC1 and 4.0.2 Final, but i don't know what. it has something to do with classloading and virtual machines. everybody says this but nobody says what to do to resolve this problem :-( .
          know i use jboss 4.0.3 RC1 and everything works fine.

          Grü?e aus Deutschland,
          Sven
          看后發(fā)現(xiàn)他說是jboos4.0.2有bug
          然后我就在網(wǎng)上下載了jboos最新版4.0.4GA重新發(fā)布就成功了!^_^

          posted @ 2006-10-09 18:24 劉恒濤 閱讀(319) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 万全县| 且末县| 普洱| 蒙自县| 邯郸市| 黑河市| 佳木斯市| 柘城县| 和顺县| 波密县| 鄯善县| 昌图县| 鹿邑县| 上林县| 怀远县| 桂阳县| 龙州县| 广南县| 济南市| 浙江省| 通渭县| 绥德县| 龙南县| 仁寿县| 威信县| 嘉兴市| 黄大仙区| 兴义市| 霍山县| 布拖县| 涪陵区| 保山市| 萍乡市| 西吉县| 休宁县| 新干县| 保康县| 宁陕县| 安西县| 黄浦区| 大安市|