發表文章

[JAVA] 遇到 java.lang.OutOfMemoryError thrown from the UncaughtException... 問題

圖片
問題:在使用Eclipse寫JAVA時使用匯入Excel檔時,遇到會出現「java.lang.OutOfMemoryError thrown from the UncaughtException..」、「http-bio-8080"-exec」等等的異常
環境:Tomcat7、JAVA7

解決方式:後來把記憶體加大,就沒發生了...
修正方式為:
        /opt/eclipes/eclipes.ini
      增加
-Xms128m
-Xmx1024m
-XX:PermSize=128m
-XX:MaxPermSize=1024m
    加大記憶體,說明:
-Xms (最小值 / 初始值)
-Xmx (最大值) 有些教學是說可以在 eclipse 裡面設定,但我找不到可以設定的地方,因此就直接動 ini 檔囉~

參考網站:https://www.cnblogs.com/qmfsun/p/4205256.html

[Linux] 看懂 Linux Memory Usage 記憶體使用率

圖片
欄位說明:
a = 總記憶體大小 ( a = b + c / a = g + h )
b = 配給 buffers 與 cache 的記憶體大小(包含未用的 buffers 與 cache)
c = 剩下的記憶體大小
e = 配給 buffers 但未用的記憶體大小
f = 配給 cache 但未用的記憶體大小
g = buffers 與 cache 被使用掉的記憶體大小,也就是實際被應用程式用走的 ( g = b – e – f )
h = 那這個就是實際剩下的記憶體大小 ( h = c + e + f )
buffer 與 cache 的區別:
A buffer is something that has yet to be "written" to disk.
A cache is something that has been "read" from the disk and stored for later use.

原文出處:https://ssorc.tw/599 (還有很多說明解釋)

[Mac] 使用 Oracle Database Express Edition 11g Release 2 資料庫

圖片
在 Oracle Database Express Edition 11g Release 2



並沒有提供 Mac 的安裝檔,使用者會需要安裝個 VirtualBox 安裝 Windows 或 Linux 來進行使用~

再利用 Port 口映射的方式,讓 Mac 上開發的程式,可以連結本機的 Port 就可使用~
設定方式如下:







補充說明:
直接取得 VirtualBox 虛擬機的IP
#!/bin/bash for f in $(VBoxManage list runningvms | awk -F\" '{print $2}'); do echo "$f:" VBoxManage guestproperty enumerate "$f" | grep IP done

[MAC] MacBook Air 2012 手動換硬碟

圖片
早期使用Macbook 閒置的 SD 卡來當硬碟擴充
【Baseqi】Macbook PRO/AIR/Retina 13,15鋁合金版microSD神隱轉接卡
http://www.baseqi.com/
但效果不好,時常會發生讀不到卡片的情況發生...
因為MAC使用的SSD腳位有客製化,所以市面上一般的 M.2 SSD 根本無法使用~想手動換只能考慮創創見為了MAC出的SSD 可以選擇
“創見JetDrive 系列 SSD 升級套件Macbook Air”


但價位實在太高...是M.2 SSD 的2 倍,讓我遲遲無法下手
因此上網做了不少功課,發現有掏寶跟Amazon有賣所謂的轉卡,決定手動來替 MacBook Air 2012 手動換硬碟啦~~

相關步驟如下:

1. 準備工具M.2 2280 SSD (準備了 Kingston 480G)
PCHome 購買M.2 2280 轉 MacBook Air 2012 SSD 的轉接卡MacBook Air 2012 SSD 轉 SATA  的轉接卡P5 跟 T5 的螺絲起子(重要!!不然外殼跟硬碟就無法拆下來了)
外殼的螺絲起子是跟此商家購買(之前買了個便宜貨,才拆一個螺絲就壞了,因此又重新購買了一個)
http://goods.ruten.com.tw/item/show?21401052088786硬碟外接線MAC OS 開機USB (利用他來進行系統的對拷,若有其他方式,這就非必要)
附上
重灌修復不求人,製作 Mac OS X El Capitan 系統安裝碟
如何製作 Mac OS X 10.11 El Capitan USB 安裝隨身碟
的連結 部分工具如下圖所示
使用的硬碟型號 2. 開始複製系統 把 M.2 SSD 轉成 MAC 再轉成 SATA,利用MAC OS 開機USB開機(可參考網路上其他文章如何製作安裝USB),MAC開機時按著 ALT(Option)就可以選怎開機硬碟,選擇USB開機後進入磁碟管理工具,選擇映像檔回覆將系統Copy到新硬碟去~記得先格式化新硬碟~
可參考此篇文章
http://www.mobile01.com/topicdetail.php?f=481&t=2435651



3. 開始更換硬碟 拆開機殼可以發現硬碟跟電池的電源線,避免燒壞要先將電源線拆除喔!!!


換上新硬碟

記得將電源接…

[javascript] 二維陣列的排序

陣列格式
var a = [ {name:'hdj', filename:20140930174726.jpg}, {name:'yim', filename:1_title.jpg}, {name:'hdq', filename:20150930174726.jpg}, {name:'rrr', filename:3_title.jpg}, {name:'ddd', filename:2_title.jpg}, ]; 希望根據 filename 來進行排序,可以使用底下的 function
functionlistSortBy(arr, field, order){var refer =[],newrefer=[],comp_arr=[], result=[];var order = order=='asc'?'asc':'desc', index;for(i=0;i<arr.length;i++){// 1_title.jpg 20140930174726.jpgvardelExt=arr[i][field].split(".");// 1_title 20140930174726var name=delExt[0].split("_");if(typeof(name[1])=='undefined'){

[PHP] 二維陣列的排序

可使用PHP內建的 function array_multisort (適用PHP 4, PHP 5)
$data = array( array('name' => 'richard', 'score' => 20), array('name' => 'alex', 'score' => 18), array('name' => 'jack', 'score' => 22), ); 使用方式 $score = array(); foreach ($data as $user) { $score[] = $user['score']; } array_multisort($score, SORT_ASC, $data);
另一種方式使用 function usort (適用PHP 4, PHP 5),使用此 function 就可自訂比較的方式 $output_data= array(2833, '2833A', 2511, 3000); function cmp($a, $b) { if ($a['stockid'] == $b['stockid']) { return 0; } return ($a['stockid'] < $b['stockid']) ? -1 : 1; } usort($output_data, "cmp"); # Output: $output_data= array(2511, 2833, '2833A', 3000);