<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    java連接數據庫(第一步)

    需要聯系的幾個文件:DaosupportController,extents Controller,BeanFactory,CoreDispatcherController,appcontext.xml.
    有web.xml中
    <servlet>
            <!-- servlet獲得控制文件Class的名字,類名 -->
      <servlet-name>smvcCoreDispatcher</servlet-name>
      <servlet-class>org.bluechant.mvc.core.CoreDispatcherController</servlet-class>
    .....
    </servlet>
    有CoreDispatcherController開始-->

    public void invokeActionHandler(ModelAndView mv , HttpServletRequest request) throws Exception{
            String className 
    = mv.getClassName();
            String methodName 
    = mv.getMethodName();
            
    //load class
            Class controllerClass = cache.loadClass(className);//== Class.forName(className);java反射機制,jvm加載lassName類
            Class parentControllerClass = cache.loadClass(baseControllerClass);//class org.bluechant.mvc.controller.Controller
            
    //load method參數1類,創建一個方法為setRequest參數為HttpServletRequest.class的方法與method = clazz.getDeclaredMethod(setRequest, HttpServletRequest.class);與HttpServletRequest的setRequest方法一致的方法.
            Method setRequest = cache.loadMethod(parentControllerClass, "setRequest"new Class[] { HttpServletRequest.class });    //HttpServletRequest.class,java的反射機制得到自己的類,能夠擁有自己的方法值,(Method setRequest獲取成員函數)
            Method setModelAndView = cache.loadMethod(parentControllerClass, "setModelAndView"new Class[] { ModelAndView.class });//org.bluechant.mvc.controller.Controller-setModelAndView@6024418  public void org.bluechant.mvc.controller.Controller.setModelAndView(org.bluechant.mvc.controller.ModelAndView)
            Method targetMethod = cache.loadMethod(controllerClass, methodName, new Class[]{});
            
    //buiid controller instance and invoke target method以上setRequest,setModelAndView,targetMethod都放在cache(hashMap中)
            Object instance = controllerClass.newInstance();//加載className類;//此方法引入數據庫連接 
            //以上剛進入頁面的時候instance調用三個類初始化,分別是繼承關系DaosupportController ,controller,和BeanFactory
            /*--->>>其中DaoSupportController類中protected ObjectDao dao = (ObjectDao)BeanFactory.getBean("objectDao");
            --->>>調用:getBean 方法public class BeanFactory {
                public static ApplicationContext context = new ClassPathXmlApplicationContext("appcontext.xml") ;//此方法引入數據庫連接                                        
                public static Object getBean(String beanId) {
                    return context.getBean(beanId);
                }
            }
    */

            setRequest.invoke(instance, 
    new Object[] { request });//對帶有指定參數的指定對象調用由此 Method 對象表示的基礎方法    
            setModelAndView.invoke(instance, new Object[] { mv });//instance立即為原型指針
    //        --->>>執行指定的targetMethod方法實則為AccountController的login()登陸方法此時開始調用數據庫
            targetMethod.invoke(instance, new Object[]{});    
            
    //調用instance類中targetMethod這個方法,Object[]{}這個作為參數..
            
    //invoke根據實體獲得方法,添加所要造的參數,就是個找實例的方法克隆工廠,由Method獲得實例模型,由方法鍛造樣子,傳入參數得出想要結果
        }

    }



    posted on 2012-05-24 16:49 youngturk 閱讀(196) 評論(0)  編輯  收藏 所屬分類: Java基礎web.xml解析java連接數據庫解析

    <2012年5月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    導航

    統計

    公告

    this year :
    1 jQuery
    2 freemarker
    3 框架結構
    4 口語英語

    常用鏈接

    留言簿(6)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    EJB學習

    Flex學習

    learn English

    oracle

    spring MVC web service

    SQL

    Struts

    生活保健

    解析文件

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费国产高清毛不卡片基地 | 国产成人精品无码免费看| 久久久久久国产a免费观看不卡 | 国产精品成人免费视频网站京东 | a级黄色毛片免费播放视频| 内射少妇36P亚洲区| 妞干网在线免费视频| 亚洲一级片免费看| 亚洲国产精品日韩在线观看| 国产成人一区二区三区免费视频| 中文字幕在线免费播放| 亚洲国产精品综合久久2007| 久久亚洲中文字幕精品一区| 美丽的姑娘免费观看在线播放| 蜜臀亚洲AV无码精品国产午夜.| 亚洲精品白浆高清久久久久久| 毛片免费在线播放| 国产真人无码作爱视频免费| 亚洲免费综合色在线视频| 亚洲成AV人在线播放无码| 狠狠久久永久免费观看| 久热免费在线视频| 免费夜色污私人影院网站电影 | 最近2019中文免费字幕在线观看| 亚洲综合激情五月色一区| 国产精品亚洲美女久久久 | 亚洲产国偷V产偷V自拍色戒| 啦啦啦www免费视频| 久久成人免费大片| g0g0人体全免费高清大胆视频| 亚洲精品美女网站| 亚洲电影一区二区三区| 亚洲精品无码激情AV| 成年人在线免费看视频| 亚洲视频免费在线播放| 手机看片国产免费永久| 窝窝影视午夜看片免费| 亚洲熟伦熟女专区hd高清| 久久精品亚洲中文字幕无码麻豆| 中文字幕在线亚洲精品| 亚洲av麻豆aⅴ无码电影|