JavaOne 2012:JavaOne技術主題演講

Mark Reinhold從JavaOne 2012技術主題演講開始。 他說,今年的版本將有所不同,因為它將使用大致相同的示例來說明Java的各個方面,而不是對Java的每個組件進行單獨的單獨介紹。 JavaFX團隊的Richard Bair和Jasper Potts (并與FXExperience相關聯)介紹了這個示例應用程序,它是一個日程表構建器,帶有來自今年JavaOne的演示文稿和演講者數據。

作為示例應用程序介紹的一部分,演示者付出了額外的努力,指出Oracle正在為MacOS發行JVM,而示例中正在使用OpenJDK。 他們還表示該示例也可以在Linux上運行。 他們為此應用程序使用了Java SE 7和JavaFX 2,并討論了SceneBuilder用于構建JavaFX應用程序的可用性。 他們演示了在NetBeans中使用SceneBuilder生成基于JavaFX的登錄頁面。

提到的其他有趣的JavaFX改進包括添加了ComboBox (盡管還沒有Date Picker), 與SWT的互操作性以及JavaFX Packager的可用性。 還提到JavaFX從一開始就進行了架構和設計,以允許將主UI線程與后臺線程分開,從而使其能夠利用多個CPU。

Bair顯示了實現JavaFX應用程序以充分利用當今的多個線程所需的相對冗長的代碼。 Brian Goetz上臺介紹了Lambda項目和Java語言的更改如何實現“更好的并行庫”。 Goetz表示,幫助開發人員的最簡單方法是為他們提供更好的庫,但是當該語言的局限性導致無法編寫庫來完全滿足需要時,必須在某種程度上擴展該語言。

格茨表示,內部類的目標與Lambda項目相同,但內部類“還有很多其他負擔”。 Goetz補充說,可能“確實不需要對集合執行批量操作,但這種方式會更好。” Goetz隨后展示了一個簡單但極富說明性的示例,說明了Lambda項目如何更改我們如何處理集合中的批量數據更改。 他的幻燈片顯示,今天使用了J2SE 5增強的for循環 ,但可以通過forEach方法(通過新的默認實現接口方法添加到所有集合中)和類似Groovy的關閉語法( -> )來完成。

格茨的下一張幻燈片更加令人印象深刻。 他展示了在迭代一個集合時似乎正在執行的三個操作。 但是,他指出,所有這些操作都將在集合上一次通過,而只需一次遍歷該集合即可。 我所能想到的就是,“哇!” 格茨(Goetz)也有一張幻燈片,展示了對集合的computeIfAbsent操作。 最后,他說還有很多工作要做,并引用了兩個URL與Lambda項目一起使用: http : //openjdk.java.net/projects/lambda/和http://jdk8.java.net/lambda/ 。

關于傳統Java環境和嵌入式環境之間的區別,進行了一些有趣的討論。 Raspberry Pi受到了多次重要的提及。

Reinhold開始談論模塊化和Jigsaw項目,并展示了“意大利面條圖的一點點,它比我們開始的地方更干凈,這是整個意大利面條圖”。 他以此為起點來討論將Project Jigsaw從Java 8引導到Java 9的有爭議的決定 。

Reinhold的幻燈片重點介紹了Java 8中的內容,例如Project Lambda,Compact Profiles,Type Annotations,Project Nashorn和新的Date / Time API。 Reinhold補充說,“所有這些工作都在OpenJDK中完成”,并且“所有規范工作都在JCP中完成”。

在主題演講預定結束的時間(當地時間晚上7點)開始Arun Gupta的演講是一項令人羨慕的任務。 他談到了Java EE,并展示了一張名為“ Java EE的過去,現在和將來”的幻燈片。 這張幻燈片展示了自1999年12月J2EE 1.2的十個規范以來Java EE如何添加功能。Gupta的另一張幻燈片談到了“ Java EE 7 Revised Scope”及其如何提高生產率(通過更少的樣板代碼,更豐富的功能和更多默認值)。并添加了HTML5支持(WebSocket,JSON和HTML5表單)。

