隨筆-4  評論-0  文章-0  trackbacks-0
            2008年6月12日
           轉摘 http://www.cnblogs.com/jocc/archive/2007/11/25/971511.html
          AndroidManifest.xml是每個android程序中必須的文件。它位于application的根目錄,描述了package中的全局數據,包括了package中暴露的組件(activities, services, 等等),他們各自的實現類,各種能被處理的數據和啟動位置。

              此文件一個重要的地方就是它所包含的intent-filters。這些filters描述了activity啟動的位置和時間。每當一個activity(或者操作系統)要執行一個操作,例如:打開網頁或聯系簿時,它創建出一個intent的對象。它能承載一些信息描述了你想做什么,你想處理什么數據,數據的類型,和一些其他信息。Android比較了intent對象中和每個application所暴露的intent-filter中的信息,來找到最合適的activity來處理調用者所指定的數據和操作。關于intent的更多信息請訪問Intent參考頁面。

              除了能聲明你程序中的Activities, Content Providers, Services, 和Intent Receivers,你還能指定permissions和instrumentation(安全控制和測試)在AndroidManifest.xml文件中。請見AndroidManifest標記和屬性的參考。

              這是一個簡單的AndroidManifest.xml。

          <?xml version="1.0" encoding="utf-8"?>

          <manifest xmlns:android="http://schemas.android.com/apk/res/android"

                  package="com.my_domain.app.helloactivity">

                  

              <application android:label="@string/app_name">

              

                  <activity class=".HelloActivity">

                      <intent-filter>

                          <action android:value="android.intent.action.MAIN"/>

                          <category android:value="android.intent.category.LAUNCHER"/>

                      </intent-filter>

                  </activity>

                  

              </application>

              

          </manifest>

          值得一提一些常用之處:

          • 幾乎所有的AndroidManifest.xml(以及許多其他Android的xml的文件)在第一個元素中包含了命名空間的聲明xmlns:android="http://schemas.android.com/apk/res/android"。這樣使得Android中各種標準屬性能在文件中使用,提供了大部分元素中的數據。
          • 大部分manifests包含了單個<application>的元素,它定義了所有的application級別組件和屬性,并能在package中使用。
          • 任何被用戶看作頂層應用程序,并能被程序啟動器所用的package,需要包含至少一個Activity組件來支持MAIN操作和LAUNCHER種類,如上述代碼中所見。

          這里是AndroidManifest.xml文件結構的一個詳細的列表,描述了所有能被使用的標記。

          manifest

              根節點,描述了package中所有的內容。在它之下能放置:

              uses-permission

                  請求你的package正常運作所需賦予的安全許可。見Security Model來獲得許可的更多的信息。一個manifest能包含零個或更多此元素。

              permission

                  聲明了安全許可來限制哪些程序能你package中的組件和功能。見Security Model來獲得許可的更多的信息。一個manifest能包含零個或更多此元素。

              instrumentation

                  聲明了用來測試此package或其他package指令組件的代碼。見Instrumentation來獲得許可的更多的信息。一個manifest能包含零個或更多此元素。

              application

                  包含package中application級別組件聲明的根節點。此元素也可包含application中全局和默認的屬性,如標簽,icon,主題,必要的權限,等等。一個manifest能包含零個或一個此元素(不允許多余一個)。在它之下能放置零個或更多下列組件聲明:

                  activity

                      Activity是用來與用戶交互的主要工具。當用戶打開一個應用程序的初始頁面時一個activity,大部分被使用到的其他頁面也由不同的activity所實現并聲明在另外的activity標記中。

                      注意:每一個activity必須要一個<activity>標記對應,無論它給外部使用或是只用于自己的package中。如果一個activity沒有對應的標記,你將不能運行它。

                      另外,為了支持運行時遲查找你的activity,你能包含一個或多個<intent-filter>元素來描述你activity所支持的操作:

                      

                      intent-filter

                          聲明了指定的一組組件支持的Intent值,從而形成了IntentFilter。除了能在此元素下指定不同類型的值,屬性也能放在這里來描述一個操作所需的唯一的標簽,icon和其它信息。

                          action

                              組件支持的Intent action

                          category

                              組件支持的Intent Category.

                          type

                              組件支持的Intent data MIME type.

                          schema

                              組件支持的Intent data URI scheme.

                          authority

                              組件支持的Intent data URI authority.

                          path

                              組件支持的Intent data URI path.

                  receiver

                      IntentReceiver能使的application獲得數據的改變或者發生的操作,即使它當前不在運行。利用activity標記,你能選擇地包含一個或多個receiver所支持的<intent-filter>元素;

                  service

                      Service是能在后臺運行任意時間的組件。利用activity標記,你能選擇地包含一個或多個receiver所支持的<intent-filter>元素;

                  provider

                      ContentProvider是用來管理持久化數據并發布給其他應用程序使用的組件。

          posted @ 2008-06-12 14:08 火煉子 閱讀(471) | 評論 (0)編輯 收藏
            2008年5月21日

          1 四種方式配置Configuration:
          傳遞一個java.util.Properties給Configuration.setProperties();
          放置hibernate.properties在classpath路徑下;
          設置System屬性,java -D property=value;
          在hibernate.cfg.xml放置<property>元素。

          Configuration cfg = new Configuration()
            .addClass()
            .addProperty(


          2 獲取SessionFactory:如果有多個database, 可以獲取多個。

          SessionFactory sessions = cfg.buildSessionFactory();


          3 JDBC connections

          Session session = sessions.openSession();

          為了獲取connection,我們需要傳遞一些屬性給Hiberante,以下的屬性定義在org.hibernate.cfg.Environment.
          Hibernate通過java.sql.DriverManager獲取connection.
          這些屬性包括:
          hibernate.connection.driver_class
          hibernate.connection.url
          hibernate.connection.username
          hibernate.connection.password
          hibernate.connection.pool_size
          Hibernate Datasource 屬性:
          hibernate.connection.datasource
          hibernate.jndi.url
          hibernate.jndi.class
          hibernate.connection.username
          hibernate.connection.password

          4 可選擇的hibernate 屬性
          hibernate.dialect: 常用的有:org.hibernate.dialect.MySQLDialect, OracleDialect,Oracle9Dialect,SQLServerDialect
          hibernate.show_sql
          ...

          5 Hibernate 日志
          Hibernate使用Apache commons-logging.

          6 XML配置文件
          ...
          <hibernate-configuration>
           <session-factory name"">
            <property>
            ...
           </session-factory>
          </hibernate-configuration>

          SessionFactory sf = new Configuration()
            .configure(
          "xxx.xml"//可以缺省xxx.xml
            .buildSessionFactory();

           

          posted @ 2008-05-21 17:44 火煉子 閱讀(2266) | 評論 (0)編輯 收藏
          僅列出標題  
          主站蜘蛛池模板: 剑河县| 新邵县| 来凤县| 安国市| 太康县| 通渭县| 如东县| 洞头县| 合水县| 淮安市| 唐河县| 柞水县| 波密县| 邯郸市| 呼伦贝尔市| 杭锦后旗| 保定市| 柳林县| 西吉县| 太仆寺旗| 台南县| 永福县| 宣汉县| 旌德县| 贡山| 黄龙县| 吴川市| 绍兴县| 沧州市| 资兴市| 永吉县| 京山县| 彰武县| 汨罗市| 施甸县| 道孚县| 尖扎县| 宁城县| 霍山县| 永安市| 绥芬河市|