Archive

‘專業技術’ 分類過的Archive

String 如何轉換成 InputStream?

2008年8月8日 尚無評論

JAVA 在IO 上提供了串流介面讓程式設計師在進行各種輸出入時,變的簡單容易了,
不過在開發中會用到字串的機制大於其它如檔案等,所以在小弟看來
常有可能要將String轉換成InputStream,不過也蠻怪的,一些OpenSource元件或JDK本身提供的
都沒有直接傳入String,不知是不是小弟的觀念不正確~哈 =.=

不過,在小弟看來真的還蠻常遇到這種轉換,所以就加減瞭解一下吧!!
以下提供了String及InputStream互轉的方式,不過要注意一下
因為轉成Byte所以有可能會有中文問題

  public InputStream string2InputStream(String str) throws UnsupportedEncodingException…{
       ByteArrayInputStream bais = new ByteArrayInputStream(str.getBytes());
       return bais;
  }

  public String inputStream2String(InputStream is) throws IOException…{
       byte[] buffer = new byte[is.available()];
       is.read(buffer);
       return new String(buffer);
  }

參考資料:
http://blog.csdn.net/flyforlove/archive/2007/05/16/1611708.aspx

Categories: JAVA Tags: ,

用JAVA如何取得磁碟空間 for JDK6 (How to check Disk Space)?

2008年8月7日 尚無評論

     以往如果要取得磁碟資訊,就要自己半人工方式透過作業系統查詢磁碟的方式
例如linux平台就可以用df 指令,Windows平台就要使用dir指令
透過JNI的方式使用Runtime.getRuntime().exec() 來執行這些作業系統的指令再去解析
其中我們想要的資訊,如大家有興趣可以參考以下兩篇:


不過在JDK6出來後,就省事多啦,File元件已經提供相關的功能可以達到上述功能
我們來看看

java.io.File;

File file = new File(“c:”);
//取得C:\ 的總total空間
file.getTotalSpace();
//取得剩餘空間
file.getFreeSpace();
//取得已使用的空間
file.getUsableSpace();

上述幾個method就可以找到你想要的資訊,簡單吧!!

參考資訊:
http://java4ever.blogspot.com/2008/06/disk-space-check.html

Categories: JAVA Tags: ,

排除Tomcat 設定Error 404 頁面於IE 無法正常顯示

2008年8月4日 尚無評論

因為舊網站改版,所以導致原系統的連結無法使用,有些以前有bookmark 過的人要連回 或是 從搜尋引擎來的 都會直接顯示Http Error 404 ,目前先用一些說明改版頁面撐著,於Tomcat web.xml之中設定

<error-page>
<error-code>404</error-code>
<location>/error404.htm</location>
</error-page>

但在使用時發現 FireFox 是ok的 但在IE上時,IE似乎會以自己找不到網頁的頁面取代掉
去查了一下

可以在IE裡調整設定即可正常顯示,調整如下:

工具–>網際網路選項–>進階—>顯示易懂的HTTP錯誤訊息>取消選擇 , 這樣就可以了

不過這樣只能設定爽的,因為大部份的人都是用預設值嘛~~@@
所以要改用另一招

將原本指定錯誤頁頁狀態碼調整為正常,來告訴聰明的IE 這不是一個錯誤, 讓IE不會自動顯示自定的錯誤頁面
方法很簡單,只要在你的錯誤頁面裡加上:

<%
  response.setStatus(200); // 200 = HttpServletResponse.SC_OK
%>

這樣就以讓IE變正常點了~^^  (不過就一定要轉JSP or Servlet頁面 而不能用靜態的html頁面來顯了)

資料來源:http://jsf.javaeye.com/blog/141949

Categories: JAVA Tags:

笛卡兒乘積(Cartesian product) 的瞭解

2008年8月3日 尚無評論

最近在看一些資料庫的文章時,常會提到笛卡兒乘積(大陸譯:迪卡爾積),大概知道他是在說Cross Join就是 A table 乘上 B table的意思,不過還是想更瞭解,所以上網找了一下資訊:

笛卡兒事蹟 
笛卡兒是歐洲16~17世紀的偉大法國數學家(他也是一位哲學家,也有人稱之為近代哲學之父),他以解析幾何而聞名於世,他也是第一個發現直角座標的人,並且有一句「我思故我在」的名言傳世,最讓人津津樂道的是,他與學生公主的數學愛情故事(有興趣者請參考 連結1 連結2 )

Wiki  笛卡兒乘積解釋
數學中,兩個集合 XY笛卡兒積Cartesian product),又稱直積direct product),表示為 X × Y,是其第一個構件是 X 的成員而第二個構件是 Y 的一個成員的所有可能的有序對
想了解更多該理論,請點此

資料庫中的說明
一般在關聯式資料庫中要滿足一個查詢往往要結合兩個表或多個表,兩個資料表在結合時,不指定任何條件,即將兩個資料表中所有的可能排列組合出來,就稱做卡笛兒乘積(Cartesian product)。
此運算結合起來稱為交叉結合(CROSS JOIN)。我們只要使用Select敘述配合 [CROSS JOIN] 關鍵字就可以達成(CROSS 可以省略不寫)。

相關參考:
http://www.csjh.tpc.edu.tw/~doing/h-edu-date/edu-d-date/edu-d-1/1-7.htm
http://webdesign.enjoyitsimply.com/archives/category/sql
http://zh.wikipedia.org/wiki/%E7%AC%9B%E5%8D%A1%E5%84%BF%E7%A7%AF
http://blog.xuite.net/crdotlin/excel/9055925
http://blog.bsjh.tcc.edu.tw/post/21/133
http://www.wretch.cc/blog/a331776/26457400

Categories: Database Tags:

使用 Hibernate Tools Reverse-Engineering 在SQL Server上

2008年7月31日 尚無評論

最近開始學習Hibernate ,因為開發的模式都是先規劃資料庫 所以希望能從資料庫中的Schema轉成Hibernate 的VO
找了一下工具,在Hibernate官網的Hibernate Tools 看來是最合用的

下載安裝後,在測試期使用Mysql 都一切正常,不過轉換到MSSQL 時發生了 以下的問題

org.hibernate.cfg.JDBCBinderException: Duplicate class name CheckConstraints' generated for 'org.hibernate.mapping.Table(db.sys.check_constraints)'. Same name where generated for 'org.hibernate.mapping.Table(db.sys.check_constraints)'

看來是因為MSSQL 資料庫都會內含一些SYS(系統用)的schema,上網找了一下
在官網上有說明 可以有參數檔控制要反向的資訊,詳細如下 :

http://www.hibernate.org/hib_docs/tools/reference/en/html/reverseengineering.html

範例中是oracle ,看來oracle 及sqlserver 都要有額外的參數檔
目前先建了hibernate.reveng.xml 如下,設定了 下面這個參數就可以成功產生出來

<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE hibernate-reverse-engineering
  SYSTEM “
http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd” >

<hibernate-reverse-engineering>
<schema-selection match-schema=”dbo”/>
</hibernate-reverse-engineering>

因為在try 所以權限是db owner , 我想大概大多人使用的帳號都是db owner吧!!

Categories: JAVA Tags: ,
分頁: 上一頁 1 2 3 ... 18 19 20 21 22 23 24 25 26 27 28 下一頁