Gupta的另一張幻燈片名為“ Java EE 7 –候選JSR”,其中列出了Java EE 7的所有新JSS和已修改的JSR。 然后,他將個別幻燈片集中在其中一些幻燈片上。 他的“ RESTful Web服務2.0的Java API”幻燈片討論了使用客戶端API的標準化方法。 Gupta的幻燈片顯示了今天是如何完成的(沒有庫),并將其與下一個客戶端API進行了比較,展示了這將變得多么簡單。

Gupta對JMS 2.0的覆蓋包括對JMS中較少冗長性的討論,這要歸功于Java編程語言中的注釋和其他新功能。 他提到,所需的資源適配器將使將來更容易“混合和匹配” JMS提供程序。 Gupta展示了一張包含小字體代碼的幻燈片(“此代碼不可讀”),演示了如何使用JMS 1.1發送消息。 隨后是一張幻燈片,其中顯示了利用注釋和資源注入發送消息的JMS 2.0中明顯更少(更清晰)的代碼。

Gupta對要添加到Java EE的JSON支持的內容包括項目符號“用于解析,生成,轉換,查詢等JSON的API”。 然后,他展示了一些幻燈片,其中包含示例JSON格式的數據以及使用構建器樣式訪問JSON的示例代碼。 感覺很像Groovy的JSON處理 。

WebSocket 1.0的Java API將允許使用注釋輕松地與WebSocket一起使用。 在介紹Bean Validation 1.1時,Gupta指出并非所有新采用的JSR都由Oracle領導。 他展示了在方法參數上使用內置的@NotNull批注,還展示了人們將能夠編寫可類似地應用于方法參數的自定義約束。

Gupta強調了Java EE的其他改進,例如JPA 2.1,EJB 3.2等。這些JSR中的大多數都有早期的公開草案。 GlassFish 4是Java EE 7的參考實現,并且已經包含WebSocket,JSON,JMS 2等。

古普塔的幻燈片之一是《 阿凡達》 。 演示了“憤怒的競標”示例應用程序。 它基于Avatar并在GlassFish上運行,并使用標準的Java EE 7組件。

Gupta推出了針對NetBeans的Project Easel。 有人提到NetBeans 7.3 Beta將在本周晚些時候發布,并將包括對HTML5的支持,這是一種新的項目類型。 顯示的示例使用JQuery和CSS。 基于NetBeans的示例通過Google Chrome瀏覽器與WebKit進行了通信(它也可與JavaFX嵌入式瀏覽器一起使用),但最終有望與任何基于WebKit的瀏覽器或設備一起使用。 演示者展示了如何在Google Chrome瀏覽器中更新他對NetBeans中HTML5代碼(HTML,JavaScript和CSS)所做的更改。 它給人留下了深刻的印象,讓我希望我有足夠的時間接受邀請以提供NetBeans 7.3的早期測試。 NetBeans將能夠生成RESTful客戶端,支持JQuery并提供Project Nashorn編輯器。 可在http://netbeans.org/kb/docs/web/html5-gettingstarted-screencast.html上找到與此演示類似的演示。

與戰略主題演講一樣 ,該技術主題演講在共濟會禮堂舉行 。 我在今晚的主題演講中注意到的有趣趨勢之一是,來自三個不同組織的至少三個不同的人提到尋找熟練的Java開發人員,如果他們對工作機會感興趣,應該與他們聯系。

參考: JavaOne 2012: JCG合作伙伴 Dustin Marx在Inspired by Actual Events博客上的JavaOne技術主題演講 。


翻譯自: https://www.javacodegeeks.com/2012/10/javaone-2012-javaone-technical-keynote.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/371592.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/371592.shtml
英文地址,請注明出處:http://en.pswp.cn/news/371592.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C語言結構體及函數傳遞數組參數演示樣例

