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

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

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

    Asktalk

    天行健,君子以自強不息!
    posts - 21, comments - 79, trackbacks - 0, articles - 2
      BlogJava :: 首頁 ::  :: 聯系 :: 聚合  :: 管理

    2007年3月25日

     

    這是一個目前最好的一個開源分頁標簽的實現---extremeTable標簽。今天談談它的Limit的設計架構思想。

    這個設計很通用,經過作者的多次重構,現在extremeTable的架構非常漂亮。這個標簽現在缺點是有些參數對mvc控制器屏蔽了,應提供一致的對外接口。不過整體上設計還是很精致的,面向對象來處理 html元素,與spring非常的默契,非常便于開發和測試。

    類圖關系

    1, 工廠LimitFactory

    TableLimitFactoryAbstractLimitFactoryLimitFactory

    TableLimitFactory是最終實現的工廠,它extendsAbstractLimitFactory抽象類,AbstractLimitFactory implementsLimitFactory接口。

    TableLimitFactory主要是用來實例化,通過構造函數傳入參數。同時創建Registry來完成jsp頁面參數傳入Registry。當然還有一個功能就是從web.xml的配置文件讀取一些全局參數。首先讀取配置文件參數,然后根據參數創建LimitRegistry對象。

    this.registry = new LimitRegistry(context, tableId, prefixWithTableId, state, stateAttr);

    AbstractLimitFactory主要是用來獲取jsp頁面上設置的參數,比如分頁的信息(第幾頁,起始行,結束行,每頁顯示行數,查詢條件,排序條件等),當然他是通過工具類Registry來實現。

    2, Limit

    TableLimitLimit。其主要作用是一個參數參數器,就是把Registry對象的參數傳入TableLimit,考慮到分層吧,TableLimit是該標簽和action通信的橋梁。就像我們的j2ee項目vodaostrutsview等數據傳輸工具。

    3, Preferences

    TablePropertiesProperties 主要是來實現從web.xml配置的文件中讀取配置的一些全局參數。

    InputStream input = this.getClass().getResourceAsStream(preferencesLocation);

    if (input != null) {

    properties.load(input);

    }

    其中preferencesLocation是路徑,在TableLimitFactory初始化時候,通過工具類TableModelUtils.getPreferencesLocation(context)獲取。

    這個設計也是大多數需要配置文件的系統常用的方法。

    4, Registry

    LimitRegistryAbstractRegistryRegistry

    這個體系結構和上面的工廠模式一樣,就是LimitRegistry主要是用來實例化,通過構造函數傳入參數。AbstractRegistry是實際實現類,獲取jsp表單提交的參數,并提供getter方法供Limit來使用。Registry是一個接口。

    所以這設計模式,我們可以來學習,

    經典表述:抽象類接口

    類:初始化,定義構造函數,傳入參數。

    抽象類:定義業務方法在此。

    接口:定義接口方法,這個不用多說。

    (作者:asktalk   來自 http://www.tkk7.com/askltak 原創文章,轉載請注明出處)

    posted @ 2007-12-26 16:17 Asktalk 閱讀(4612) | 評論 (5)編輯 收藏

     

    下面是從struts的角度來談談spring自帶的web框架的使用。
    當然,我們在配置
    web框架前,需要把spring配置好,這里就不多說了。

    1.web框架核心servletweb.xml中的配置。


     

     1<servlet>  
     2<servlet-name>Dispatcher</servlet-name>  
     3<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  <init-param>   
     4<param-name>contextConfigLocation</param-name>   <param-value>/WEB-INF/Config.xml</param-value>
     5  </init-param> 
     6</servlet>  
     7
     8<servlet-mapping>  
     9<servlet-name>Dispatcher</servlet-name>  
    10<url-pattern>*.do</url-pattern>
    11 </servlet-mapping>
    12

     

    如果沒有配置config.xml文件,那么其默認的配置文件為[ servlet-name ]-servlet.xml 。也就是我們這個配置的默認配置文件是Dispatcher-servlet.xml

    2.web框架的xml配置

    spring web框架與struts最大的不同就是spring web框架根據分工,把每一種功能都定義為一種組件,所以在開發過程中需要配置的東西就非常多;Spring中分為幾個角色:

    核心控制器,就是web框架的主 servlet

    業務控制器,也就是struts中的action對象;

    映射處理器,定義了訪問路徑如何與webxml中的bean相匹配,就是定義了一種策略;

    視圖和視圖解析器,視圖就是jstl,velocity,xslt等,視圖解析器定義了action最終導航頁面的策略;

    模型,就是struts MVC結構中的model

    Command對象,類似于struts中的formBean

    2.1 Spring web框架與struts框架的區別

    下面列出了一些。例如,

    Web框架要攔截*.do路徑,那么*.do如何與我們下面的bean匹配,就需要一個映射控制器。在struts中就是名字相同的匹配,不需要配置。

    action最后要導向到不同的頁面,在struts中我們用的是默認的不需要在xml文件中配置,在spring中就需要配置視圖解析器。

    下面代碼中,ActioncommandClass配置的就是類似于struts中的formBean對象。

     1<?xml version="1.0" encoding="UTF-8"?>
     2<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
     3 "http://www.springframework.org/dtd/spring-beans.dtd">
     4<beans>
     5 <!--Definition of View Resolver -->
     6 <bean id="viewResolver"
     7  class="org.springframework.web.servlet.view.InternalResourceViewResolver">
     8  <property name="viewClass"> 
     9   <value>org.springframework.web.servlet.view.JstlView</value>
    10  </property>
    11  <property name="prefix">
    12   <value>/WEB-INF/view/</value>
    13  </property>
    14  <property name="suffix">
    15   <value>.jsp</value>
    16  </property>
    17 </bean>
    18  
    19<!—就是我們上面說的映射控制器 -->
    20 <!--Request Mapping -->
    21 <bean id="urlMapping"
    22  class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    23  <property name="mappings">
    24   <props>
    25    <prop key="/login.do">LoginAction</prop>
    26   </props>
    27  </property>
    28 </bean>
    29 
    30<!---類似于struts的action配置-->
    31 <!---Action Definition-->
    32 <bean id="LoginAction"
    33  class="com.maxway.action.LoginAction">
    34  <property name="commandClass">
    35   <value>com.maxway.action.LoginInfo</value>
    36  </property>
    37  <property name="fail_view">
    38   <value>loginfail</value>
    39  </property>
    40  <property name="success_view">
    41   <value>main</value>
    42  </property>
    43 </bean>
    44</beans>
    45


     

    3.代碼的編寫

    Action不外乎繼承一些現成的類,來實現我們view部分的業務。
    作者:http://www.tkk7.com/asktalk

    posted @ 2007-12-25 02:23 Asktalk 閱讀(4324) | 評論 (0)編輯 收藏

     

    最近我一直在研究Eclipse的架構體系,下面我們就來看看Eclipse的啟動機制吧

    1Eclipse源代碼       
    eclipse-sourceBuild-srcIncluded-3.3.1.1.zip   
    版本:3.3.1.1        大小:95.058MB
    下載地址:http://download.eclipse.org/eclipse/downloads

    解壓后的目錄結構如下圖,通過執行build.bat可以編譯出完整的Eclipse-sdk-3.3.1.1運行包,和我們網上下載的一樣。但是這個過程可能需要一個小時左右的時間,要有耐性哦。所有的插件工程目錄在plugins中,我們只需要導入現有工程即可把plugins下所有工程導入。

    下面我們就先來研究一下Eclipse最核心的部分,就是RCP部分必須的插件。下面我列出了Eclipse RCP需要的插件。

    將這些代碼解壓縮到一個空目錄里,然后導入到Source InsightProject里。     

    二、Eclipse啟動過程

    首先我們從Eclipse的啟動過程開始分析。

    1exe部分的引導

    eclipse.exeEclipse的啟動文件,是與平臺相關的可執行文件。它的功能比較簡單,主要是加載startup.jar文件,代碼在Eclipse源代碼的eclipse-sourceBuild-srcIncluded-3.3.1.1"plugins"org.eclipse.platform"launchersrc.zip,對應多個平臺。對于win32平臺,你可以直接運行win32目錄下的build.bat文件來編譯得到它(需要安裝C編譯器)。

    2java代碼部分的執行入口

    對于Eclipse 3.3.1.1版本來說,如果在eclipse目錄下沒有找到startup.jar,則直接執行org.eclipse.equinox.launcher.Main.main方法。

    當然我們可以在eclipse目錄下定制我們自己的啟動引導包startup.jar,現在Eclipse 3.3.1.1好像已經不建議這樣做了。如果有這個包,那么這個包將是java代碼的執行入口,你可以在命令行下運行java -jar startup.jar命令來啟動Eclipse。它的入口是org.eclipse.core.launcher.Main類,這個類最終執行的還是org.eclipse.equinox.launcher.Main.main方法。它對應的源代碼在org.eclipse.equinox.launcher目錄下的Main.java。關于此文件的定制詳細信息請查看eclipse-sourceBuild-srcIncluded-3.3.1.1"plugins"org.eclipse.platform"launchersrc.zip中的eclipse.c的注解部分。

    我們從main函數往后跟蹤,找到basicRun方法,這個是啟動的主要部分。

        protectedvoid basicRun(String[] args) throws Exception {

            System.getProperties().put("eclipse.startTime", Long.toString(System.currentTimeMillis())); //$NON-NLS-1$

            commands = args;

            String[] passThruArgs = processCommandLine(args);

           

            if (!debug)

               // debug can be specified as system property as well

               debug = System.getProperty(PROP_DEBUG) != null;

            setupVMProperties();     //設置VM屬性

            processConfiguration();   //讀取configuration/config.ini配置文件

           

            // need to ensure that getInstallLocation is called at least once to initialize the value.

            // Do this AFTER processing the configuration to allow the configuration to set

            // the install location. 

            getInstallLocation();

            // locate boot plugin (may return -dev mode variations)

            URL[] bootPath = getBootPath(bootLocation);

            

            //Set up the JNI bridge. We need to know the install location to find the shared library

            setupJNI(bootPath);

           

            //ensure minimum Java version, do this after JNI is set up so that we can write an error message

            //with exitdata if we fail.

            if (!checkVersion(System.getProperty("java.version"), System.getProperty(PROP_REQUIRED_JAVA_VERSION))) //$NON-NLS-1$

                return;

           

            setSecurityPolicy(bootPath); //設置執行權限

            // splash handling is done here, because the default case needs to know

            // the location of the boot plugin we are going to use

            handleSplash(bootPath);

            beforeFwkInvocation();

            invokeFramework(passThruArgs, bootPath);    //啟動Eclipse內核

        }

    posted @ 2007-12-22 16:33 Asktalk 閱讀(4905) | 評論 (3)編輯 收藏

    先列出這些開源項目,隨后對其實現過程深入分析。

    1,Hibernate Synchronizer Eclipse Plugin   最近更新在2006.04.26
          http://hibernatesynch.sourceforge.net/   
          源代碼::pserver:anonymous@hibernatesynch.cvs.sourceforge.net:/cvsroot/hibernatesynch   
          HibernateSynchronizer3   為新項目,支持Eclipse3
          HibernateSynchronizer     為舊項目,支持Eclipse2 

          本插件使用方法:http://dev2dev.bea.com.cn/bbsdoc/20060124187.html
         可以生成hibernate的所有配置文件和dao。基本流程是 hibernate.cfg.xml->xxx.hbm.xml->po and dao

    2,  SqlExplorer    最近更新 2007.09.08
         http://www.sqlexplorer.org/index.php
         http://sourceforge.net/projects/eclipsesql
         源代碼::pserver:anonymous@eclipsesql.cvs.sourceforge.net:/cvsroot/eclipsesql
         與myEclipse的數據庫管理工具相近。

    3,GmailClipse 一個Eclipse RCP 
         http://sourceforge.net/projects/gmclipse/
         源代碼::pserver:anonymous@gmclipse.cvs.sourceforge.net:/cvsroot/gmclipse    源代碼為空,沒有共享
         像hotmail一樣的郵件客戶端收發系統。其源代碼對于學習RCP有很大的幫助。

    4,  SpringIde    spring官方的IDE工具。
          源代碼:http://springide.org/project/browser/trunk

    5, Hibernate tools   hibernate官方IDE工具。
           官方介紹:http://www.hibernate.org/268.html 
           源代碼svn: http://anonhibernate.labs.jboss.com/branches/Branch_3_2/HibernateExt 

    6,   Html解析工具 HTML Parser
          官方網址:http://htmlparser.sourceforge.net/
         

         
         

    posted @ 2007-12-22 00:43 Asktalk 閱讀(1174) | 評論 (0)編輯 收藏

    有很多朋友雖然安裝好了mysql但卻不知如何使用它。在這篇文章中我們就從連接MYSQL、修改密碼、增加用戶等方面來學習一些MYSQL的常用命令。

    一、連接MYSQL。

    格式: mysql -h主機地址 -u用戶名 -p用戶密碼

    1、例1:連接到本機上的MYSQL。

    首先在打開DOS窗口,然后進入目錄 mysqlbin,再鍵入命令mysql -uroot -p,回車后提示你輸密碼,如果剛安裝好MYSQL,超級用戶root是沒有密碼的,故直接回車即可進入到MYSQL中了,MYSQL的提示符是:mysql>

    2、例2:連接到遠程主機上的MYSQL。假設遠程主機的IP為:110.110.110.110,用戶名為root,密碼為abcd123。則鍵入以下命令:

    mysql -h110.110.110.110 -uroot -pabcd123

    (注:u與root可以不用加空格,其它也一樣)

    3、退出MYSQL命令: exit (回車)

    二、修改密碼。

    格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼

    1、例1:給root加個密碼ab12。首先在DOS下進入目錄mysqlbin,然后鍵入以下命令

    mysqladmin -uroot -password ab12

    注:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了。

    2、例2:再將root的密碼改為djg345。

    mysqladmin -uroot -pab12 password djg345

    三、增加新用戶。
    (注意:和上面不同,下面的因為是MYSQL環境中的命令,所以后面都帶一個分號作為命令結束符)

    格式:grant select on 數據庫.*  to  用戶名@登錄主機  identified by  \"密碼\"

    例1、增加一個用戶test1密碼為abc,讓他可以在任何主機上登錄,并對所有數據庫有查詢、插入、修改、刪除的權限。首先用以root用戶連入MYSQL,然后鍵入以下命令:

    grant select,insert,update,delete on *.* to test1@\"%\" Identified by \"abc\";

    但例1增加的用戶是十分危險的,你想如某個人知道test1的密碼,那么他就可以在internet上的任何一臺電腦上登錄你的mysql數據庫并對你的數據可以為所欲為了,解決辦法見例2。

    例2、增加一個用戶test2密碼為abc,讓他只可以在localhost上登錄,并可以對數據庫mydb進行查詢、插入、修改、刪除的操作(localhost指本地主機,即MYSQL數據庫所在的那臺主機),這樣用戶即使用知道test2的密碼,他也無法從internet上直接訪問數據庫,只能通過MYSQL主機上的web頁來訪問了。

    grant select,insert,update,delete on mydb.* to test2@localhost identified by \"abc\";

    如果你不想test2有密碼,可以再打一個命令將密碼消掉。

    grant select,insert,update,delete on mydb.* to test2@localhost identified by \"\";



    在上篇我們講了登錄、增加用戶、密碼更改等問題。下篇我們來看看MYSQL中有關數據庫方面的操作。注意:你必須首先登錄到MYSQL中,以下操作都是在MYSQL的提示符下進行的,而且每個命令以分號結束。

    一、操作技巧

    1、如果你打命令時,回車后發現忘記加分號,你無須重打一遍命令,只要打個分號回車就可以了。也就是說你可以把一個完整的命令分成幾行來打,完后用分號作結束標志就OK。

    2、你可以使用光標上下鍵調出以前的命令。但以前我用過的一個MYSQL舊版本不支持。我現在用的是mysql-3.23.27-beta-win。

    二、顯示命令

    1、顯示數據庫列表。

    show databases;

    剛開始時才兩個數據庫:mysql和test。mysql庫很重要它里面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。

    2、顯示庫中的數據表:

    use mysql; //打開庫,學過FOXBASE的一定不會陌生吧

    show tables;

    3、顯示數據表的結構:

    describe 表名;

    4、建庫:

    create database 庫名;

    5、建表:

    use 庫名;

    create table 表名 (字段設定列表);

    6、刪庫和刪表:

    drop database 庫名;

    drop table 表名;

    7、將表中記錄清空:

    delete from 表名;

    8、顯示表中的記錄:

    select * from 表名;

    從文本文件執行SQL語句

    三、一個建庫和建表以及插入數據的實例

    drop database if exists school; //如果存在SCHOOL則刪除 
    create database school; //建立庫SCHOOL
    use school; //打開庫SCHOOL
    create table teacher //建立表TEACHER
    (
    id int(3) auto_increment not null primary key,
    name char(10) not null,
    address varchar(50) default '深圳',
    year date
    ); //建表結束
    //以下為插入字段
    insert into teacher values('','glchengang','深圳一中','1976-10-10');
    insert into teacher values('','jack','深圳一中','1975-12-23');

    注:在建表中(1)將ID設為長度為3的數字字段:int(3)并讓它每個記錄自動加一:auto_increment并不能為空:not null而且讓他成為主字段primary key(2)將NAME設為長度為10的字符字段(3)將ADDRESS設為長度50的字符字段,而且缺省值為深圳。varchar和char有什么區別呢,只有等以后的文章再說了。(4)將YEAR設為日期字段。

    如果你在mysql提示符鍵入上面的命令也可以,但不方便調試。你可以將以上命令原樣寫入一個文本文件中假設為school.sql,然后復制到c:\\下,并在DOS狀態進入目錄\\mysql\\bin,然后鍵入以下命令:

    mysql -uroot -p密碼 < c:\\school.sql

    如果成功,空出一行無任何顯示;如有錯誤,會有提示。(以上命令已經調試,你只要將//的注釋去掉即可使用)。

    四、將文本數據轉到數據庫中

    1、文本數據應符合的格式:字段數據之間用tab鍵隔開,null值用\\n來代替.

    例:

    3 rose 深圳二中 1976-10-10

    4 mike 深圳一中 1975-12-23

    2、數據傳入命令 load data local infile \"文件名\" into table 表名;

    注意:你最好將文件復制到\\mysql\\bin目錄下,并且要先用use命令打表所在的庫。

    五、備份數據庫:(命令在DOS的\\mysql\\bin目錄下執行)

    mysqldump --opt school>school.bbb

    注釋:將數據庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。

    后記:其實MYSQL的對數據庫的操作與其它的SQL類數據庫大同小異,您最好找本將SQL的書看看。我在這里只介紹一些基本的,其實我也就只懂這些了,呵呵。最好的MYSQL教程還是"晏子"譯的"MYSQL中文參考手冊"不僅免費每個相關網站都有下載,而且它是最權威的。可惜不是象\"PHP4中文手冊\"那樣是chm的格式,在查找函數命令的時候不太方便。

    posted @ 2007-12-21 01:50 Asktalk 閱讀(878) | 評論 (0)編輯 收藏

    InnoDB和MyISAM是在使用MySQL最常用的兩個表類型,各有優缺點,視具體應用而定。下面是已知的兩者之間的差別,僅供參考。

    innodb
    InnoDB 給 MySQL 提供了具有事務(commit)、回滾(rollback)和崩潰修復能力(crash recovery capabilities)的事務安全(transaction-safe (ACID compliant))型表。InnoDB 提供了行鎖(locking on row level),提供與 Oracle 類型一致的不加鎖讀取(non-locking read in SELECTs)。這些特性均提高了多用戶并發操作的性能表現。在InnoDB表中不需要擴大鎖定(lock escalation),因為 InnoDB 的列鎖定(row level locks)適宜非常小的空間。InnoDB 是 MySQL 上第一個提供外鍵約束(FOREIGN KEY constraints)的表引擎。

    InnoDB 的設計目標是處理大容量數據庫系統,它的 CPU 利用率是其它基于磁盤的關系數據庫引擎所不能比的。在技術上,InnoDB 是一套放在 MySQL 后臺的完整數據庫系統,InnoDB 在主內存中建立其專用的緩沖池用于高速緩沖數據和索引。 InnoDB 把數據和索引存放在表空間里,可能包含多個文件,這與其它的不一樣,舉例來說,在 MyISAM 中,表被存放在單獨的文件中。InnoDB 表的大小只受限于操作系統的文件大小,一般為 2 GB。

    在 http://www.innodb.com/ 上可以找到 InnoDB 最新的信息。InnoDB 手冊的最新版本總是被放置在那里,并且在那里可以得到 InnoDB 的商業許可(order commercial licenses)以及支持。

    InnoDB 現在(2001年十月)在一些大的需高性能的數據庫站點上被使用。著名的 Internet 新聞站點 Slashdot.org 就是使用的 InnoDB。 Mytrix, Inc. 在 InnoDB 表上存儲了超過 1 TB 的數據,而且另外的一個站點在 InnoDB 表上處理著平均每秒 800 次的插入/更新的負載。

    MyISAM
    MyISAM 是MySQL缺省存貯引擎 .

    每張MyISAM 桌被存放在盤在三個文件 。frm 文件存放表格定義。 數據文件是MYD (MYData) 。 索引文件是MYI (MYIndex) 引伸。

    以下是一些細節和具體實現的差別:

    1.InnoDB不支持FULLTEXT類型的索引。
    2.InnoDB 中不保存表的具體行數,也就是說,執行select count(*) from table時,InnoDB要掃描一遍整個表來計算有多少行,但是MyISAM只要簡單的讀出保存好的行數即可。注意的是,當count(*)語句包含 where條件時,兩種表的操作是一樣的。
    3.對于AUTO_INCREMENT類型的字段,InnoDB中必須包含只有該字段的索引,但是在MyISAM表中,可以和其他字段一起建立聯合索引。
    4.DELETE FROM table時,InnoDB不會重新建立表,而是一行一行的刪除。
    5.LOAD TABLE FROM MASTER操作對InnoDB是不起作用的,解決方法是首先把InnoDB表改成MyISAM表,導入數據后再改成InnoDB表,但是對于使用的額外的InnoDB特性(例如外鍵)的表不適用。

    另外,InnoDB表的行鎖也不是絕對的,如果在執行一個SQL語句時MySQL不能確定要掃描的范圍,InnoDB表同樣會鎖全表,例如update table set num=1 where name like “%aaa%”

    任何一種表都不是萬能的,只用恰當的針對業務類型來選擇合適的表類型,才能最大的發揮MySQL的性能優勢。

     

     

    posted @ 2007-12-21 01:09 Asktalk 閱讀(2898) | 評論 (0)編輯 收藏

     

    1, 下載

    https://glassfish.dev.java.net/downloads/v2-b33.html選擇下載版本,這里下載的是windows版.

    Solaris SPARC Platform

    glassfish-installer-v2-b33.jar, size 70M

    Solaris x86 Platform

    glassfish-installer-v2-b33-sunos_x86.jar size 67M

    Windows Platform

    glassfish-installer-v2-b33-winnt.jar size 63M

    Linux Platform

    glassfish-installer-v2-b33-linux.jar size 64M

    MacOS Platform

    glassfish-installer-v2-b33-darwin.jar size 67M

     

    2,設置Java和Ant環境變量

    系統需要安裝J2SE 5.0

    3,執行安裝

    java -Xmx256m -jar glassfish-installer-v2-b33.jar

    直接點擊運行glassfish-installer-v2-b33.jar無法安裝,必須在cmd命令環境下執行上述命令.

    執行完畢后在glassfish-installer-v2-b33.jar的同級目錄會出現一個glassfish文件夾,所有文件都已經解壓到這個目錄了,記著,只是解壓還沒有安裝哪!

     

    下面cd glassfish ,切換到glassfish目錄下,運行ant腳本setup.xml,執行真正的安裝過程.
    運行 ant -f setup.xml

    4,運行domain.

    大家都用過IBM Websphere 和BEA Weblogic,domain相當于服務器的一個具體實例,所有配置參數都在這里面.在步驟3中已經為我們生成了一個domain,在glassfish\domains\domain1目錄中.

    切換到cd glassfish/bin目錄下

    執行asadmin start -domain domain1 ,運行domain1.結果如下

     

    5,瀏覽控制臺

    打開瀏覽器,輸入 http://192.168.1.3:8080/ 看到如下圖:

     

     

    控制臺首頁: http://192.168.1.3:4848/
    user name: admin
    password: adminadmin

    控制臺首頁如下:

     

     

    posted @ 2007-03-25 16:48 Asktalk 閱讀(1157) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 久久青草免费91观看| 国产精品酒店视频免费看| 亚洲偷偷自拍高清| 亚洲精品成人在线| 日日麻批免费40分钟无码| 亚洲欧洲专线一区| 亚洲色偷偷偷鲁综合| 妞干网免费观看视频| 好男人资源在线WWW免费| 亚洲精品自在线拍| 国产成人高清亚洲| 青青视频观看免费99| 久久久久国色AV免费观看| 亚洲中文字幕AV在天堂| 亚洲中文久久精品无码| 女人18一级毛片免费观看| a级片在线免费看| 小说专区亚洲春色校园| 亚洲精品视频在线| 亚洲第一黄片大全| 最近最好的中文字幕2019免费| 国产一二三四区乱码免费| 国产精品亚洲一区二区麻豆| 亚洲va久久久噜噜噜久久| 日韩视频免费在线| 97国产在线公开免费观看| 人人爽人人爽人人片A免费| 亚洲宅男精品一区在线观看| 亚洲日产韩国一二三四区| 国产99视频精品免费视频7| 69式互添免费视频| 免费人成在线观看视频高潮| 国产综合成人亚洲区| 亚洲剧情在线观看| 亚洲国产精品久久| 亚洲精品少妇30p| 亚洲精品国产V片在线观看| 成年人免费网站在线观看| 91久久青青草原线免费| 免费网站观看WWW在线观看| 一个人看的www免费高清|