#

          搭建TOMCAT+JPETSTORE出現的錯誤

          ool.java:684)
          ??????? at java.lang.Thread.run(Thread.java:595)
          2007-04-01 13:52:17,234 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor - processForwardConfig(ForwardConfig[name=null,path=/common/Erro
          r.jsp,redirect=false,contextRelative=false,module=null])
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.util.Mod
          uleUtils - Get module name for path /shop/viewCategory.shtml
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.util.Mod
          uleUtils - Module name found: default
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor - Processing a 'GET' for path '/shop/viewCategory'
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.util.Req
          uestUtils -? Looking for ActionForm bean instance in scope 'request' under attri
          bute key 'productListForm'
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.util.Req
          uestUtils -? Creating new ActionForm instance of type 'com.jdon.strutsutil.Model
          ListForm'
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.util.Req
          uestUtils -? --> com.jdon.strutsutil.ModelListForm@1ff2e1b
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -? Storing ActionForm bean instance in scope 'request' under att
          ribute key 'productListForm'
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -? Populating bean properties from this request
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -? Looking for Action instance for class com.jdon.framework.samp
          les.jpetstore.presentation.action.ProductListAction
          2007-04-01 13:52:17,968 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -?? Returning existing Action instance
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.bussinessproxy.co
          nfig.TargetMetaDefXmlLoader - [JdonFramework]metaDefs size:12
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.controller.servic
          e.WebServiceFactory - [JdonFramework] getService was found in:productManager
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.security.web.Http
          RequestUserSetup - [JdonFramework] setArrtibute:REMOTE_ADDRESS=127.0.0.1
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.container.access.
          ServiceAccessorImp - [JdonFramework] enter getService: proxyInstanceFactoryVisit
          able in action
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.container.visitor
          .HttpSessionProxyVisitor - [JdonFramework] get the optimized instance for the ke
          y com.jdon.framework.samples.jpetstore.service.bo.ProductManagerImpproxyInstance
          FactoryVisitable
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.bussinessproxy.dy
          ncproxy.DynamicProxyWeaving - [JdonFramework]call method:com.jdon.framework.samp
          les.jpetstore.service.ProductManager.getProductIDsListByCategory
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.AopClient - [
          JdonFramework] enter AOP invoker2 for:com.jdon.framework.samples.jpetstore.servi
          ce.bo.ProductManagerImp method:getProductIDsListByCategory
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.joinpoint.Adv
          isorChainFactory - [JdonFramework] enter? create PointcutAdvisor
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.joinpoint.Adv
          isorChainFactory - [JdonFramework] find all service's interceptos size=1
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.joinpoint.Adv
          isorChainFactory - [JdonFramework] find pojoService's interceptos size=4
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] method.getName() :getProductIDsListByCateg
          ory
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.AopClient - [
          JdonFramework] MethodInvocation will proceed ...
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.C
          acheInterceptor - [JdonFramework]methodMatchsModelGET: returnClassName = com.jdo
          n.controller.model.PageIterator
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework] enter PoolInterceptor
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework] borrow a object:com.jdon.framework.samples.jpet
          store.service.bo.ProductManagerImp id:17427094 from pool
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework]pool state: active=1 free=0
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] finish call all inteceptors
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework]enter method reflection
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] target:com.jdon.framework.samples.jpetstor
          e.service.bo.ProductManagerImp service's method:getProductIDsListByCategory runn
          ing..
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] it is pojo target service
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Me
          thodInvokerUtil - [JdonFramework] method invoke: com.jdon.framework.samples.jpet
          store.service.bo.ProductManagerImp method=getProductIDsListByCategory
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.framework.samples
          .jpetstore.service.bo.ProductManagerImp -? getProductIDsListByCategory
          2007-04-01 13:52:17,984 [http-8080-Processor20] ERROR com.jdon.framework.samples
          .jpetstore.service.bo.ProductManagerImp -? Dao error : com.ibatis.dao.client.Dao
          Exception: Error starting SQL Map transaction.? Cause: java.sql.SQLException: In
          valid authorization specification,? message from server: "Access denied for user
          ?'banq'@'localhost' (using password: YES)"
          Caused by: java.sql.SQLException: Invalid authorization specification,? message
          from server: "Access denied for user 'banq'@'localhost' (using password: YES)"
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Me
          thodInvokerUtil - [JdonFramework] method invoke successfully
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework] realease a object:com.jdon.framework.samples.jp
          etstore.service.bo.ProductManagerImp to pool
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG com.jdon.bussinessproxy.dy
          ncproxy.DynamicProxyWeaving - [JdonFramework]call method:getProductIDsListByCate
          gory finish!
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG org.apache.struts.action.E
          xceptionHandler - ExceptionHandler caught this exception:
          java.lang.Exception: getPageIterator's result is null, check your ModelListActio
          n subclass
          ??????? at com.jdon.strutsutil.ModelListAction.execute(ModelListAction.java:67)
          ??????? at org.apache.struts.action.RequestProcessor.processActionPerform(Reques
          tProcessor.java:421)
          ??????? at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
          va:226)
          ??????? at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
          4)
          ??????? at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
          ??????? at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
          ??????? at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
          icationFilterChain.java:252)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
          ilterChain.java:173)
          ??????? at com.jdon.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodin
          gFilter.java:92)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
          icationFilterChain.java:202)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
          ilterChain.java:173)
          ??????? at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
          alve.java:214)
          ??????? at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
          alve.java:178)
          ??????? at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
          ava:126)
          ??????? at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
          ava:105)
          ??????? at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
          ve.java:107)
          ??????? at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
          a:148)
          ??????? at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
          :825)
          ??????? at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
          ssConnection(Http11Protocol.java:738)
          ??????? at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo
          int.java:526)
          ??????? at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFol
          lowerWorkerThread.java:80)
          ??????? at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
          ool.java:684)
          ??????? at java.lang.Thread.run(Thread.java:595)
          2007-04-01 13:52:17,984 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor - processForwardConfig(ForwardConfig[name=null,path=/common/Erro
          r.jsp,redirect=false,contextRelative=false,module=null])
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.util.Mod
          uleUtils - Get module name for path /shop/viewCategory.shtml
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.util.Mod
          uleUtils - Module name found: default
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor - Processing a 'GET' for path '/shop/viewCategory'
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.util.Req
          uestUtils -? Looking for ActionForm bean instance in scope 'request' under attri
          bute key 'productListForm'
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.util.Req
          uestUtils -? Creating new ActionForm instance of type 'com.jdon.strutsutil.Model
          ListForm'
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.util.Req
          uestUtils -? --> com.jdon.strutsutil.ModelListForm@2bfdff
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -? Storing ActionForm bean instance in scope 'request' under att
          ribute key 'productListForm'
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -? Populating bean properties from this request
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -? Looking for Action instance for class com.jdon.framework.samp
          les.jpetstore.presentation.action.ProductListAction
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor -?? Returning existing Action instance
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.bussinessproxy.co
          nfig.TargetMetaDefXmlLoader - [JdonFramework]metaDefs size:12
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.controller.servic
          e.WebServiceFactory - [JdonFramework] getService was found in:productManager
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.security.web.Http
          RequestUserSetup - [JdonFramework] setArrtibute:REMOTE_ADDRESS=127.0.0.1
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.container.access.
          ServiceAccessorImp - [JdonFramework] enter getService: proxyInstanceFactoryVisit
          able in action
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.container.visitor
          .HttpSessionProxyVisitor - [JdonFramework] get the optimized instance for the ke
          y com.jdon.framework.samples.jpetstore.service.bo.ProductManagerImpproxyInstance
          FactoryVisitable
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.bussinessproxy.dy
          ncproxy.DynamicProxyWeaving - [JdonFramework]call method:com.jdon.framework.samp
          les.jpetstore.service.ProductManager.getProductIDsListByCategory
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.AopClient - [
          JdonFramework] enter AOP invoker2 for:com.jdon.framework.samples.jpetstore.servi
          ce.bo.ProductManagerImp method:getProductIDsListByCategory
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.joinpoint.Adv
          isorChainFactory - [JdonFramework] enter? create PointcutAdvisor
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.joinpoint.Adv
          isorChainFactory - [JdonFramework] find all service's interceptos size=1
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.joinpoint.Adv
          isorChainFactory - [JdonFramework] find pojoService's interceptos size=4
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] method.getName() :getProductIDsListByCateg
          ory
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.AopClient - [
          JdonFramework] MethodInvocation will proceed ...
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.C
          acheInterceptor - [JdonFramework]methodMatchsModelGET: returnClassName = com.jdo
          n.controller.model.PageIterator
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework] enter PoolInterceptor
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework] borrow a object:com.jdon.framework.samples.jpet
          store.service.bo.ProductManagerImp id:17427094 from pool
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework]pool state: active=1 free=0
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] finish call all inteceptors
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework]enter method reflection
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] target:com.jdon.framework.samples.jpetstor
          e.service.bo.ProductManagerImp service's method:getProductIDsListByCategory runn
          ing..
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Pr
          oxyMethodInvocation - [JdonFramework] it is pojo target service
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Me
          thodInvokerUtil - [JdonFramework] method invoke: com.jdon.framework.samples.jpet
          store.service.bo.ProductManagerImp method=getProductIDsListByCategory
          2007-04-01 13:52:18,531 [http-8080-Processor20] DEBUG com.jdon.framework.samples
          .jpetstore.service.bo.ProductManagerImp -? getProductIDsListByCategory
          2007-04-01 13:52:18,546 [http-8080-Processor20] ERROR com.jdon.framework.samples
          .jpetstore.service.bo.ProductManagerImp -? Dao error : com.ibatis.dao.client.Dao
          Exception: Error starting SQL Map transaction.? Cause: java.sql.SQLException: In
          valid authorization specification,? message from server: "Access denied for user
          ?'banq'@'localhost' (using password: YES)"
          Caused by: java.sql.SQLException: Invalid authorization specification,? message
          from server: "Access denied for user 'banq'@'localhost' (using password: YES)"
          2007-04-01 13:52:18,546 [http-8080-Processor20] DEBUG com.jdon.aop.reflection.Me
          thodInvokerUtil - [JdonFramework] method invoke successfully
          2007-04-01 13:52:18,546 [http-8080-Processor20] DEBUG com.jdon.aop.interceptor.P
          oolInterceptor - [JdonFramework] realease a object:com.jdon.framework.samples.jp
          etstore.service.bo.ProductManagerImp to pool
          2007-04-01 13:52:18,546 [http-8080-Processor20] DEBUG com.jdon.bussinessproxy.dy
          ncproxy.DynamicProxyWeaving - [JdonFramework]call method:getProductIDsListByCate
          gory finish!
          2007-04-01 13:52:18,546 [http-8080-Processor20] DEBUG org.apache.struts.action.E
          xceptionHandler - ExceptionHandler caught this exception:
          java.lang.Exception: getPageIterator's result is null, check your ModelListActio
          n subclass
          ??????? at com.jdon.strutsutil.ModelListAction.execute(ModelListAction.java:67)
          ??????? at org.apache.struts.action.RequestProcessor.processActionPerform(Reques
          tProcessor.java:421)
          ??????? at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
          va:226)
          ??????? at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116
          4)
          ??????? at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
          ??????? at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
          ??????? at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
          icationFilterChain.java:252)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
          ilterChain.java:173)
          ??????? at com.jdon.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodin
          gFilter.java:92)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
          icationFilterChain.java:202)
          ??????? at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
          ilterChain.java:173)
          ??????? at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
          alve.java:214)
          ??????? at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
          alve.java:178)
          ??????? at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
          ava:126)
          ??????? at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
          ava:105)
          ??????? at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
          ve.java:107)
          ??????? at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
          a:148)
          ??????? at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
          :825)
          ??????? at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
          ssConnection(Http11Protocol.java:738)
          ??????? at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo
          int.java:526)
          ??????? at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFol
          lowerWorkerThread.java:80)
          ??????? at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
          ool.java:684)
          ??????? at java.lang.Thread.run(Thread.java:595)
          2007-04-01 13:52:18,546 [http-8080-Processor20] DEBUG org.apache.struts.action.R
          equestProcessor - processForwardConfig(ForwardConfig[name=null,path=/common/Erro
          r.jsp,redirect=false,contextRelative=false,module=null])
          2007-04-01 14:02:02,593 [ContainerBackgroundProcessor[StandardEngine[Catalina]]]
          ?DEBUG com.jdon.container.visitor.HttpSessionProxyVisitor - [JdonFramework] unva
          lueBound active, sessionId :3523A004637D3D889596DC8076494139
          2007-04-01 14:02:02,593 [ContainerBackgroundProcessor[StandardEngine[Catalina]]]
          ?DEBUG com.jdon.container.visitor.HttpSessionProxyVisitor - [JdonFramework] unva
          lueUnbound active, componentsboxs size2

          posted @ 2007-04-01 14:15 金家寶 閱讀(1027) | 評論 (1)編輯 收藏

          Java入門知識

          ?????? 1、jdk就是j2se,jdk1.1.8版本以后改成為j2se,

            下載地址: http://java.sun.com/j2se/downloads.html

            2、jre是java運行時環境(jdk1.3版本以后都包含jre)不用單獨下載

            3、設置環境變量
            安裝了jdk以后,要配置環境變量
            我的電腦->屬性->高級->環境變量
            添加以下環境變量(假定你的java安裝在c:\jdk1.3)
            java_home=c:\jdk1.3
            classpath=.;c:\jdk1.3\lib\dt.jar;c:\jdk1.3\lib\tools.jar;(.;已經不能少,因為它代表當前路徑)
            path = c:\jdk1.3\bin
            新開一個dos窗口,鍵入java和javac測試一下

            4、簡單測試程序
            代碼:--------------------------------
            public class Test{
             public static void main(String args[]){
              System.out.println("Hello world!");
             }
            }
            -------------------------------------
            javac Test.java
            java Test

            5、java、j2ee、xml 開發常用工具介紹
            j2sdk安裝程序及Java API Doc
            j2sdk-1_4_0 for win
            j2sdk-1_4_0 for linux
            j2sdk-1_4_0-doc
            j2sdkee-1.3-doc
            可去http://java.sun.com/j2ee/download.html下載

            6、build工具
            ant: Ant是一個基于java的跨平臺的build工具。之所以Ant能跨平臺,是因為Ant不再需要你編寫shell命令,Ant的配置文件是基于XML的任務樹,能讓你運行各種各樣的任務,任務的運
          行是由實現了特定任務接口的對象來完成的。
            Http://jakarta.apache.org/ant

            7、開發工具(IDE,集成開發環境)
            1、開發工具首選兩種
            1、jbuilder--不用我多說了
            2、netBeans(下載地址www.netbeans.org,免費),forte也就是Sun EE和netbeans類似(估計是使用netbeans的原碼改寫而成), 但是netbeans(3.
          4版本)我覺得比較好用,可以和tomcat和cvs等集成,但是唯一不足的就是不能開發EJB,forte倒是可以,但是不能給出我們自己寫的API(也就是.后出現的方法都是系統的,而我們自己寫的方法出不來
          ,faint)
            其它開發工具
            Eclipse:號稱未來能進行任何語言開發的IDE集大成者。
            Eclipse 是替代IBM Visual Age for Java(以下簡稱IVJ)的下一代IDE開發環境,但它未來的目標不僅僅是成為專門開發Java程序的IDE環境,根據Eclipse的體系結
          構,通過開發插件,它能擴展到任何語言的開發,甚至能成為圖片繪制的工具。
            目前,Eclipse已經開始提供C語言開發的功能插件。更難能可貴的是,Eclipse是一個開放源代碼的項目,任何人都可以下載Eclipse的源代碼,并且在此基礎上開發自己的功能插件。也就是說未來只
          要有人需要,就會有建立在Eclipse之上的COBOL,Perl,Python等語言的開發插件出現。
            同時可以通過開發新的插件擴展現有插件的功能,比如在現有的Java開發環境中加入Tomcat服務器插件。
            可以無限擴展,而且有著統一的外觀,操作和系統資源管理,這也正是Eclipse的潛力所在。
            Http://www.eclipse.org

            8、專業XML編輯工具
            XMLSPY:支持SOAP;支持Oracle XML Schema擴展;支持MSXML4等等;提供三種XML文檔視圖:結構顯示和編輯,原碼視圖和支持CSS,XSL的預覽。支持最新schema標準,
          可以根據schema校驗XML文檔可以將不同schema版本schema文檔轉換成符合最新schema規范的文檔可以將DTDs, XML-Data, 或者BizTalk schemas 轉換成W3C
          XML
            Schema從數據庫連接(ADO,ODBC)中自動產生XML Schema可以直接訪問數據庫,提供數據庫和XML之間的轉換提供類似Office XP compatible的用戶界面提供了更方便的用
          戶界面定制方式.
            該編輯器支持所見即所得的文本編輯,基于form地數據輸入,圖形元素等,包括了一個圖形化的XSLT產生器,可以針對schema或者DTD產生樣式文檔,最后應用于相應的XML文檔。
            可去http://www.xmlspy.com/download.html 下載

            9、Framework
            cocoon:XML Framework
            Cocoon是采用100%純Java編寫的一個內容發布框架。
            Cocoon讓你能采用W3C的最新技術(DOM、XML、XSL)來提供Web內容。
            新的Cocoon模式能將文檔內容、樣式、處理邏輯進行完全的分離,允許這三層能獨立地設計、創建和管理, 從而減少了管理開銷,加強了工作的重用性,減少了開發時間。
            來源:http://xml.apache.org/cocoon

            9、struts:JSP Framework
            Struts是采用Java Servlet/JavaServer Pages技術,開發Web應用程序的開放源碼的framework。
            采用Struts能開發出基于MVC(Model-View-Controller)設計模式的應用構架。
            Struts有如下的主要功能:
            ?包含一個controller servlet,能將用戶的請求發送到相應的Action對象。
            ?JSP自由tag庫,并且在controller servlet中提供關聯支持,幫助開發員創建交互式表單應用。
            ?提供了一系列實用對象:XML處理、通過Java reflection APIs自動處理JavaBeans屬性、國際化的提示和消息。
            來源:http://jakarta.apache.org/struts

            10、turbine:Servlet Framework
            Turbine是基于servlet的framework,使有經驗的Java開發員能快速地構建web應用。
            使用Turbine,可以通過創建使用特定服務來處理模板的Screen,
            來集成現有的模板技術(例如Velocity、Webmacro、Java Server Pages(JSP)、FreeMarker、cocoon)。
            來源:http://jakarta.apache.org/turbine

            11、Demo
            Java Pet Store: j2ee應用樣例
            Java Pet Store是Java software藍圖規劃的j2ee企業應用樣例。
            它示范了怎樣應用j2ee 平臺的威力去構建一個靈活的、可伸展的跨平臺企業應用。
            你可從java.sun.com/blueprints/enterprise/上獲取最新的信息及學習資料,目前最新的版本是基于j2ee1.3的1.3_01。
            來源:http://java.sun.com/blueprints/enterprise/

            12、database
            pointbase:進軍企業級數據庫市場的一只新軍。
            PointBase 是第一個經過認證的100%純Java數據庫,可用于任何使用的Java 2 標準版虛擬機(JVM)的平臺。
            來源:http://www.pointbase.com/

            13、j2ee server
            1、j2sdkee1.3.1 referrence implement(j2ee參考實現),sun的一個很好的學習j2ee的工具,記著,這是一個學習的工具,不是一個企業開發的工具,因為它的效率,安
          全等諸多問題,所以不能用它做項目或者產品。
            Http://java.sun.com/j2ee/download.html
            2、weblogic和websphere 不用我多說了吧!
            3、sun one Application Server(前身是iplanet)---強烈推薦
            里面是一個比較完成j2ee開發平臺
            1、sun one studio 4 (前身forte)
            2、tomcat 4
            3、sun one application server 一個較棒的j2ee server
            4、和j2ee ri集成
            5、pointbase 是第一個經過認證的100%純Java數據庫
            這些工具可以夠你開發任何java產品,最重要的是,它是一個免費的j2ee服務器,并且是免費的哦,比起jboss來說,不知道好到哪里去了哈哈,這下活該我發了!!!
            Http://wwws.sun.com/software/download/app_servers.html

            14、UML工具
            1、Rational Rose 大哥大級別的UML設計工具,功能很強大。
            2、Together 可以認為是最好的java UML設計工具,可以根據類圖同步生成java代碼,設計完成后,系統的
            框架也出來了,爽啊!

            15、指導書籍
            1、入門書籍就不多介紹了
            看一些《從入門到精通》之類的書籍,《java編程思想》初學者不推薦
            2、java programmer推薦看《java編程思想》
            3、java designer推薦看《java與模式》(新書,中國人寫的,不是翻譯的,中國人能寫出這樣有深意的IT書,很難得)



          Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1523190

          posted @ 2007-03-16 23:30 金家寶 閱讀(423) | 評論 (2)編輯 收藏

          如何從開發人員走向架構師

          很多架構師都是從好的開發人員逐步過渡而來的,但并非每個好的開發人員都希望成為架構師,而且他們并不是都適合做架構師。無論您是打算進行職業轉型的開發人員,還是尋找能承擔體系結構設計責任的合適人選的經理,都務必對此轉型過程有個清楚的了解。本文將討論從實現專家到架構師的過渡過程。

            在尋找優秀的指揮的時候,您首先要找的是一名優秀的音樂演奏家。但并非每個音樂演奏家都能成為優秀的指揮。架構師的專業發展方面也與此類似。越來越多的 IT 組織開始認識到良好軟件體系結構的重要性,架構師職業正迅速發展為 IT 內一個獨立的門類。由于要從相當小的候選范圍內招募架構師,因此這就給管理帶來了一些新挑戰。即使人力資源部門找到了候選者,針對經驗進行的篩選也比其他門類更為嚴格。跨越這些障礙的最快方式是要認識到,大部分好的架構師同時也是好的開發人員,因此尋找架構師人才時可能首先應該從普通開發人員中找起。招聘人員在對候選者(內部或外部)進行詳細審查時,應該考慮這個觀點。不過,對此資源進行挑選可能比較麻煩,因為只有極少的優秀開發人員具有成為架構師的特征或愿望。

            本文列出了開發人員成為架構師要進行的工作。我將從可能考慮進行此轉型的開發人員和評估進行此轉型的開發人員的經理這兩個方面來探討這一問題。我還將提供一系列在做出這些決策時要考慮的因素。

            個人特征

            軟件開發團隊和管理層之間的聯系始終是 IT 中的一個關鍵所在。二者都傾向于以完全不同的方式考慮給定的問題。大部分相關技術都是討論項目經理應如何跟蹤和解釋開發人員的進度和問題。但溝通不足的情況仍然非常普遍,而且這是項目失敗的首要原因。好的架構師是解決這個問題的最有效辦法。架構師的主要責任是提供開發人員和項目經理之間的共用溝通媒體。他們負責讓業務規則及需求與工程實踐及限制相適應,以確保成功。以下是成功架構師的一些主要特征。

            愿意并有能力進行溝通:在開發人員中發現架構師的最有價值標準是有效的溝通。您需要技術嫻熟、經驗豐富的開發人員,這樣的人員需要有就項目中的業務相關問題進行溝通的經歷。架構師經常必須對理解方面的差距進行預計,然后才能有所貢獻。他們必須愿意克服困難來確保技術和業務觀點的融合。他們并不必對意見交換工作進行計劃和協調;這仍然主要是項目經理的工作。他們的任務是確定表述系統設計時的最佳工具和構件,以促進有效的意見交換。他們必須能夠判斷當前方法顯得不足而需要采用新方法的情況。寫作技能也非常重要,還需要具有制作草圖的技能或使用制圖軟件的能力。

            具有處理談判細節方面的經驗:架構師經常需要負責討論系統開發的技術折衷方案。優先級的沖突可能會帶來實踐限制、風險規避或可能導致在各個不同業務組之間需求不同。優秀的架構師能夠有效地評估技術可能性,并能在不損失項目的主要價值的前提下制訂開發計劃來處理各種利害關系和限制。這與前面討論的溝通技能緊密相關,但同時也要體現架構師的技術能力。好的架構師候選者應該是經常幫助對有爭議的討論進行引導的人,能夠使討論得出新的想法,而不會使其在一個位置停滯不前。

            自覺主動;積極解決設計問題:架構師的日常工作目標經常并不明確。很多開發人員直接參考功能規范來列出任務清單。架構師通常則是向這些開發人員提供所需結構的人員,以便盡可能提高工作效率。好的候選者不僅進行溝通方面的工作,而且也會預計各種設計問題并加以解決——通常在沒有任何具體指示的情況下自覺進行。無論所分配的職責如何,積極參與項目的開發人員都有機會從一起工作的人員中脫穎而出。

            抽象思維和分析:架構師必須能夠理解表述模糊的概念并將其變成相關各方能夠理解的項目構件。他們必須能夠理解抽象概念,并以具體的語言對其進行溝通。開發人員中好的候選者經常要求或自己主動解釋開發生命周期中容易混淆的問題。他們能迅速評估各種想法并將其納入后續工作的操作建議中。

            開發人員經常具有很強的數學能力,而好的架構師則傾向于表現出更強的口頭表達能力。管理人員經常說開發人員具有“工程意識”,而這是一個用于評估架構師的非常有意義的方面。架構師應該具有很強的解決技術問題的能力,但還必須能夠準確獲知更為全面的人員如何與技術交互的信息。這要求具有某種形式的抽象思維(而不再是代碼的細節),這種思維能力可能較難形成。

            有些人認為,某種級別的正式教育是成為優秀開發人員的必備條件之一,我并不同意這種精英論。我遇到了很多高中就輟學的優秀開發人員。不過,對于體系結構設計工作,我的個人經驗以及我對所需能力的認識都讓我相信,好的架構師通常至少獲得了一個有挑戰性的學士學位。

            跟蹤生命周期

            好的架構師通常有在具備定義良好的軟件開發生命周期(Software Development Life Cycle,SDLC)的組織工作的經驗。架構師必須理解在其所屬專業內最重要的操作過程。這并不意味著需要有其他前提,例如,并不需要高能力成熟度模型(Capability Maturity Model,CMM)級別的工作經驗。好的架構師可能來自使用 SDLC 的多個小型迭代的極限編程(Extreme Programming,XP)方法的組織。務必注意各種傳統軟件開發操作,如 Michael A. Jackson 的方法:Jackson 結構編程(Jackson Structured Programming,JSP)和 Jackson 系統開發(Jackson System Development,JSD)。Jackson 的研究對架構師職業發展的意義就像 Donald Knuth 的研究對程序員一樣重要。架構師可以偏愛任何經典的、經過時間考驗的軟件系統開發方法。

            SDLC 也可以成為評估架構師合適人選的有用機制。每個 SDLC 階段都具有能提供相關線索的特征。SDLC 包含很多小的變體,但在此部分,我將使用幾乎所有方法的公共基礎部分。下面的列表詳細說明了 SDLC 的各個階段,并列出了好的架構師候選者在每個階段表現出來的特征。

          •   分析:在分析期間,好的架構師會考慮非技術影響,以便了解需求和將在其中進行開發的環境。架構師可為風險評估任務帶來廣泛的軟件經驗供參考。尋找具有豐富經驗的開發人員,以幫助業務部門理解技術人員正確解釋需求所需的信息。尋找在開發的早期階段能夠預計可能遇到的問題的開發人員。
          •   設計:在高級設計期間,好的架構師會收集問題空間的各個抽象元素,并就其進行溝通,以便開發團隊草擬將要開發的系統的相關圖表。架構師負責將需求謹慎地映射到所得到的系統體系結構的功能。在詳細設計期間,他們所扮演的角色并不是核心角色,但為了根據整個系統的規則對特定模塊的元素進行審查,仍然需要他們。尋找善于讓團隊能夠預計設計決策對最終系統的影響的開發人員。尋找善于確定一些最佳構件來促進與技術和非技術受眾溝通設計問題的開發人員。
          •   實現:在實現期間,架構師對項目進行引導,以確保其符合系統體系結構。他們在一線評估技術更改請求,并確定如何對設計進行調整,以最好地處理此類請求。架構師還要密切了解開發人員的進度,特別要跟蹤系統中模塊間的集成點的狀態。尋找經常對討論進行引導來連接多個子系統的開發人員。尋找項目經理可以依賴其快速地進行與更改和出現的問題相關的風險評估的開發人員。
          •   測試:架構師對系統集成和用戶接受度測試進行指導,并負責評估進度的正確溝通的持續測試結果。尋找理解錯誤模式且善于將測試復查結果轉換為行動計劃的開發人員。
          •   維護:在維護期間,架構師將發起關于系統集成的討論。無論處理 IT 基礎設施問題,還是確保部門之間的技術合作,架構師都必須完全理解應用程序,必須快速學習姊妹應用程序的體系結構,而且必須就集成點和風險進行有效溝通。尋找具有系統集成經驗且表現出快速掌握全貌的能力的開發人員。系統集成是一項獨特的任務。

            架構師培養建議

            有些組織能比其他組織更有效地進行架構師培養。如果充分考慮到招聘此類新專業人才的困難,努力促成能鼓勵開發人員發展為架構師的環境是非常明智的策略。但務必避免對不愿意或不適合走這條路的開發人員進行處罰。組織應該為開發人員制訂多條發展路線,包括那些愿意繼續擔任開發人員的人。對架構師而言,資深開發人員不可或缺。他們可以實現系統中最關鍵的模塊。通過對其他開發人員進行代碼檢查和測試支持,他們可幫助確保總體軟件質量,而如果質量不能保證,即使最好的體系結構也毫無用處。

            組織應制訂個人評估程序,以鼓勵開發人員考慮其職業目標,其中要包含體系結構設計的選項。應該鼓勵經理在其下屬中尋找體系結構設計人才。應該實現指導計劃,讓架構師與希望成為架構師的開發人員協作工作。應該鼓勵開發人員通過參加各種協會、撰寫文章和參加會議,從而參與到專業領域中來。通過這樣參與進來,可幫助開發人員從新的角度理解系統,并幫助他們更好地就其認識進行溝通。這樣還能培養可提高效率的重要創新想法。

            結束語

            開發人員一旦邁出了通向體系結構設計專業方向的第一步,就可以利用很多資源來獲得幫助,其中包括很多來自 IBM 的資源。有時候,此過程的最困難的部分就是第一步,而本文提供了一些線索和提示,經理和開發人員可以利用其來評估應該鼓勵哪些人努力成為架構師。

          聲明:文章摘自CSDN

          posted @ 2007-03-16 23:23 金家寶 閱讀(315) | 評論 (0)編輯 收藏

          Java Pet Store Demo 1.3.2中文說明

          http://docs.huihoo.com/java/petstore/1.3.2_zh/index.html

          Java Pet Store Demo 1.3.2
          安裝演示版
          使用演示版
          編譯演示版
          配置演示版

          posted @ 2007-03-09 01:58 金家寶 閱讀(521) | 評論 (0)編輯 收藏

          僅列出標題
          共7頁: 上一頁 1 2 3 4 5 6 7 
          主站蜘蛛池模板: 桂平市| 唐河县| 泗洪县| 疏勒县| 比如县| 宾川县| 天台县| 府谷县| 太和县| 望奎县| 荥阳市| 临清市| 年辖:市辖区| 建瓯市| 吉林省| 新疆| 密山市| 龙井市| 右玉县| 西安市| 台山市| 盐城市| 涿鹿县| 雷州市| 体育| 龙门县| 河西区| 永顺县| 扶余县| 双牌县| 平安县| 来安县| 衡阳县| 格尔木市| 宁津县| 德保县| 洛隆县| 新平| 察哈| 方山县| 维西|