C語言結構體及函數傳遞數組參數演示樣例 注:makeSphere()函數返回Sphere結構體,main函數中。調用makeSphere()函數,傳遞的第一個參數為數組,傳遞的數組作為指針。posted on 2017-07-30 18:42 mthoutai 閱讀(...) 評論(...) 編輯 收…

Maven內部版本號插件–用法示例

假設我們需要向一些工件(jar,war等)添加內部版本號。 在這里,我想演示buildnumber-maven-plugin的用法。 這篇文章基于: http://mojo.codehaus.org/buildnumber-maven-plugin/usage.html http://www.site.lalitbhatt…

Python魔法方法(magic method)細解幾個常用魔法方法(下)

接上文,再介紹最后幾個常用的魔法方法。 關于__dict__: 先上個例子: class Test(object):fly Truedef __init__(self, age):self.age age __dict__魔法方法可以被稱為系統,他是存儲各分層屬性的魔法方法。__dict__中,鍵為屬性名…

AIX下RAC搭建 Oracle10G(六)dbca建庫

AIX下RAC搭建系列 AIX下RAC搭建 Oracle10G(六)dbca建庫 環境 節點 節點1 節點2 小機型號 IBM P-series 630 IBM P-series 630 主機名 AIX203 AIX204 交換機 SAN光纖交換機 存儲 SAN T3存儲 大綱流程例如以下: 第一部分&#xff1…

php string slice,substring()與str.slice()區別

當接收的參數是負數時,slice會將它字符串的長度與對應的負數相加,結果作為參數;substr則僅僅是將第一個參數與字符串長度相加后的結果作為第一個參數;substring則干脆將負參數都直接轉換為0。測試代碼如下:var test h…

JavaOne 2012:掌握Java部署

在吃完一次JavaClass 2012午餐會的意大利經典組合后,我前往希爾頓帝國宴會廳B觀看了演示“掌握Java部署”。 來自Oracle的發言人是Mark Howe和Igor Nekrestyano Howe表示,部署團隊的目標是幫助Java開發人員將其應用程序部署到所選平臺。 他首先討論了“功…

數組刪除奇數編號的數據求最后的元素

//abcd...s 這19個字符循環106次成一個長度2014的字符串&#xff0c;然后刪除第奇數個&#xff0c;得到小串&#xff0c;再刪&#xff0c;最后的字符是&#xff1f; #define _CRT_SECURE_NO_DEPRECATE #include<stdio.h> #include<windows.h> #include<string.…

php 提高吞吐量,如何提高網站的吞吐量

吞吐量定義百科吞吐量是指對網絡、設備、端口、虛電路或其他設施&#xff0c;單位時間內成功地傳送數據的數量(以比特、字節、分組等測量)。以上的定義比較寬泛&#xff0c;定義到網站或者接口的吞吐量是這樣的&#xff1a;吞吐量是指系統在單位時間內處理請求的數量。這里有一…

ubuntu下如何查找某個文件的路徑

1.whereis 文件名 特點:快速,但是是模糊查找,例如 找 #whereis mysql 它會把mysql,mysql.ini,mysql.*所在的目錄都找出來. 2.find / -name 文件名 特點:準確,但速度慢,消耗資源大,例如我想找到PHP.ini的準確位置,就需要用 #find / -name php.ini 3.locate 文件名 強力推薦的方…

事件的學習

1.鼠標單擊事件( onclick &#xff09;: onclick是鼠標單擊事件&#xff0c;當在網頁上單擊鼠標時&#xff0c;就會發生該事件。同時onclick事件調用的程序塊就會被執行&#xff0c;通常與按鈕一起使用。 <!DOCTYPE HTML> <html> <head> <meta http-equiv…

使用您自己的規則在Eclipse中自定義PMD

PMD是非常好的Java代碼掃描程序&#xff0c;可幫助您避免潛在的編程問題。 它可以輕松擴展以滿足您的需求&#xff0c;并且本文將為您帶來與JPA的Enumerated注釋用法相關的自定義PMD規則的簡單示例。 在繼續閱讀之前&#xff0c;您應該檢查我以前的文章之一-JPA-Enumerated def…

切換oracle用戶impdp,Oracle 12c pdb使用expdp/impdp導入導出

12c推出了可插拔數據庫&#xff0c;在一個容器cdb中以多租戶的形式同時存在多個數據庫pdb。在為pdb做數據泵導入導出時和傳統的數據庫有少許不同。1&#xff0c;需要為pdb添加tansnames2&#xff0c;導入導出時需要在userid參數內指定其tansnames的值&#xff0c;比如 useridus…

搭建mysql集群,使用Percona XtraDB Cluster搭建

Percona XtraDB Cluster提供的特性有&#xff1a;1.同步復制&#xff0c;事務要么在所有節點提交或不提交。2.多主復制&#xff0c;可以在任意節點進行寫操作。3.在從服務器上并行應用事件&#xff0c;真正意義上的并行復制。4.節點自動配置。5.數據一致性&#xff0c;不再是異…

使用NoSQL實現實體服務–第4部分:Java EE

現在&#xff0c;我已經準備好了框架式的合同優先型Web服務&#xff0c;并使用Ektorp和CouchDB創建了數據訪問層 &#xff0c;是時候將它們連接到一個可以正常工作的實體服務中了 。 為此&#xff0c;我將使用Java EE和Glassfish 3.1。 值得注意的是&#xff0c;對于他的那種R&…

yii2之DetailView小部件

DetailView小部件用于展示單條數據記錄&#xff0c;可配置屬性很少&#xff0c;使用也很簡單&#xff0c;直接貼代碼&#xff0c;一看就懂&#xff01; yii小部件數據小部件DetailView的使用示例&#xff1a; <? DetailView::widget([model > $user,//模型對象&#xff…

克隆安裝oracle,Oracle 之 Cloning $oracle_home (克隆安裝oracle軟件)

用途&#xff1a;Cloning an Oracle Home &#xff0c; 可以免去多臺機器重復安裝oracle軟件1、停止相關進程[rootnode1 bin]# ./crsctl stop cluster -all2、打包 dbhome_1 目錄[rootnode1 11.2.0]# cd /u01/app/oracle/product/11.2.0/[rootnode1 11.2.0]# tar -zcvpf db_1.b…

gitlab的安裝和基本維護

基本介紹 GitLab是一個自托管的Git項目倉庫&#xff0c;可以自己搭建個人代碼管理的倉庫&#xff0c;功能與github類似。 安裝 操作系統&#xff1a;CentOS6.5 gitlab官網下載安裝地址&#xff1a;https://about.gitlab.com/downloads/#centos6 1.安裝依賴的包 yum install cur…

Spring配置文件和Java配置

我的上一個博客介紹了Spring 3.1的配置文件&#xff0c;并解釋了使用它們的業務案例&#xff0c;并演示了它們在Spring XML配置文件中的用法。 但是&#xff0c;似乎很多開發人員更喜歡使用Spring的基于Java的應用程序配置&#xff0c;因此Spring設計了一種使用帶有現有Configu…

php 刪除單個文件大小,php刪除指定大小的jpg文件

function actionZmdel(){//set_time_limit(0);$dir dirname(dirname(dirname(dirname(__FILE__))))./2012jxgwyimg;$dirarr scandir($dir);echo 正在刪除...;foreach($dirarr as $subdir){if($subdir ! . && $subdir ! ..){$path $dir./.$subdir;$files glob($path…

2017寒假零基礎學習Python系列之函數之 函數之定義可變參數

若想讓函數接受任意個參數&#xff0c;就可以定義一個可變的參數&#xff1a; def fn(*args): print args fn() >>>() fn(1,2,5,6) >>>(1,2,5,6) 原理是Python解釋器把傳入的一組參數封裝在一個tuple傳遞給可變參數&#xff0c;因此在函數內部&#xff0c;直…