<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2086920107705172310</id><updated>2011-12-20T19:29:38.505+02:00</updated><category term='java tips'/><category term='Basic Java Tutorials'/><category term='Basic Java'/><category term='non-java'/><category term='exception handling'/><category term='clear war ear svn'/><category term='JSP Servlet'/><category term='determine jar class'/><category term='Java Database JDBC'/><category term='find jar class'/><category term='Java IO'/><title type='text'>javacream</title><subtitle type='html'>Java Talks , Tips Tutorials and sample codes.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>29</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-3257059713593486549</id><published>2011-06-26T16:13:00.001+03:00</published><updated>2011-06-26T16:13:00.591+03:00</updated><title type='text'>String Performance</title><content type='html'>Perhaps string concatenation is the most frequently used string operation in any language. In Java you can concat two string in this manner:&lt;br /&gt;&lt;br /&gt;String concatdStr = "String1"+"String2"+" and String3";&lt;br /&gt;&lt;br /&gt;But this is not a good idea. Behind the curtain , Java does string concatenation using StringBuffer class. So the above concat becomes :&lt;br /&gt;&lt;br /&gt;String sBuf = new StringBuffer(32);&lt;br /&gt;sBuf.append("String1").append("String2").append(" and String3");&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-3257059713593486549?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/3257059713593486549/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=3257059713593486549' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3257059713593486549'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3257059713593486549'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2011/06/string-performance.html' title='String Performance'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-2389537433951419776</id><published>2011-03-27T14:06:00.006+03:00</published><updated>2011-04-25T15:27:26.710+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java tips'/><category scheme='http://www.blogger.com/atom/ns#' term='clear war ear svn'/><title type='text'>Clearing WAR , EAR JAR  files for .svn folders and library jars</title><content type='html'>Big archieve sizes can be annoying. There can be some useless files within a war or jar file. &lt;br /&gt;&lt;br /&gt;1. If you uploaded your library files to application server than you do not need to pack them everytime you create application archieve file. &lt;br /&gt;&lt;br /&gt;2. There can be subversion folders which do not have a function in runtime.&lt;br /&gt;&lt;br /&gt;I wrote a basic windows batch file. it uses &lt;a href="http://www.7-zip.org/download.html" rel="no-follow"&gt;7-zip&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;clearJavaArchieves.bat&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cd %TEMP%&lt;br /&gt;rem "C:\Program Files\7-Zip\7z.exe" d %1 *.jar -r -tzip&lt;br /&gt;"C:\Program Files\7-Zip\7z.exe" d %1 .svn -r -tzip&lt;br /&gt;rem "C:\Program Files\7-Zip\7z.exe" d %1 WEB-INF\lib -tzip&lt;br /&gt;pause&lt;br /&gt;&lt;br /&gt;paste this code to file. &lt;br /&gt;&lt;br /&gt;first line is the for the temp files. &lt;br /&gt;&lt;br /&gt;if you want to clear all jar files within your archieve , and you know what you are doing , delete rem part of line 2 , otherwise you can delete delete line 2.&lt;br /&gt;&lt;br /&gt;3rd line deletes all .svn folders within your archieve file. if you donot want to do this , delete line 3.&lt;br /&gt;&lt;br /&gt;if you want to delete web-inf/lib , delete rem part of 4th line. (&lt;b&gt;warning be sure you uploaded all necessary jar files to your application server's lib folder&lt;/b&gt;) , otherwise you can delete delete line 4!!!&lt;br /&gt;&lt;br /&gt;on windows , right-click to your arcive file -&gt; open with -&gt; choose default program -&gt; (you can uncheck "always use the selected..." checkbox if you donot wanto to change your default program) -&gt; browse. &lt;br /&gt;&lt;br /&gt;once you open your archieve file with this script , windows adds it to open-with menu with the right-click.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;use with caution and test before deploying to production.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-2389537433951419776?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/2389537433951419776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=2389537433951419776' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2389537433951419776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2389537433951419776'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2011/03/clearing-war-ear-jar-files-for-svn.html' title='Clearing WAR , EAR JAR  files for .svn folders and library jars'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-3011760302851985793</id><published>2011-03-13T11:16:00.014+02:00</published><updated>2011-04-02T14:39:06.733+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java tips'/><category scheme='http://www.blogger.com/atom/ns#' term='find jar class'/><category scheme='http://www.blogger.com/atom/ns#' term='determine jar class'/><title type='text'>Determine jar file of a class</title><content type='html'>We sometimes need to determine from which jar file some particular class comes from. Here I wrote a small method to find out the name of the jar file we are  looking for :&lt;br /&gt;&lt;br /&gt;&lt;div class="java5" style="font-family:monospace;color: #006; border: 1px solid #d0d0d0; background-color: #f0f0f0;"&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;static&lt;/span&gt; &lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;String&lt;/span&gt;&lt;/a&gt; getJarURL&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/Class.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;Class&lt;/span&gt;&lt;/a&gt; mclass&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/URL.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;URL&lt;/span&gt;&lt;/a&gt; clsUrl = mclass.&lt;span style="color: #006633;"&gt;getResource&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;mclass.&lt;span style="color: #006633;"&gt;getSimpleName&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; + &lt;span style="color: #0000ff;"&gt;&amp;quot;.class&amp;quot;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; &amp;nbsp;font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;clsUrl &lt;span style="color: #339933;"&gt;!&lt;/span&gt;= &lt;span style="color: #006600; font-weight: bold;"&gt;null&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;try&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/URLConnection.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;URLConnection&lt;/span&gt;&lt;/a&gt; conn = clsUrl.&lt;span style="color: #006633;"&gt;openConnection&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; &amp;nbsp;font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;conn &lt;span style="color: #000000; font-weight: bold;"&gt;instanceof&lt;/span&gt; &lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/JarURLConnection.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;JarURLConnection&lt;/span&gt;&lt;/a&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/JarURLConnection.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;JarURLConnection&lt;/span&gt;&lt;/a&gt; connection = &lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/JarURLConnection.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;JarURLConnection&lt;/span&gt;&lt;/a&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; conn&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;return&lt;/span&gt; connection.&lt;span style="color: #006633;"&gt;getJarFileURL&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;.&lt;span style="color: #006633;"&gt;toString&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;catch&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/io/IOException.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;IOException&lt;/span&gt;&lt;/a&gt; e&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;throw&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;new&lt;/span&gt; &lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/RuntimeException.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;RuntimeException&lt;/span&gt;&lt;/a&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;e&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;return&lt;/span&gt; &lt;span style="color: #006600; font-weight: bold;"&gt;null&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;static&lt;/span&gt; &lt;span style="color: #006600; font-weight: bold;"&gt;void&lt;/span&gt; main&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;String&lt;/span&gt;&lt;/a&gt;&lt;span style="color: #009900;"&gt;&amp;#91;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#93;&lt;/span&gt; x&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span style="color: #006633;"&gt;out&lt;/span&gt;.&lt;span style="color: #006633;"&gt;println&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;getJarURL&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;java.&lt;span style="color: #006633;"&gt;net&lt;/span&gt;.&lt;a style="color: #000060;" href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/HttpURLConnection.html"&gt;&lt;span style="color: #003399; font-weight: bold;"&gt;HttpURLConnection&lt;/span&gt;&lt;/a&gt;.&lt;span style="color: #000000; font-weight: bold;"&gt;class&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/div&gt;&lt;br /&gt;which prints following output :&lt;br /&gt;&lt;br /&gt;file:/C:/Program%20Files%20(x86)/Java/jre1.5.0_22/lib/rt.jar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-3011760302851985793?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/3011760302851985793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=3011760302851985793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3011760302851985793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3011760302851985793'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2011/03/finding-jar-of-class.html' title='Determine jar file of a class'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-8413137924377451688</id><published>2011-03-06T14:49:00.013+02:00</published><updated>2011-03-07T11:18:35.029+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='exception handling'/><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java Tutorials'/><title type='text'>Simple Java Exception Handling Tips</title><content type='html'>Exceptions are errors that occur in runtime , that is , when the application is running. &lt;br /&gt;&lt;br /&gt;A careful developer should estimate and care about possible runtime errors.&lt;br /&gt;&lt;br /&gt;Let us give an example :&lt;br /&gt;&lt;br /&gt;String s = args[0];&lt;br /&gt;int i = Integer.parseInt(s);&lt;br /&gt;&lt;br /&gt;this piece of code can cause some exceptions. For example args is an array of string. We want to read the first element of this array. What happens if args is null ? What happens if args is empty ?&lt;br /&gt;&lt;br /&gt;so we need to ensure that the array is not null and not empty.&lt;br /&gt;&lt;br /&gt;&lt;div class="java5"&gt;&lt;ol&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt; s = &lt;span class="kw4"&gt;null&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt; &lt;span class="co1"&gt;// initialize s&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="co1"&gt;// check the array is not null or empty&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;if&lt;/span&gt; &lt;span class="br0"&gt;(&lt;/span&gt;args &lt;span class="sy0"&gt;!&lt;/span&gt;= &lt;span class="kw4"&gt;null&lt;/span&gt; &lt;span class="sy0"&gt;&amp;amp;&amp;amp;&lt;/span&gt; args.&lt;span class="me1"&gt;length&lt;/span&gt; &lt;span class="sy0"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nu0"&gt;0&lt;/span&gt;&lt;span class="br0"&gt;)&lt;/span&gt; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; s = args&lt;span class="br0"&gt;[&lt;/span&gt;&lt;span class="nu0"&gt;0&lt;/span&gt;&lt;span class="br0"&gt;]&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw3"&gt;int&lt;/span&gt; i = &lt;span class="nu0"&gt;0&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;if&lt;/span&gt; &lt;span class="br0"&gt;(&lt;/span&gt;s &lt;span class="sy0"&gt;!&lt;/span&gt;= &lt;span class="kw4"&gt;null&lt;/span&gt;&lt;span class="br0"&gt;)&lt;/span&gt; &lt;span class="co1"&gt;// if s is not null we can parse&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; i = &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html"&gt;&lt;span class="kw21"&gt;Integer&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;parseInt&lt;/span&gt;&lt;span class="br0"&gt;(&lt;/span&gt;s&lt;span class="br0"&gt;)&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;else&lt;/span&gt; &lt;span class="br0"&gt;{&lt;/span&gt; &lt;span class="co1"&gt;// s is null , so show an error message and exit&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;err&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;(&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="st0"&gt;"Invalid argument , should be a valid integer value"&lt;/span&gt; &lt;span class="br0"&gt;)&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;exit&lt;/span&gt;&lt;span class="br0"&gt;(&lt;/span&gt;&lt;span class="nu0"&gt;1&lt;/span&gt;&lt;span class="br0"&gt;)&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;out&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;(&lt;/span&gt;&lt;span class="st0"&gt;"square of "&lt;/span&gt;+i+&lt;span class="st0"&gt;" is ="&lt;/span&gt;+&lt;span class="br0"&gt;(&lt;/span&gt;i&lt;span class="sy0"&gt;*&lt;/span&gt;i&lt;span class="br0"&gt;)&lt;/span&gt;&lt;span class="br0"&gt;)&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;But there is still a possible cause of exception. We here assume that if s is not null than s contains an integer value that can be parsed without an error. But assumptions always cause exceptions. String s can be a "hello world" string and parseInt fails with this value. &lt;br /&gt;&lt;br /&gt;so we need to rewrite our code :&lt;br /&gt;&lt;div class="java5"&gt;&lt;ol&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt; s = &lt;span class="kw4"&gt;null&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt; &lt;span class="co1"&gt;//initialize s&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;if&lt;/span&gt; &lt;span class="br0"&gt;&amp;#40;&lt;/span&gt; args &lt;span class="sy0"&gt;!&lt;/span&gt;= &lt;span class="kw4"&gt;null&lt;/span&gt; &lt;span class="sy0"&gt;&amp;amp;&amp;amp;&lt;/span&gt; args.&lt;span class="me1"&gt;length&lt;/span&gt; &lt;span class="sy0"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nu0"&gt;0&lt;/span&gt; &lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &amp;nbsp;&lt;span class="co1"&gt;//check the argument array is null or empty&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; s = args&lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;&lt;span class="nu0"&gt;0&lt;/span&gt;&lt;span class="br0"&gt;&amp;#93;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw3"&gt;int&lt;/span&gt; i = &lt;span class="nu0"&gt;0&lt;/span&gt; &lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;if&lt;/span&gt; &lt;span class="br0"&gt;&amp;#40;&lt;/span&gt; s &lt;span class="sy0"&gt;!&lt;/span&gt;= &lt;span class="kw4"&gt;null&lt;/span&gt; &lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &amp;nbsp;&lt;span class="br0"&gt;&amp;#123;&lt;/span&gt; &lt;span class="co1"&gt;//if s is not null we can try to &amp;nbsp;parse &lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;try&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; i = &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/Integer.html"&gt;&lt;span class="kw21"&gt;Integer&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;parseInt&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;s&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt; &lt;span class="kw2"&gt;catch&lt;/span&gt; &lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/NumberFormatException.html"&gt;&lt;span class="kw21"&gt;NumberFormatException&lt;/span&gt;&lt;/a&gt; e&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; e.&lt;span class="me1"&gt;printStackTrace&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt; &lt;span class="co1"&gt;//dump the error&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;err&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;Invalid argument , should be a valid integer value&amp;quot;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;exit&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="nu0"&gt;1&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;else&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt; &lt;span class="co1"&gt;// s is null , so show an error message and exit&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;err&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;Invalid argument , should be a valid integer value&amp;quot;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;exit&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="nu0"&gt;1&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;out&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;square of &amp;quot;&lt;/span&gt;+i+&lt;span class="st0"&gt;&amp;quot; is =&amp;quot;&lt;/span&gt;+&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;i&lt;span class="sy0"&gt;*&lt;/span&gt;i&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;as an alternative to try/catch blocks we can declare our methods as it throws exception , for example :&lt;br /&gt;&lt;br /&gt;&lt;div class="java5"&gt;&lt;ol&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;public&lt;/span&gt; &lt;span class="kw3"&gt;int&lt;/span&gt; square&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt; s&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="kw2"&gt;throws&lt;/span&gt; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/NumberFormatException.html"&gt;&lt;span class="kw21"&gt;NumberFormatException&lt;/span&gt;&lt;/a&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=jatisaco-20&amp;o=1&amp;p=8&amp;l=bpl&amp;asins=0321356683&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" style="align:left;padding-top:5px;width:131px;height:245px;padding-right:10px;"align="left" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-8413137924377451688?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/8413137924377451688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=8413137924377451688' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8413137924377451688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8413137924377451688'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2011/03/java-exceptions.html' title='Simple Java Exception Handling Tips'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-1755223350236007464</id><published>2010-02-11T01:29:00.003+02:00</published><updated>2010-02-11T01:42:48.798+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='non-java'/><title type='text'>Schedule windows to close a program</title><content type='html'>On windows If we need to close a program (maybe a java) at a certain time , use this command :&lt;br /&gt;&lt;br /&gt;at 13:29 taskkill /F /IM  6976&lt;br /&gt;&lt;br /&gt;6976 is the process id (you can find it on task manager - processes tab. If not seen , than on the top menu choose View-Select Coloumns and mark PID (processID) )&lt;br /&gt;&lt;br /&gt;to cancel all scheduled commands&lt;br /&gt;&lt;br /&gt;at /delete&lt;br /&gt;&lt;br /&gt;you need to open cmd window as administrator to run at command. (startMenu-accessories right click on command window and choose "run as admin"&lt;br /&gt;&lt;br /&gt;hop this helps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-1755223350236007464?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/1755223350236007464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=1755223350236007464' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/1755223350236007464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/1755223350236007464'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2010/02/schedule-windows-to-close-program.html' title='Schedule windows to close a program'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-1708433633040168306</id><published>2009-10-16T11:05:00.004+03:00</published><updated>2009-10-16T11:16:14.539+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Database JDBC'/><title type='text'>Convert Java Date to Mysql Date</title><content type='html'>&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:hyphenationzone&gt;21&lt;/w:HyphenationZone&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal  {mso-style-parent:"";  margin:0cm;  margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:12.0pt;  font-family:"Times New Roman";  mso-fareast-font-family:"Times New Roman";} @page Section1  {size:612.0pt 792.0pt;  margin:70.85pt 70.85pt 70.85pt 70.85pt;  mso-header-margin:35.4pt;  mso-footer-margin:35.4pt;  mso-paper-source:0;} div.Section1  {page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Normal Tablo";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-parent:"";  mso-padding-alt:0cm 5.4pt 0cm 5.4pt;  mso-para-margin:0cm;  mso-para-margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:10.0pt;  font-family:"Times New Roman";  mso-ansi-language:#0400;  mso-fareast-language:#0400;  mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; &lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; String toMysqlDateStr(Date date){&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; (date==&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;) &lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;                    &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; &lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);"&gt;"NULL"&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;;&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;SimpleDateFormat sdf =&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; SimpleDateFormat(&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);"&gt;"yyyy-MM-dd HH:mm:ss"&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;);&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; &lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);"&gt;'\''&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;+sdf.format(date)+&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(42, 0, 255);"&gt;'\''&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;;&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;       &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-1708433633040168306?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/1708433633040168306/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=1708433633040168306' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/1708433633040168306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/1708433633040168306'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2009/10/convert-java-date-to-mysql-date.html' title='Convert Java Date to Mysql Date'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-6039774223596695289</id><published>2009-03-18T00:02:00.000+02:00</published><updated>2009-03-18T00:02:00.920+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='non-java'/><title type='text'>How to measure distance on google maps ?</title><content type='html'>Use the page &lt;a href="http://www.daftlogic.com/projects-google-maps-distance-calculator.htm"  rel="external nofollow" &gt;here&lt;/a&gt; , you just click on points and the distance will appear either in miles or in kilometers.  You can also mark multiple points and calculate a real length of a path.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-6039774223596695289?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/6039774223596695289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/6039774223596695289'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2009/03/how-to-measure-distance-on-google-maps.html' title='How to measure distance on google maps ?'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-2525153719443809355</id><published>2009-03-11T18:25:00.002+02:00</published><updated>2009-03-12T00:07:06.540+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java'/><title type='text'>Check if a String contains letter</title><content type='html'>public static boolean containsLetter(String s) {&lt;br /&gt;        if ( s == null )&lt;br /&gt;            return false;&lt;br /&gt;        boolean letterFound = false;&lt;br /&gt;        for (int i = 0; !letterFound &amp;amp;&amp;amp; i &lt; s.length(); i++)&lt;br /&gt;            letterFound = letterFound&lt;br /&gt;                    || Character.isLetter(s.charAt(i));&lt;br /&gt;        return letterFound;&lt;br /&gt;    }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-2525153719443809355?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/2525153719443809355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=2525153719443809355' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2525153719443809355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2525153719443809355'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2009/03/check-if-string-contains-letter.html' title='Check if a String contains letter'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-5656994161210439067</id><published>2009-02-27T17:52:00.002+02:00</published><updated>2009-02-27T18:11:18.305+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java Tutorials'/><title type='text'>Get MimeType of A File</title><content type='html'>Use activation.jar to access &lt;a href="http://java.sun.com/javase/technologies/desktop/javabeans/glasgow/jaf.html" rel="external nofollow"&gt; javax.activation API.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;File file = new File("foo.jpg");&lt;br /&gt;String mimeType = new MimetypesFileTypeMap().getContentType(file)); // image/jpeg&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;alternatively , you can use  filename to detech the mime type :&lt;br /&gt;&lt;pre&gt;String mimeType = new MimetypesFileTypeMap().getContentType("foo.jpg")); // image/jpeg&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-5656994161210439067?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/5656994161210439067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=5656994161210439067' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/5656994161210439067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/5656994161210439067'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2009/02/get-mimetype-of-file.html' title='Get MimeType of A File'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-8859384269853925979</id><published>2009-01-22T01:09:00.002+02:00</published><updated>2009-01-22T01:13:42.674+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='non-java'/><title type='text'>Redirect StdErr to Stdin in Batch and Shell Scripts</title><content type='html'>On windows command prompt :&lt;br /&gt;&lt;br /&gt;mybatch.bat 1&gt; log.txt 2&gt;&amp;amp;1&lt;br /&gt;&lt;br /&gt;This redirects stdin to log.txt and stderr to stdin&lt;br /&gt;&lt;br /&gt;On Bash Linux Shell:&lt;br /&gt;&lt;pre&gt;grep * &amp;amp;&gt; allout.txt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-8859384269853925979?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/8859384269853925979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=8859384269853925979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8859384269853925979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8859384269853925979'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2009/01/redirect-stderr-to-stdin-in-batch-and.html' title='Redirect StdErr to Stdin in Batch and Shell Scripts'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-2892147654677331041</id><published>2008-10-31T13:58:00.004+02:00</published><updated>2011-03-07T01:16:44.940+02:00</updated><title type='text'>Get Remote IP Address In Axis SOAP Server</title><content type='html'>Obtain remote IP from ServletRequest (Axis 1.0 only)&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; javax.servlet.http.HttpServletRequest;&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; org.apache.axis.MessageContext;&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; org.apache.axis.transport.http.HTTPConstants;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; &lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; String getSOAPRemoteIP() {&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;MessageContext context = MessageContext.&lt;i&gt;getCurrentContext&lt;/i&gt;();&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;String address = &lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;;&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 35.4pt;"&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;(context!=null &amp;amp;&amp;amp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 106.2pt;"&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;context.containsProperty(HTTPConstants.&lt;/span&gt;&lt;i&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);"&gt;MC_HTTP_SERVLETREQUEST&lt;/span&gt;&lt;/i&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;)) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 35.4pt; text-indent: 35.4pt;"&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;{&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;                    &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;HttpServletRequest servletReq = (HttpServletRequest)&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;                    &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;context.getProperty(HTTPConstants.&lt;/span&gt;&lt;i&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(0, 0, 192);"&gt;MC_HTTP_SERVLETREQUEST&lt;/span&gt;&lt;/i&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;);&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;                    &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; (servletReq != &lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;)&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;                    &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;address = servletReq.getRemoteAddr();&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;             &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: rgb(127, 0, 85);"&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt; address;&lt;/span&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 8pt; font-family: &amp;quot;Courier New&amp;quot;; color: black;"&gt;&lt;span style=""&gt;       &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-size: 8pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=jatisaco-20&amp;o=1&amp;p=8&amp;l=bpl&amp;asins=059652112X&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" style="align:left;padding-top:5px;width:131px;height:245px;padding-right:10px;"align="left" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-2892147654677331041?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/2892147654677331041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=2892147654677331041' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2892147654677331041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2892147654677331041'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/10/get-remote-ip-address-in-axis-soap.html' title='Get Remote IP Address In Axis SOAP Server'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-7007565742470181514</id><published>2008-09-02T17:00:00.004+03:00</published><updated>2008-09-05T13:04:03.501+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='non-java'/><title type='text'>Google Chrome Ready For Download</title><content type='html'>Google has released a new browser named Google Chrome. This browser is expected to become most widespred computer program ever written. Google Chrome will set the standarts for Web2.0 and Web3.0 technologies. &lt;br /&gt;&lt;br /&gt;Chrome is a ligtweight browser and does not consume your CPU and memory and it makes Chrome fast and reliable.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.com/chrome"&gt;Download Here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; &lt;a href="http://www.google.com/googlebooks/chrome/index.html"&gt;Here is a gread comic book for chrome on googlebooks site&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;At first impression Google Chrome is not working properly with PHP-Admin !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-7007565742470181514?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/7007565742470181514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=7007565742470181514' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/7007565742470181514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/7007565742470181514'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/09/google-chrome-ready-for-download.html' title='Google Chrome Ready For Download'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-8611935710412440415</id><published>2008-08-22T19:33:00.006+03:00</published><updated>2008-09-26T16:13:26.314+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='non-java'/><title type='text'>Console Beep  On Error Line of a Log File</title><content type='html'>Ok folks , this is non-java :)&lt;br /&gt;&lt;br /&gt;Today I had to watch a log file and alert some ppl when an error phrase seen on log file. This is a terrible jıb todo. First I run on my linux server:&lt;br /&gt;&lt;br /&gt;#tail -f mylogfile | grep ERRORSTRING &lt;br /&gt;&lt;br /&gt;this worked but put me in front of the screen. Why not my console beep when ERRORSTRING  exists in the log file ? I need an application to beep when read a line from stdin. This is piece of cake in java but i did not want to load JVM for this purpose because of memory needs. So I warped to good old days and decided to write a C program to do this job.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include &amp;lt;string.h&amp;gt;&lt;br /&gt;#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;&lt;br /&gt;int main(int argc, char *argv[])&lt;br /&gt;{&lt;br /&gt;        char buf[1024];&lt;br /&gt;        int n;&lt;br /&gt;        while (fgets(buf, sizeof buf, stdin) != NULL) {&lt;br /&gt;                n = strlen(buf);&lt;br /&gt;                if (n &gt; 0 &amp;&amp; buf[n-1] == '\n')  {&lt;br /&gt;                        printf("\a");&lt;br /&gt;                        printf("%s\n", buf);&lt;br /&gt;                }&lt;br /&gt;        }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;and I compiled :&lt;br /&gt;#cc beep.c -o mybeep&lt;br /&gt;&lt;br /&gt;and later :&lt;br /&gt;&lt;br /&gt;#tail -f mylogfile | grep ERRORSTRING | /home/hakan/utils/beep&lt;br /&gt;&lt;br /&gt;and that's it , it worked ! I watch olympic games and when console beeps I called administration ppl :) There should be a lot of log watching utility but it is easier for me to write code than search google for utility programs and install them. Maybe this code can crash the server but it works for now , thanks in advance for comments.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-8611935710412440415?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/8611935710412440415/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=8611935710412440415' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8611935710412440415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8611935710412440415'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/08/console-beep-error-on-some-log-file.html' title='Console Beep  On Error Line of a Log File'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-9023024960622650099</id><published>2008-07-23T13:36:00.002+03:00</published><updated>2008-07-23T15:13:54.541+03:00</updated><title type='text'>Using Java Properties File</title><content type='html'>Many programmers use properties files for keeping configuration parameters (DB Server IP etc.)&lt;br /&gt;&lt;br /&gt;Here is a sample class code for accessing configuration parameters from a properties file. You can pass JVM parameter like this :&lt;br /&gt;&lt;br /&gt;java -DMyPropertiesFile=/usr/local/java/proj/myconfig.properties MyClass&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;package javacream;&lt;br /&gt;&lt;br /&gt;import java.io.InputStream;&lt;br /&gt;import java.util.Properties;&lt;br /&gt;&lt;br /&gt;public class AppProperties {&lt;br /&gt; private static Properties prop;&lt;br /&gt;&lt;br /&gt; static {&lt;br /&gt;  initiate();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; protected static void initiate() {&lt;br /&gt;  try {&lt;br /&gt;   //Pass Java VM following arguement&lt;br /&gt;   // -DMyPropertiesFile="[PATH]/[PROPERTIESFILENAME]"&lt;br /&gt;&lt;br /&gt;   prop = new Properties();&lt;br /&gt;&lt;br /&gt;   String propertiesFile = System.getProperty("MyPropertiesFile");&lt;br /&gt;&lt;br /&gt;   if (propertiesFile == null) {&lt;br /&gt;    System.out&lt;br /&gt;      .println("Could not find content.properties property in System Properties.");&lt;br /&gt;    System.out&lt;br /&gt;      .println("This property file is needed for the application to operate.");&lt;br /&gt;    System.out&lt;br /&gt;      .println("Send this parameter as -DMyPropertiesFile=%FILENAME% to java vm.");&lt;br /&gt;&lt;br /&gt;    propertiesFile = "myconfiguration.properties";&lt;br /&gt;&lt;br /&gt;    System.out&lt;br /&gt;      .println("Setting properties file name to default value "&lt;br /&gt;        + propertiesFile);&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   try {&lt;br /&gt;    InputStream is = new java.io.FileInputStream(propertiesFile);&lt;br /&gt;&lt;br /&gt;    prop.load(is);&lt;br /&gt;   } catch (Exception e) {&lt;br /&gt;    e.printStackTrace();&lt;br /&gt;&lt;br /&gt;    System.out.println("Could not read or find MyPropertiesFile");&lt;br /&gt;    System.out&lt;br /&gt;      .println("This property file is needed for the application to operate.");&lt;br /&gt;    System.out&lt;br /&gt;      .println("Send this parameter as -MyPropertiesFile=%FILENAME% to java vm.");&lt;br /&gt;    return;&lt;br /&gt;   }&lt;br /&gt;  } catch (Throwable t) {&lt;br /&gt;   t.printStackTrace();&lt;br /&gt;&lt;br /&gt;   return;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public static String get(String key) {&lt;br /&gt;  String value = prop.getProperty(key);&lt;br /&gt;  if ((value == null) &amp;&amp; !prop.containsKey(key)) {&lt;br /&gt;   System.out.println("Could not find the key " + key&lt;br /&gt;     + " in Properties file.");&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;  return (value);&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public static String get(String key, String defaultValue) {&lt;br /&gt;  String value = prop.getProperty(key);&lt;br /&gt;&lt;br /&gt;  if ((value == null) &amp;&amp; !prop.containsKey(key)) {&lt;br /&gt;   System.out.println("Could not find the key " + key&lt;br /&gt;     + " in Properties file, using default value");&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  return (prop.getProperty(key, defaultValue));&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public static void main(String[] args) {&lt;br /&gt;  System.out.println(AppProperties.get("UserName"));&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-9023024960622650099?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/9023024960622650099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=9023024960622650099' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/9023024960622650099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/9023024960622650099'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/07/using-java-properties-file.html' title='Using Java Properties File'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-8743269693007322377</id><published>2008-07-13T13:00:00.001+03:00</published><updated>2011-03-07T01:21:30.522+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java Tutorials'/><title type='text'>Java MD5 Hash Sample</title><content type='html'>MD5 (Message Digest) is an encryption algorithm that creates a unique hash from a given data which is completely reverseble. This means you cannot recalculate original data using its hash , and hash is universally unique. &lt;br /&gt;&lt;br /&gt;Here is a sample code that produces MD5 hash of a given string :&lt;br /&gt;&lt;br /&gt;&lt;div class="java5"&gt;&lt;ol&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&lt;span class="kw2"&gt;package&lt;/span&gt; &lt;span class="co2"&gt;javacream&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&lt;span class="kw2"&gt;import&lt;/span&gt; &lt;span class="co2"&gt;java.security.MessageDigest&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&lt;span class="kw2"&gt;import&lt;/span&gt; &lt;span class="co2"&gt;java.security.NoSuchAlgorithmException&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&lt;span class="kw2"&gt;public&lt;/span&gt; &lt;span class="kw2"&gt;class&lt;/span&gt; MD5HashTest &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;private&lt;/span&gt; &lt;span class="kw2"&gt;static&lt;/span&gt; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt; getMD5Digest&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt; str&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;try&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw3"&gt;byte&lt;/span&gt;&lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#93;&lt;/span&gt; buffer = str.&lt;span class="me1"&gt;getBytes&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw3"&gt;byte&lt;/span&gt;&lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#93;&lt;/span&gt; result = &lt;span class="kw4"&gt;null&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/StringBuffer.html"&gt;&lt;span class="kw21"&gt;StringBuffer&lt;/span&gt;&lt;/a&gt; buf = &lt;span class="kw4"&gt;null&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/MessageDigest.html"&gt;&lt;span class="kw39"&gt;MessageDigest&lt;/span&gt;&lt;/a&gt; md5 = &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/MessageDigest.html"&gt;&lt;span class="kw39"&gt;MessageDigest&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;getInstance&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;MD5&amp;quot;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="co1"&gt;//allocate room for the hash &amp;nbsp; &amp;nbsp;result = new byte[md5.getDigestLength()];&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="co1"&gt;//calculate hash &amp;nbsp; &amp;nbsp;md5.reset();&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; md5.&lt;span class="me1"&gt;update&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;buffer&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; result = md5.&lt;span class="me1"&gt;digest&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;out&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;result&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="co1"&gt;//create hex string from the 16-byte hash &amp;nbsp; &amp;nbsp;buf = new StringBuffer(result.length * 2);&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;for&lt;/span&gt; &lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="kw3"&gt;int&lt;/span&gt; i = &lt;span class="nu0"&gt;0&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; i &lt;span class="sy0"&gt;&amp;amp;&lt;/span&gt;lt&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; result.&lt;span class="me1"&gt;length&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; i++&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw3"&gt;int&lt;/span&gt; intVal = result&lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;i&lt;span class="br0"&gt;&amp;#93;&lt;/span&gt; &lt;span class="sy0"&gt;&amp;amp;&lt;/span&gt; 0xff&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw1"&gt;if&lt;/span&gt; &lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;intVal &lt;span class="sy0"&gt;&amp;amp;&lt;/span&gt;lt&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0x10&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; buf.&lt;span class="me1"&gt;append&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;0&amp;quot;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; buf.&lt;span class="me1"&gt;append&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/Integer.html"&gt;&lt;span class="kw21"&gt;Integer&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;toHexString&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;intVal&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;.&lt;span class="me1"&gt;toUpperCase&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;return&lt;/span&gt; buf.&lt;span class="me1"&gt;toString&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;catch&lt;/span&gt; &lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/NoSuchAlgorithmException.html"&gt;&lt;span class="kw39"&gt;NoSuchAlgorithmException&lt;/span&gt;&lt;/a&gt; e&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;err&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;Exception caught: &amp;quot;&lt;/span&gt; + e&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; e.&lt;span class="me1"&gt;printStackTrace&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;return&lt;/span&gt; &lt;span class="kw4"&gt;null&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &lt;span class="kw2"&gt;public&lt;/span&gt; &lt;span class="kw2"&gt;static&lt;/span&gt; &lt;span class="kw3"&gt;void&lt;/span&gt; main&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt;&lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#93;&lt;/span&gt; args&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/String.html"&gt;&lt;span class="kw21"&gt;String&lt;/span&gt;&lt;/a&gt; result = getMD5Digest&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;This is a text to hash&amp;quot;&lt;/span&gt;&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href="http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/System.html"&gt;&lt;span class="kw21"&gt;System&lt;/span&gt;&lt;/a&gt;.&lt;span class="me1"&gt;out&lt;/span&gt;.&lt;span class="me1"&gt;println&lt;/span&gt;&lt;span class="br0"&gt;&amp;#40;&lt;/span&gt;&lt;span class="st0"&gt;&amp;quot;result=&amp;quot;&lt;/span&gt; + result&lt;span class="br0"&gt;&amp;#41;&lt;/span&gt;&lt;span class="sy0"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li2"&gt;&lt;div class="de2"&gt;&amp;nbsp; &amp;nbsp; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&amp;nbsp; &amp;nbsp; &lt;/div&gt;&lt;/li&gt;&lt;li class="li1"&gt;&lt;div class="de1"&gt;&lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=jatisaco-20&amp;o=1&amp;p=8&amp;l=bpl&amp;asins=0596001576&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" style="align:left;padding-top:5px;width:131px;height:245px;padding-right:10px;"align="left" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-8743269693007322377?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/8743269693007322377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=8743269693007322377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8743269693007322377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8743269693007322377'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/07/java-md5-hash-sample.html' title='Java MD5 Hash Sample'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-7092654639215683825</id><published>2008-07-09T12:41:00.000+03:00</published><updated>2008-07-09T12:41:00.405+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java IO'/><title type='text'>Java HTPPS SSL Client</title><content type='html'>HTTPS secure HTTP connection , HTTP over secure socket layer (SSL).&lt;br /&gt;To establish an HTTPS connection to a remote server , you should use the certificate obtained by the server. This certificate is validated using a local trust store. Default trust store is &lt;java-home&gt;/lib/security/cacerts. You can define another trust store using keytool application in &lt;java-home&gt;/bin. Certificates can be added to trust store with keytool application also.&lt;br /&gt;&lt;br /&gt;You should give trust store parameter to JVM like this :&lt;br /&gt;&lt;br /&gt;-Djavax.net.ssl.trustStore=/mypath/my.keystore &lt;br /&gt;-Djavax.net.ssl.trustStorePassword=mypassword&lt;br /&gt;&lt;br /&gt;Here is the sample code to create an HTTPS connection: &lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;package javacream;&lt;br /&gt;&lt;br /&gt;import java.io.BufferedReader;&lt;br /&gt;import java.io.BufferedWriter;&lt;br /&gt;import java.io.IOException;&lt;br /&gt;import java.io.InputStreamReader;&lt;br /&gt;import java.io.OutputStreamWriter;&lt;br /&gt;import java.net.URLEncoder;&lt;br /&gt;import java.security.Security;&lt;br /&gt;&lt;br /&gt;import javax.net.ssl.SSLSocket;&lt;br /&gt;import javax.net.ssl.SSLSocketFactory;&lt;br /&gt;&lt;br /&gt;public class HTTPSClient {&lt;br /&gt;&lt;br /&gt; public static void main(String[] args) {&lt;br /&gt;  String resp = sendReq("myserver.mydomain.com",&lt;br /&gt;    "/myapp/findbookservlet", "bookID=2323");&lt;br /&gt;  System.out.println(resp);&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; // Uses post to fetch data , return null if it fails.&lt;br /&gt; public static String sendReq(String host, String path, String data) {&lt;br /&gt;&lt;br /&gt;  int port = 443; // default https port&lt;br /&gt;&lt;br /&gt;  BufferedWriter wr = null;&lt;br /&gt;  BufferedReader in = null;&lt;br /&gt;  SSLSocket socket = null;&lt;br /&gt;&lt;br /&gt;  try {&lt;br /&gt;   Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());&lt;br /&gt;   SSLSocketFactory factory = (SSLSocketFactory) SSLSocketFactory&lt;br /&gt;     .getDefault();&lt;br /&gt;   socket = (SSLSocket) factory.createSocket(host, port);&lt;br /&gt;   String[] supported = socket.getSupportedCipherSuites();&lt;br /&gt;   socket.setEnabledCipherSuites(supported);&lt;br /&gt;   String encData = URLEncoder.encode(data, "UTF-8");&lt;br /&gt;&lt;br /&gt;   wr = new BufferedWriter(new OutputStreamWriter(socket&lt;br /&gt;     .getOutputStream(), "UTF8"));&lt;br /&gt;   wr.write("POST " + path + " HTTP/1.0\r\n");&lt;br /&gt;   wr.write("Content-Length: " + data.length() + "\r\n");&lt;br /&gt;   wr.write("Content-Type: application/x-www-form-urlencoded\r\n");&lt;br /&gt;   wr.write("\r\n");&lt;br /&gt;   wr.write(data);&lt;br /&gt;   wr.flush();&lt;br /&gt;   // read response&lt;br /&gt;   in = new BufferedReader(new InputStreamReader(socket&lt;br /&gt;     .getInputStream(), "UTF-8"));&lt;br /&gt;   int c;&lt;br /&gt;   StringBuffer sb = new StringBuffer();&lt;br /&gt;&lt;br /&gt;   while ((c = in.read()) != -1) {&lt;br /&gt;    sb.append((char) c);&lt;br /&gt;   }&lt;br /&gt;   System.out.println("SSL Response:" + sb.toString());&lt;br /&gt;   return sb.toString();&lt;br /&gt;  } catch (Exception e) {&lt;br /&gt;   e.printStackTrace();&lt;br /&gt;  } finally {&lt;br /&gt;   if (wr != null)&lt;br /&gt;    try {&lt;br /&gt;     wr.close();&lt;br /&gt;    } catch (IOException e2) {&lt;br /&gt;     e2.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;   if (in != null)&lt;br /&gt;    try {&lt;br /&gt;     in.close();&lt;br /&gt;    } catch (IOException e1) {&lt;br /&gt;     e1.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;   if (socket != null)&lt;br /&gt;    try {&lt;br /&gt;     socket.close();&lt;br /&gt;    } catch (IOException e2) {&lt;br /&gt;     e2.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  return null;&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt; &lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-7092654639215683825?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/7092654639215683825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=7092654639215683825' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/7092654639215683825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/7092654639215683825'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/07/java-htpps-ssl-client.html' title='Java HTPPS SSL Client'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-6787986455164498343</id><published>2008-07-05T00:54:00.000+03:00</published><updated>2008-07-03T00:58:51.215+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSP Servlet'/><title type='text'>Sample JSP Date Combo</title><content type='html'>This method produces required html code for date time combos. Date parameter is selected in case of equality.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt; public static String printDateCombos(String name , java.util.Date date) {&lt;br /&gt;  &lt;br /&gt;  Calendar today = Calendar.getInstance(new Locale("en-US")) ; &lt;br /&gt;  &lt;br /&gt;  if (date == null) &lt;br /&gt;   today.setTimeInMillis( System.currentTimeMillis()  );&lt;br /&gt;  else &lt;br /&gt;   today.setTime( date ) ;&lt;br /&gt;  &lt;br /&gt;  int year = today.get( Calendar.YEAR );&lt;br /&gt;  int month = today.get( Calendar.MONTH );&lt;br /&gt;  int day = today.get( Calendar.DAY_OF_MONTH );&lt;br /&gt;  int hour = today.get( Calendar.HOUR_OF_DAY );&lt;br /&gt;  int min = today.get( Calendar.MINUTE ); &lt;br /&gt;  StringBuffer out = new StringBuffer();&lt;br /&gt;  &lt;br /&gt;  out.append("&amp;lt;select name=\"");&lt;br /&gt;  out.append(name);&lt;br /&gt;  out.append("_day\"&gt;");&lt;br /&gt;&lt;br /&gt;  for (int i=1;i&lt;32;i++) {&lt;br /&gt;   out.append("&amp;lt;option");&lt;br /&gt;   if (i==day) out.append(" selected ");&lt;br /&gt;   out.append("&gt;");&lt;br /&gt;   if (i&lt;10) out.append('0');&lt;br /&gt;   out.append(i);&lt;br /&gt;   out.append("&amp;lt;/option&gt;");&lt;br /&gt;  &lt;br /&gt;  }&lt;br /&gt;  out.append("&amp;lt;/select&gt;");&lt;br /&gt;&lt;br /&gt;  // month&lt;br /&gt;  out.append("/&amp;lt;select name=\"");&lt;br /&gt;  out.append(name);&lt;br /&gt;  out.append("_month\"&gt;");&lt;br /&gt;&lt;br /&gt;  for (int i=0;i&lt;12;i++) {&lt;br /&gt;   out.append("&amp;lt;option");&lt;br /&gt;   if (i==month) out.append(" selected");&lt;br /&gt;   out.append(" value=");&lt;br /&gt;   out.append(i+1);&lt;br /&gt;   out.append("&gt;");&lt;br /&gt;   out.append( MONTHS[i] );&lt;br /&gt;   out.append("&amp;lt;/option&gt;");&lt;br /&gt;  &lt;br /&gt;  }&lt;br /&gt;  out.append("&amp;lt;/select&gt;");&lt;br /&gt;  &lt;br /&gt;  &lt;br /&gt;  // year&lt;br /&gt;  out.append("/&amp;lt;select name=\"");&lt;br /&gt;  out.append(name);&lt;br /&gt;  out.append("_year\"&gt;");&lt;br /&gt;&lt;br /&gt;  for (int i=0;i&lt;10;i++) {&lt;br /&gt;   out.append("&amp;lt;option");&lt;br /&gt;   if (i==0) out.append(" selected");&lt;br /&gt;   out.append("&gt;");&lt;br /&gt;   out.append(year+i);&lt;br /&gt;   out.append("&amp;lt;/option&gt;");&lt;br /&gt;  &lt;br /&gt;  }&lt;br /&gt;  out.append("&amp;lt;/select&gt;");&lt;br /&gt;  // hour&lt;br /&gt;  out.append("-&amp;lt;select name=\"");&lt;br /&gt;  out.append(name);&lt;br /&gt;  out.append("_hour\"&gt;");&lt;br /&gt;&lt;br /&gt;  for (int i=0;i&lt;24;i++) {&lt;br /&gt;   out.append("&amp;lt;option");&lt;br /&gt;   if (i==hour) out.append(" selected");&lt;br /&gt;   out.append("&gt;");&lt;br /&gt;   if (i&lt;10) out.append('0');&lt;br /&gt;   out.append(i);&lt;br /&gt;   out.append("&amp;lt;/option&gt;");&lt;br /&gt;  }&lt;br /&gt;  out.append("&amp;lt;/select&gt;:");  &lt;br /&gt;&lt;br /&gt;  // minute&lt;br /&gt;  out.append("&amp;lt;select name=\"");&lt;br /&gt;  out.append(name);&lt;br /&gt;  out.append("_minute\"&gt;");&lt;br /&gt;&lt;br /&gt;  for (int i=0;i&lt;60;i++) {&lt;br /&gt;   out.append("&amp;lt;option");&lt;br /&gt;   if (i==min) out.append(" selected");&lt;br /&gt;   out.append("&gt;");&lt;br /&gt;   if (i&lt;10) out.append('0');&lt;br /&gt;   out.append(i);&lt;br /&gt;   out.append("&amp;lt;/option&gt;");&lt;br /&gt;  }&lt;br /&gt;  out.append("&amp;lt;/select&gt;");  &lt;br /&gt;&lt;br /&gt;  return out.toString() ;  &lt;br /&gt; }&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-6787986455164498343?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/6787986455164498343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=6787986455164498343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/6787986455164498343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/6787986455164498343'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/07/sample-jsp-date-combo.html' title='Sample JSP Date Combo'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-5385323801510691868</id><published>2008-06-18T11:31:00.003+03:00</published><updated>2008-06-18T11:47:04.625+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Database JDBC'/><title type='text'>Convert Date object to Mysql Date Format</title><content type='html'>&lt;pre&gt;&lt;br /&gt; public static String toMysqlDateStr(Date date){&lt;br /&gt;  if (date==null) return "NULL";&lt;br /&gt;  SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");&lt;br /&gt;  return sqlValueWithQuotas(sdf.format(date));&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public static String sqlValueWithQuotas(Object obj){&lt;br /&gt;  if ( obj == null ) return "NULL";&lt;br /&gt;  &lt;br /&gt;  String str = obj.toString();&lt;br /&gt;  str.replaceAll("'", "\\'");&lt;br /&gt;  str = '\''+str+'\'';&lt;br /&gt;  &lt;br /&gt;  return str;&lt;br /&gt;  &lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-5385323801510691868?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/5385323801510691868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=5385323801510691868' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/5385323801510691868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/5385323801510691868'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/06/convert-date-object-to-mysql-date.html' title='Convert Date object to Mysql Date Format'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-467422194492082386</id><published>2008-06-14T19:55:00.001+03:00</published><updated>2008-06-14T20:42:04.054+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSP Servlet'/><title type='text'>JSP Sessions Example</title><content type='html'>Sessions are started automatically in JSP pages.&lt;br /&gt;You can access current session by prebuilt session object.&lt;br /&gt;&lt;br /&gt;Create sessions.jsp file on your Tomcat's webapps/ROOT directory :&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;%@page import="java.util.Date"%&gt;&lt;br /&gt;&lt;%&lt;br /&gt;    out.print("Session Creation Time:" + new Date(session.getCreationTime()));&lt;br /&gt;    out.print("&amp;lt;BR&amp;gt;");&lt;br /&gt;    out.print("Last accessed Time:" + new Date(session.getLastAccessedTime()));&lt;br /&gt;    out.print("&amp;lt;BR&amp;gt;");&lt;br /&gt;    out.print("Session ID:"+session.getId());&lt;br /&gt;%&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;and launch it (for example http://localhost:8080/sessions.jsp)&lt;br /&gt;&lt;br /&gt;it prints:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Session Creation Time:Sat Jun 14 19:28:06 EEST 2008&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Last accessed Time:Sat  Jun 14 19:33:34 EEST 2008&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Session ID:365A3F239D1E54FD43EA0F7CBA1931EF&lt;/span&gt;&lt;span style="color: rgb(102, 51, 255);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now we are able to access the session. We can store objects in session objects.&lt;br /&gt;This can help share objects between JSP pages.&lt;br /&gt;&lt;br /&gt;Sessions are widely used for authentication purposes.&lt;br /&gt;&lt;br /&gt;For example , let this be index.jsp as default page :&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;%&lt;br /&gt;String userName = request.getParameter("userName");&lt;br /&gt;String password = request.getParameter("password");&lt;br /&gt;if ("admin".equals(userName) &amp;amp;&amp;amp; "adminpass".equals(password) )  { //Session start&lt;br /&gt;    session.setAttribute("userName",userName);&lt;br /&gt;    session.setAttribute("role","admin");&lt;br /&gt;    response.sendRedirect("/main.jsp");&lt;br /&gt;}&lt;br /&gt;else out.print("Logon failed");&lt;br /&gt;%&amp;gt;&lt;br /&gt;&amp;lt;form action="index.jsp" method="post"&amp;gt;&lt;br /&gt;    Enter Username: &amp;lt;input name="userName"&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;    Enter Password: &amp;lt;input name="password"&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;    &amp;lt;input type="submit"&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The sample code above get username and password from user. If username and password are ok ,  username and role objects are stored in session and redirects to main.jsp otherwise sends an http error.&lt;br /&gt;&lt;br /&gt;And in main.jsp we authenticate user based on username and role :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%&lt;br /&gt;String userName = session.getAttribute("userName");&lt;br /&gt;String role = session.getAttribute("role");&lt;br /&gt;if ( userName == null || ! "admin".equals(role) ) {&lt;br /&gt;    response.sendError(403,"You are not authorized to view this page");&lt;br /&gt;    return;&lt;br /&gt;}&lt;br /&gt;%&amp;gt;&lt;br /&gt;&lt;br /&gt;This authentication part can be a seperate jsp and included in every page that needs authentication. Ideally , username , password and role lookup should be from database or from a directory service like LDAP or Active Directory.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://technorati.com/claim/bpexfsd9vq" rel="me"&gt;Technorati Profile&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-467422194492082386?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/467422194492082386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=467422194492082386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/467422194492082386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/467422194492082386'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/06/jsp-sessions-example.html' title='JSP Sessions Example'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-6149959506711928608</id><published>2008-06-09T11:16:00.007+03:00</published><updated>2008-06-11T17:46:37.311+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSP Servlet'/><title type='text'>Simple JSP Tutorial</title><content type='html'>This jsp accepts a number from an html form and prints squareroot of that number on the same page. Paste this code to file "first.jsp" and move it to tomcat's webapps/ROOT directory. Start tomcat and browse to localhost:8080/first.jsp. We put java code in &lt;% %&gt; block , other parts are standart html. &lt;%=variable %&gt; prints variable into html code just like &lt;%out.print(variable);%&gt; does.&lt;br /&gt;&lt;br /&gt;request , response and out objects are standart JSP objects that can be used to access http request and response.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;%@ page language="java" contentType="text/html; charset=ISO-8859-1"&lt;br /&gt;   pageEncoding="ISO-8859-1"%&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;Sample JSP&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;lt;%&lt;br /&gt;String strNumber= request.getParameter("number");&lt;br /&gt;double mySqrt = 0.0;&lt;br /&gt;if ( strNumber == null )&lt;br /&gt;    strNumber = "";&lt;br /&gt;else {&lt;br /&gt;    double dNumber = Double.parseDouble(strNumber);&lt;br /&gt;    mySqrt = Math.sqrt(dNumber);&lt;br /&gt;}&lt;br /&gt;%&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;form action="first.jsp" method="post"&amp;gt;&lt;br /&gt;Enter Number: &amp;lt;input type="text" name="number" value="&lt;span style="font-weight: bold;"&gt;&amp;lt;%=strNumber%&amp;gt;&lt;/span&gt;"&amp;gt;&lt;br /&gt;&amp;lt;input type="submit"&amp;gt;&lt;br /&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;The Sqrt is &lt;span style="font-weight: bold;"&gt;&amp;lt;%out.print(mySqrt);%&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-6149959506711928608?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/6149959506711928608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=6149959506711928608' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/6149959506711928608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/6149959506711928608'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/06/simple-jsp-tutorial.html' title='Simple JSP Tutorial'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-2213285295594336351</id><published>2008-05-31T17:49:00.006+03:00</published><updated>2008-06-11T17:49:04.750+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Database JDBC'/><title type='text'>JDBC Transaction</title><content type='html'>&lt;p class="MsoNormal"&gt;In a Database Server , a transaction is a sequence of operations. Those operations are considered to be a single unit of work which either finish all or nothing , that is a transaction is atomic either lives &lt;span style=""&gt; &lt;/span&gt;or never exists.&lt;br /&gt;&lt;br /&gt;For example you when your customer make a payment , you insert that payment into the &lt;u&gt;payment&lt;/u&gt; table and update customer's balance in the &lt;u&gt;customer&lt;/u&gt; table.  If your update failse after the insert, you have to delete the payment to retry the operation. To avoid this we use transctions:&lt;br /&gt;&lt;br /&gt;&lt;span style=""&gt;begin;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;insert into customer_payment values(100,now(),12.0);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;update customer set balance = balance+12.0 where customer_id = 100";&lt;/span&gt;&lt;o:p style="color: rgb(0, 0, 153);"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;commit;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;or something got wrong&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;rollback;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;These two sql statements above will take affect into tables when you commit, if you rollback there will be no effect no update and no insert.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;By default , every database in JDBC commits automatically. If you want to make use of transactions , you have to turn autocommit off. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Be careful , if you forget commit or rollback you can crash your db server because of full transaction log. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Here is the &lt;u&gt;example&lt;/u&gt; java jdbc transaction code.: &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;pre&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;        try {&lt;br /&gt;            Class.forName("com.mysql.jdbc.Driver");&lt;br /&gt;        } catch (ClassNotFoundException e2) {&lt;br /&gt;            e2.printStackTrace();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        Connection con = null;&lt;br /&gt;        java.sql.PreparedStatement stmtInsertPayment = null;&lt;br /&gt;        java.sql.PreparedStatement stmtUpdateBalance = null;&lt;br /&gt;        ResultSet rs = null;&lt;br /&gt;&lt;br /&gt;        try {&lt;br /&gt;            con = DriverManager.getConnection(&lt;br /&gt;                    "jdbc:mysql://localhost:3306/javacream", "javacream",&lt;br /&gt;                    "creampass");&lt;br /&gt;            con.setAutoCommit(false);&lt;br /&gt;            stmtInsertPayment = con&lt;br /&gt;                    .prepareStatement("insert into customer_payment values(?,?,now())");&lt;br /&gt;            stmtInsertPayment.setInt(1, 100);&lt;br /&gt;            stmtInsertPayment.setDouble(2, 12.0);&lt;br /&gt;            stmtInsertPayment.executeUpdate();&lt;br /&gt;&lt;br /&gt;            stmtUpdateBalance = con&lt;br /&gt;                    .prepareStatement("update customer set balance = balance + ? where customer_id = ?");&lt;br /&gt;&lt;br /&gt;            stmtUpdateBalance.setDouble(1, 12.0);&lt;br /&gt;            stmtUpdateBalance.setInt(2, 100);&lt;br /&gt;            stmtUpdateBalance.executeUpdate();&lt;br /&gt;            con.commit();&lt;br /&gt;            con.setAutoCommit(true);&lt;br /&gt;        } catch (SQLException e1) {&lt;br /&gt;            e1.printStackTrace();&lt;br /&gt;        } finally {&lt;br /&gt;            if (rs != null)&lt;br /&gt;                try {&lt;br /&gt;                    rs.close();&lt;br /&gt;                } catch (SQLException e) {&lt;br /&gt;                    e.printStackTrace();&lt;br /&gt;&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;            if (stmtInsertPayment != null)&lt;br /&gt;                try {&lt;br /&gt;                    stmtInsertPayment.close();&lt;br /&gt;                } catch (SQLException e) {&lt;br /&gt;                    e.printStackTrace();&lt;br /&gt;&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;            if (stmtUpdateBalance != null)&lt;br /&gt;                try {&lt;br /&gt;                    stmtUpdateBalance.close();&lt;br /&gt;                } catch (SQLException e) {&lt;br /&gt;                    e.printStackTrace();&lt;br /&gt;&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;            if (con != null)&lt;br /&gt;                try {&lt;br /&gt;                    con.close();&lt;br /&gt;                } catch (SQLException e) {&lt;br /&gt;                    e.printStackTrace();&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-2213285295594336351?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/2213285295594336351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=2213285295594336351' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2213285295594336351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2213285295594336351'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/05/jdbc-transaction.html' title='JDBC Transaction'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-3602802700294781043</id><published>2008-05-20T15:38:00.006+03:00</published><updated>2008-07-05T14:57:06.912+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java Tutorials'/><title type='text'>What is NullPointerException ?</title><content type='html'>NullPointerException is the most common exception of the Java world.&lt;br /&gt;&lt;br /&gt;It occurs when you try to call method or modify and attiribute of a null object.&lt;br /&gt;&lt;br /&gt;Here is an example :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;String strObject = &lt;/span&gt;&lt;b style="font-family: courier new;"&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: courier new;"&gt;;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b style="font-family: courier new;"&gt;&lt;span style=""&gt;&lt;br /&gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: courier new;"&gt; len = &lt;/span&gt;&lt;span style="font-family: courier new;"&gt;strObject&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;.length();&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;span style="font-family: courier new;"&gt;// throws a NullPointerException&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;The code tried to access a null string's length() method so it is illegal. There is no strObject so there is no length() of it.  &lt;span style=""&gt;&lt;span style=""&gt;        &lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;To avoid NullPointerException  you should check the of object if it is null before accessing it's members.&lt;br /&gt;&lt;br /&gt;For example in the jsp code below , we want to get userName from HTTP Post parameters , and print an error message if the length is less than 6 :&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;String userName = request.getParameter(&lt;/span&gt;&lt;span style=""&gt;"userName"&lt;/span&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; ( userName.length()&lt;6)&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;out.print(&lt;/span&gt;&lt;span style=""&gt;"Invalid Username"&lt;/span&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;   &lt;b&gt;&lt;span style=""&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="font-family: courier new;"&gt;}&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  This code fails when the user in logon page sends an empty string for userName.&lt;br /&gt;&lt;br /&gt;The code will be better if we check the object is null before access its method :&lt;br /&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;String userName = request.getParameter(&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;"userName"&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;);&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; ( &lt;span style="font-weight: bold;font-size:100%;" &gt;userName&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;==&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;|| userName.length()&lt;6)&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;out.print(&lt;/span&gt;&lt;span style=""&gt;"Invalid Username"&lt;/span&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;   &lt;b&gt;&lt;span style=""&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: courier new;" class="MsoNormal"&gt;&lt;span style=""&gt;}&lt;/span&gt;&lt;/p&gt;  Note that if statements exists after the first "true" reached , since this is an "OR" statement and does not run other part of If statement , otherwise &lt;span style=""&gt;userName.length()&lt;/span&gt;would throw exception in the if statement.&lt;br /&gt;&lt;span style=""&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-3602802700294781043?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/3602802700294781043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=3602802700294781043' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3602802700294781043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3602802700294781043'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/05/what-is-nullpointerexception.html' title='What is NullPointerException ?'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-1850011828363654156</id><published>2008-05-17T15:28:00.004+03:00</published><updated>2008-05-17T20:20:49.979+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSP Servlet'/><title type='text'>Escape HTML and XML in Java</title><content type='html'>HTML and XML escape format is widely used in web and XML transactions.&lt;br /&gt;&lt;br /&gt;There is a great utility for this purpose in Java world : &lt;a href="http://commons.apache.org/lang/"&gt;Lang package in apache commons project&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Download commons-lang and put the commons-lang-xxx.jar file in your classpath or in your project.&lt;br /&gt;&lt;br /&gt;The StringEscapeUtils class is your key class here.&lt;br /&gt;&lt;br /&gt;Use static escapeXml() , escapeHtml() , unescapeXml() , unescapeHtml() methods.&lt;br /&gt;&lt;br /&gt;String escaped = StringEscapeUtils.escapeXml("&lt;tag&gt;");&lt;br /&gt;&lt;br /&gt;Great &amp;amp; Lifesaving , thanks apache again !&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-1850011828363654156?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/1850011828363654156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=1850011828363654156' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/1850011828363654156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/1850011828363654156'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/05/escape-html-and-xml-in-java.html' title='Escape HTML and XML in Java'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-2326780899851173191</id><published>2008-05-16T01:01:00.008+03:00</published><updated>2008-09-05T13:01:27.251+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Database JDBC'/><title type='text'>Tomcat JDBC Connection Pooling</title><content type='html'>Connection pooling is a cool mechanism because it allows to us reuse db connections. In a DB server a database connection is an expensive thing because it consumes system resources. Also connection creation and closing are time consuming operations. Connection Pooling helps us to reduce number of concurrent connections and to escape from connection open/close by keeping connections alive.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tomcat.apache.org/"&gt;Apache Tomcat&lt;/a&gt;  is a great and ligthweight Java Application server for both development and production. Tomcat has an JDBC Connection Pooling mechanism. This feaute is configured in /META-INF/context.xml. Here is a sample:&lt;context docbase="/MyApplication" path="/MyApplication" reloadable="true"&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;&amp;lt;Context docBase=&amp;quot;/MyApp&amp;quot; path=&amp;quot;/MyApp&amp;quot; reloadable=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;Resource name=&amp;quot;jdbc/mydbresource&amp;quot; auth=&amp;quot;Container&amp;quot; type=&amp;quot;javax.sql.DataSource&amp;quot; factory=&amp;quot;org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory&amp;quot;&lt;br /&gt;username=&amp;quot;myusername&amp;quot; password=&amp;quot;mypass&amp;quot; driverClassName=&amp;quot;com.mysql.jdbc.Driver&amp;quot;&lt;br /&gt;url=&amp;quot;jdbc:mysql://localhost:3306/mydb?autoReconnect=true&amp;quot;&lt;br /&gt;maxWait=&amp;quot;1000&amp;quot;&lt;br /&gt;removeAbandoned=&amp;quot;true&amp;quot;&lt;br /&gt;maxActive=&amp;quot;30&amp;quot;&lt;br /&gt;maxIdle=&amp;quot;10&amp;quot;&lt;br /&gt;removeAbandonedTimeout=&amp;quot;10&amp;quot;&lt;br /&gt;logAbandoned=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;&lt;/context&gt;&amp;lt;&lt;context docbase="/MyApplication" path="/MyApplication" reloadable="true"&gt;/Context&lt;/context&gt;&amp;gt;&lt;br /&gt;&lt;context docbase="/MyApplication" path="/MyApplication" reloadable="true"&gt;docBase and path are your application.&lt;br /&gt;&lt;br /&gt;Resource name is the datasource name to be called in connection setup at your application. (arbitrary but give a meaningful name)&lt;br /&gt;&lt;br /&gt;autoReconnect: as the name implies , it causes to reopen the closed connections immediately. Mysql closes idle connections in 8 minutes. with this option connections reopened immediately when closed.&lt;br /&gt;&lt;br /&gt;maxWait: timeout for your java code to gett a connection from pool. if timeout reaches , an exception will be thrown.&lt;br /&gt;&lt;br /&gt;removeAbandoned: if set true , a connection is removed from the pool after removeAbandonedTimout idle seconds. Not for heavy load production environments. It is only useful for freshman developers who forget to close jdbc connections.&lt;br /&gt;&lt;br /&gt;logAbandoned: logs abondoned connections or statements. It consumes system resources , so should be false in mature production environments.&lt;br /&gt;&lt;br /&gt;At the java side , environment should be initialized first. This code can be run in static part :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            javax.sql.DataSource.DataSource ds = &lt;span style="font-weight: bold;"&gt;null&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;             javax.naming.Context initContext;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            &lt;span style="font-weight: bold;"&gt;try &lt;/span&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                initContext = &lt;span style="font-weight: bold;"&gt;new &lt;/span&gt;javax.naming.InitialContex();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                javax.naming.Context envContext = (javax.naming.Context) initContext.lookup("java:/comp/env");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                ds = (javax.sql.DataSource.DataSource) envContext.lookup("jdbc/mydbresource");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            } &lt;span style="font-weight: bold;"&gt;catch &lt;/span&gt;(Exception e) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                e.printStackTrace();&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And when you need a connection , reuse ds and get a connection from ds.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            Connection con = &lt;span style="font-weight: bold;"&gt;null&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            &lt;span style="font-weight: bold;"&gt;try &lt;/span&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                con = ds.getConnection();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            } &lt;span style="font-weight: bold;"&gt;catch &lt;/span&gt;(SQLException e) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                 e.printStackTrace();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            }&lt;/span&gt;&lt;/context&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-2326780899851173191?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/2326780899851173191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=2326780899851173191' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2326780899851173191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2326780899851173191'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/05/tomcat-jdbc-connection-pooling.html' title='Tomcat JDBC Connection Pooling'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-8171548303471473963</id><published>2008-05-12T22:54:00.009+03:00</published><updated>2008-06-14T20:11:32.824+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Database JDBC'/><title type='text'>Java Mysql JDBC Tutorial</title><content type='html'>&lt;p class="MsoNormal" style=""&gt;Here is a simple piece of code explaining Java JDBC with Mysql.&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;Our case is to send email to customers who have negative balance. You cannot send email to a customer more than once a day.&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;First we select customer list to send email , try to send their balance and update last_email_sent_date if mail sent.&lt;/p&gt;Our mysql server is on localhost and port 3306 (mysql default port)&lt;br /&gt;We have to grant access to required database or objects for creating a jdbc connection to server.&lt;br /&gt;&lt;br /&gt;here is the sample Mysql Command:&lt;br /&gt;&lt;br /&gt;grant all on customer to 'dbuser'@'localhost' identified by 'dbpass';&lt;br /&gt;&lt;br /&gt;which gives full access on all objects on customer database. Be carefull about that !&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;-----------------------------------------&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;/p&gt;&lt;pre&gt;&lt;pre&gt;&lt;br /&gt;  try {&lt;br /&gt;   Class.forName("com.mysql.jdbc.Driver");&lt;br /&gt;  } catch (ClassNotFoundException e) {&lt;br /&gt;   //driver not found&lt;br /&gt;   e.printStackTrace();&lt;br /&gt;   System.exit(-1);&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  Connection con = null;&lt;br /&gt;  Statement stmt = null;&lt;br /&gt;  ResultSet rs = null;&lt;br /&gt;&lt;br /&gt;  try {&lt;br /&gt;   con = DriverManager.getConnection(&lt;br /&gt;     "jdbc:mysql://localhost:3306/customer", "dbuser", "dbpass");&lt;br /&gt;   stmt = con.createStatement();&lt;br /&gt;   //get customers which you did not sent any emails today&lt;br /&gt;   rs = stmt&lt;br /&gt;     .executeQuery("select id , name , email , balance , last_mail_sent_date from customer where last_mail_sent_date &lt; curdate()");&lt;br /&gt;   while (rs.next()) {&lt;br /&gt;    int id = rs.getInt(1);//coloumns indexes starts from 1&lt;br /&gt;    String name = rs.getString(2);&lt;br /&gt;    //you can use column name to fecth the value , but using indexes is faster&lt;br /&gt;    String email = rs.getString("balance");&lt;br /&gt;    double balance = rs.getDouble(4);&lt;br /&gt;    if (balance &lt; 0.0) {&lt;br /&gt;     int sendMailStatus = sendMail(email, "Dear " + name&lt;br /&gt;       + " your balance is " + balance&lt;br /&gt;       + ".Please send some money");&lt;br /&gt;     if (sendMailStatus == 1) //mail is sent&lt;br /&gt;      //update the customer in order to not to send email again today&lt;br /&gt;      con.createStatement().executeUpdate(&lt;br /&gt;        "update customer set last_mail_sent_date = mow() where id = "&lt;br /&gt;          + id);&lt;br /&gt;&lt;br /&gt;    }//if balance&lt;br /&gt;   }//while&lt;br /&gt;&lt;br /&gt;  } catch (SQLException e) {&lt;br /&gt;   e.printStackTrace();&lt;br /&gt;  } finally { //clean up db connections and objects&lt;br /&gt;   if (rs != null)&lt;br /&gt;    try {&lt;br /&gt;     rs.close();&lt;br /&gt;    } catch (SQLException e) {&lt;br /&gt;     e.printStackTrace();&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;   if (stmt != null)&lt;br /&gt;    try {&lt;br /&gt;     stmt.close();&lt;br /&gt;    } catch (SQLException e) {&lt;br /&gt;     e.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;   if (con != null)&lt;br /&gt;    try {&lt;br /&gt;     con.close();&lt;br /&gt;    } catch (SQLException e) {&lt;br /&gt;     e.printStackTrace();&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;//check the proper JDBC Driver&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;             &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Mysql curdate() function returns todays date i.e. 2008-05-12&lt;br /&gt;&lt;p class="MsoNormal"&gt;now() function returns current date and time : 2008-05-12 23:10:28&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-8171548303471473963?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/8171548303471473963/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=8171548303471473963' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8171548303471473963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/8171548303471473963'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/05/java-mysql-jdbc-sample.html' title='Java Mysql JDBC Tutorial'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-3027491844451859315</id><published>2008-05-01T11:45:00.006+03:00</published><updated>2008-07-05T14:57:20.333+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java Tutorials'/><title type='text'>Sort a HashMap based on Keys or Values</title><content type='html'>Sort based on keys is simple , just dump the map into TreeMap (TreeMap is sorted by nature)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Verdana,Arial,Helvetica;"&gt;&lt;span style=";font-family:Verdana,Arial,Helvetica;font-size:85%;color:black;"   &gt;&lt;span class="spnMessageText" id="msg"&gt;Map myMap = new HashMap();&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Verdana,Arial,Helvetica;"&gt;&lt;span style=";font-family:Verdana,Arial,Helvetica;font-size:85%;color:black;"   &gt;&lt;span class="spnMessageText" id="msg"&gt;// put keys and values...&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Verdana,Arial,Helvetica;"&gt;&lt;span style=";font-family:Verdana,Arial,Helvetica;font-size:85%;color:black;"   &gt;&lt;span class="spnMessageText" id="msg"&gt;.....&lt;br /&gt;Map sortedMap = new TreeMap(myMap);&lt;br /&gt;&lt;br /&gt;If you want to sort your HashMap based on values :&lt;br /&gt;&lt;br /&gt;       HashMap map1 = new HashMap();&lt;br /&gt;       map1.put("cat",5);&lt;br /&gt;       map1.put("cow",4);&lt;br /&gt;       map1.put("dog",3);&lt;br /&gt;       map1.put("horse",2);&lt;br /&gt;     &lt;br /&gt;&lt;br /&gt;       List mpKeys = new ArrayList(map1.keySet());&lt;br /&gt;       List mpValues = new ArrayList(map1.values());&lt;br /&gt;     &lt;br /&gt;       HashMap map = new LinkedHashMap();&lt;br /&gt;       TreeSet sortedSet = new TreeSet(mapValues);&lt;br /&gt;       Object[] sortedArray = sortedSet.toArray();&lt;br /&gt;       int size = sortedArray.length;&lt;br /&gt;       // descending&lt;br /&gt;&lt;br /&gt;       for (int i=size-1; i&gt;=0; i--)&lt;br /&gt;       System.out.println(mpKeys.get(mpValues.indexOf(sortedArray[i]))+" "+sortedArray[i]);&lt;br /&gt;&lt;br /&gt;Any discussions will be appreciated.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-3027491844451859315?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/3027491844451859315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=3027491844451859315' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3027491844451859315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3027491844451859315'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/05/sort-hashmap-based-on-keys-or-values.html' title='Sort a HashMap based on Keys or Values'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-644542293619294285</id><published>2008-04-27T15:15:00.002+03:00</published><updated>2008-07-05T14:54:37.864+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java IO'/><title type='text'>Read and Write Files in Java</title><content type='html'>Here is a sample code I just wrote. This class copies one file to another.&lt;br /&gt;By understanding this code below , you will comphrend both reading from and writing to file concepts in java. I used FileInputStream and FileOutputStream in this code.&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;package&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; javacream;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; java.io.File;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;br /&gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; java.io.FileInputStream;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;br /&gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; java.io.FileOutputStream;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;br /&gt;import&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; java.io.IOException;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;class&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; FileUtil {&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;void&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; copyFile(String strInputFileName , String strOutputFileName) &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; IOException {&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;//Prepare file objects&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;File fInputFile =&lt;span style=""&gt;  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; File(strInputFileName);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;File fOutputFile = &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; File(strOutputFileName);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;//Prepare read write streams from file objects&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;FileInputStream fis = &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; FileInputStream(fInputFile);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;FileOutputStream fos = &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; FileOutputStream(fOutputFile);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; c;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// read from the input file and write to the output file &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;while&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; ((c = fis.read()) != -1) {&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;fos.write(c);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;//we are done , close the streams.&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;fis.close();&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;fos.close();&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;}&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;void&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; main(String[] args) {&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; {&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// use \\ for windows filenames , otherwise use single /&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;i&gt;copyFile&lt;/i&gt;(&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;"d:\\sample.txt"&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;, &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;"d:\\copyof_sample.txt"&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;catch&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; (IOException e) {&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                  &lt;/span&gt;e.printStackTrace();&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;}&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;}&lt;/span&gt;&lt;span style="font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Alternatively , you can use FileReader object and BufferedReader. The sample code below counts the number of lines of a given file.&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; lineCount(String fileName) &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; IOException{&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;//&lt;span style=""&gt;    &lt;/span&gt;file reader to read the file &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;FileReader input = &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; FileReader(fileName);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// Filter FileReader through a BufferedReader to read line by line&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                  &lt;/span&gt;BufferedReader bufRead = &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; BufferedReader(input);&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;String line; &lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// String that holds current file line&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; count = 0;&lt;span style=""&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// Line count &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// Read first line&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;line = bufRead.readLine();&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;count++;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                 &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;// Read through file one line at time. &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;while&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; (line != &lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;){&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;                &lt;/span&gt;line = bufRead.readLine();&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;                &lt;/span&gt;count++;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;         &lt;/span&gt;}&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;bufRead.close();&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt; count;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-644542293619294285?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/644542293619294285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=644542293619294285' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/644542293619294285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/644542293619294285'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/04/read-and-write-files-in-java.html' title='Read and Write Files in Java'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-3079706272603304438</id><published>2008-04-22T01:25:00.005+03:00</published><updated>2008-07-05T14:54:16.326+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java IO'/><title type='text'>Java HTTP GET  POST</title><content type='html'>As you know HTTP (Hypertext Transfer Protocol) is the transport protocol of www. Java has a strong support for HTTP.&lt;br /&gt;&lt;br /&gt;HTTP addresses uses addressing syntax called URL (for example http://www.java.com). HTTP is based on TCP.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;HTTP GET &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;This is the most widespred type of HTTP request. If you write http://www.java.com/ on your browser you have already made an HTTP GET Request.  Here is a sample :&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; String doGET(String strURL) &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; IOException {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;String response = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;InputStream in = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;// setup url connection&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;URL url = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; URL(strURL);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;HttpURLConnection urlConn = (HttpURLConnection) url&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;.openConnection();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;in = urlConn.getInputStream();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;StringBuilder sb = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; StringBuilder();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; i;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;while&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; ((i = in.read()) &gt; -1)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;sb.append((&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;char&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;) i);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;response = sb.toString();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;finally&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (in != &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;in.close();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;                  &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;catch&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (IOException e) {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;e.printStackTrace();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; response;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;  To run:&lt;br /&gt;       String getResult = doGET("http://javacream.blogspot.com/2008/04/java-http-get-post.html");&lt;br /&gt;       System.out.println(getResult);&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;HTTP POST&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When you fill a form on your browser and submit it , most probably you did an HTTP Post to remote server. HTML forms uses POST method alot. In POST method , instead of adding parameters at the and of the url , you post in your request body. So , URL and Parameters are seperate. Check out this sample code for HTPP Post   :&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; String doPost(String _url, String line)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; IOException {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;String response = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;; &lt;/span&gt;&lt;span style=""&gt;//for reading from remote host&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;InputStream in = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;; &lt;/span&gt;&lt;span style=""&gt;//for posting parameters to remote host&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;DataOutputStream out = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;// setup url connection. use POST to send forms data&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;URL url = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; URL(_url);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;HttpURLConnection urlConn = (HttpURLConnection) url&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;.openConnection();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;urlConn.setRequestMethod(&lt;/span&gt;&lt;span style=""&gt;"POST"&lt;/span&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;urlConn.setDoInput(&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;true&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;urlConn.setDoOutput(&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;true&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;urlConn.setRequestProperty(&lt;/span&gt;&lt;span style=""&gt;"Content-Type"&lt;/span&gt;&lt;span style=""&gt;,&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;"application/x-www-form-urlencoded"&lt;/span&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;out = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; DataOutputStream(urlConn.getOutputStream());&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;out.writeBytes(line);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;out.flush();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;in = urlConn.getInputStream();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;StringBuilder sb = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; StringBuilder();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; i;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;while&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; ((i = in.read()) &gt; -1)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;sb.append((&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;char&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;) i);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;response = sb.toString();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;finally&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (in != &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;in.close();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;catch&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (IOException e) {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;e.printStackTrace();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (out != &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;out.close();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;catch&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (IOException e) {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;e.printStackTrace();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;return&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; response;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;  To run:&lt;br /&gt;String result = doPost("http://www.someserver.com/cgi-bin/form", "userid=Test&amp;amp;Password=Test");&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Download a file using HTTP GET&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is a very simple sample code for downloading a file :&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;public&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;static&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;void&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; downloadFile(String _url, String fileName)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;throws&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; IOException {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;FileOutputStream &lt;span style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;outFile&lt;/span&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;outFile&lt;/span&gt; = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; FileOutputStream(fileName);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;InputStream in = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;// setup url connection. &lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;URL url = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; URL(_url);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;HttpURLConnection urlConn = (HttpURLConnection) url&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;.openConnection();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;urlConn.setUseCaches(&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;false&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;in = urlConn.getInputStream();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;int&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; i = -1;&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;while&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; ((i = in.read()) &gt; -1)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;span style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;outFile&lt;/span&gt;.write(i);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;finally&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (in != &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;in.close();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;catch&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (IOException e) {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;e.printStackTrace();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;if&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (&lt;span style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;outFile&lt;/span&gt; != &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;null&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;)&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;try&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;&lt;span style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;outFile&lt;/span&gt;.close();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;} &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;catch&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; (IOException e) {&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                             &lt;/span&gt;e.printStackTrace();&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;/p&gt;&lt;span style="font-weight: bold;"&gt;Using with proxies&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;You have to define proxy before you open connection to your URL.&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;pre style="font-family: courier new;"&gt;Properties sysProps = System.getProperties();&lt;br /&gt;sysProps.put("http.proxyHost","proxy.local.intranet") ;&lt;br /&gt;sysProps.put("http.proxyPort", "8080") ;&lt;br /&gt;&lt;br /&gt;&lt;span style=""&gt;URL url = &lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;new&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; URL(_url);&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;/pre&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;HttpURLConnection urlConn = (HttpURLConnection)url&lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;.openConnection();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;If the proxy requires Authentication than the following java example code should be added:&lt;br /&gt;&lt;/p&gt;&lt;pre style="font-family: courier new;"&gt;sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder();&lt;br /&gt;String basicAuthenticationUserPass =&lt;br /&gt;        encoder.encode("mydomain\\MYUSER:MYPASSWORD".getBytes());&lt;br /&gt;urlConn.setRequestProperty&lt;br /&gt;        ("Proxy-Authorization", "Basic " + basicAuthenticationUserPass );&lt;/pre&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-3079706272603304438?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/3079706272603304438/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=3079706272603304438' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3079706272603304438'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/3079706272603304438'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/04/java-http-get-post.html' title='Java HTTP GET  POST'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2086920107705172310.post-2347446913502872817</id><published>2008-04-17T16:34:00.003+03:00</published><updated>2008-07-05T14:57:41.761+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Basic Java Tutorials'/><title type='text'>Arrays in Java</title><content type='html'>&lt;span&gt;&lt;span&gt;Arrays in java are objects that hold fixed numbers of values of single type. Length of the array must be given at initalization , arrays cannot grow or shrink. Each element has an index value starting from 0 , so if you want to reach element 3 , index is 2..&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_6hT6PFtw2mg/SAdckIXxUhI/AAAAAAAAAAM/Tzfe2Xt_5eQ/s1600-h/arrays1.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_6hT6PFtw2mg/SAddSYXxUiI/AAAAAAAAAAU/whaY6zkiEMw/s1600-h/arrays1.jpg"&gt;&lt;img src="http://bp3.blogger.com/_6hT6PFtw2mg/SAddSYXxUiI/AAAAAAAAAAU/whaY6zkiEMw/s320/arrays1.jpg" alt="" id="BLOGGER_PHOTO_ID_5190219665928966690" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_6hT6PFtw2mg/SAdckIXxUhI/AAAAAAAAAAM/Tzfe2Xt_5eQ/s1600-h/arrays1.jpg"&gt;&lt;br /&gt;&lt;/a&gt;Simple array initializations :&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-style: italic; font-weight: bold;"&gt;&lt;span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;// array of integer with the capacity of 2 integers&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;int[] intArray = new int[2];&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;or ,&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span style="color: rgb(102, 0, 204); font-style: italic; font-weight: bold;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;// [] goes  to intArray which makes intArray[]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 204); font-weight: bold;"&gt;&lt;span&gt;int intArray[] = new int[2]; &lt;/span&gt;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;Element indexes start from 0(zero) , so the last element index of array above is 1,&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;intArray[0] = 1;&lt;br /&gt;intArray[1] = 2;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;there is no intArray[2] because there is no third element. Capacity is 2.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 51, 255); font-weight: bold;font-family:courier new;" &gt;System.out.println("the length of &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;intArray="+&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;intArray.length());&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 51, 255);font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;gives : the &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-style: italic;"&gt;&lt;span&gt;&lt;span style="font-family:courier new;"&gt;length of &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-style: italic;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;intArray=2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;You can initialize our sample intArray easily like that :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;&lt;span style="color: rgb(102, 0, 204); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;int intArray[] = new int[]{1,2};&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;The length of the array will be the same with number of elements you  specified.&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;You can also use Array classes' fill() method like this&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Array.fill(intArray,10);&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;which fills the array with the specified value.&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;Arrays can hold not only primitive types as stated above, but also objects.&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Arrays can also be multidimensional :&lt;br /&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;int[][] twoDimArray = { {1,2,3}, {4,5,6}, {7,8,9} };&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;or with String objects&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span&gt;&lt;span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;String[][] friends = {{"Mr. ", "Mrs. ", "Ms. "},&lt;br /&gt;   {"Brown", "Parker"}}; &lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span&gt;//&lt;/span&gt;&lt;span&gt;3x2 &lt;/span&gt;&lt;span&gt;Array of Strings&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;System.out.println(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;friends&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;[0][0] + &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;friends&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;[1][0]); &lt;span style="font-style: italic;"&gt;//Mr. Brown&lt;/span&gt;&lt;br /&gt;System.out.println(&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;friends&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;[0][2] + &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;&lt;span&gt;friends&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:courier new;" &gt;[1][1]); &lt;span style="font-style: italic;"&gt;//Ms. Parker&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Note that if you don't put elements in an array of objects all elements are null.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="color: rgb(102, 51, 255);font-family:courier new;" &gt;String[] strArray = new String[2];&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 51, 255);font-family:courier new;" &gt;strArray[0] = "first string";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 51, 255);font-family:courier new;" &gt;if ( strArray[1] == null )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 51, 255);font-family:courier new;" &gt;  System.out.println("Second string is null");&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;gives the output &lt;/span&gt;&lt;i&gt;&lt;span&gt;&lt;span&gt;Second string is null&lt;/span&gt; &lt;/span&gt;&lt;/i&gt;&lt;span&gt;when launched&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;To copy an array into another use &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;System.arraycopy() method. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;String[] strArray1 = new String[]{"banana","apple"};&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;String[] strArray2 = new String[2];&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 204); font-style: italic;font-family:courier new;" &gt;//copy array strtArray1  into strArray2&lt;br /&gt;//starting from element 0 in strArray1 and start copy &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 204); font-style: italic;font-family:courier new;" &gt;//to strArray2[0] with 2 elements&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;System.arraycopy(strArray1, 0 , strArray2, 0, 2); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;System.out.println(Arrays.toString(strArray2));&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;gives the output&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-style: italic;"&gt;[banana, apple]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You can also sort the array above using Arrays.sort() method&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;Arrays.sort(strArray1);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 204);font-family:courier new;" &gt;System.out.println(Arrays.toString(strArray1));&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;gives the output&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[apple, banana]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Note that elements of the array should be either primitive or implement Comperable interface to use Arrays.sort()&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;You can assign one element to another. But note that primitive types and immutable objects are assigned to value , while mutable objects are assigned to reference (just in the case of method call). Confused ? Look at the following sample code. int and String gets the only value of other element but mutable java.util.Date objects gets the reference of the other element and completely becomes the other element. (be to spoon and bend yourself) :&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;int[] intArray = new int[]{1,2}; &lt;span style="font-style: italic;"&gt;//array of primitive&lt;/span&gt;&lt;br /&gt;intArray[0] = intArray[1];&lt;br /&gt;intArray[1] = 1000;&lt;br /&gt;System.out.println("intArray[0]="+intArray[0]); &lt;span style="font-style: italic;"&gt;//prints 2 not 1000&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;String[] strArray = new String[]{"string1","string2"};&lt;span style="font-style: italic;"&gt;//array of immutable objects&lt;/span&gt;&lt;br /&gt;strArray[0] = strArray[1];&lt;br /&gt;strArray[1] = "Mr. Hide";&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span&gt;&lt;span&gt;//print string2 no mrhide!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;System.out.println("strArray[0]="+strArray[0]);&lt;br /&gt;&lt;br /&gt;java.util.Date[] dateArray = new &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;java.util.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Date[2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span&gt;&lt;span&gt;//array of mutable objects&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;long tenMinutesAgo = System.currentTimeMillis() - 10 * 60 * 1000 ;&lt;br /&gt;dateArray[0] = new Date();&lt;br /&gt;dateArray[1] = new Date(tenMinutesAgo);&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;//prints the current date&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;System.out.println("dateArray[0]"+dateArray[0].toString());&lt;br /&gt;dateArray[0] = dateArray[1];&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;//prints 10 minutes ago&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;System.out.println("dateArray[0]"+dateArray[0].toString());&lt;br /&gt;long twelfMinutesAgo = tenMinutesAgo - 10 * 60 * 1000 ;&lt;br /&gt;dateArray[1].setTime(twelfMinutesAgo);&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;//prints 20 minutes ago date1 equals date2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;System.out.println("dateArray[0]"+dateArray[0].toString());&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-family:courier new;" &gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.freewarejava.com/"&gt;&lt;img src="http://freewarejava.com/javaphone1.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2086920107705172310-2347446913502872817?l=javacream.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javacream.blogspot.com/feeds/2347446913502872817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2086920107705172310&amp;postID=2347446913502872817' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2347446913502872817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2086920107705172310/posts/default/2347446913502872817'/><link rel='alternate' type='text/html' href='http://javacream.blogspot.com/2008/04/arrays-in-java.html' title='Arrays in Java'/><author><name>Hakan ISIK</name><uri>http://www.blogger.com/profile/16581494528888152269</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_6hT6PFtw2mg/S3ND8qlih8I/AAAAAAAAAC4/jdPH_xSNlzU/S220/janus.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_6hT6PFtw2mg/SAddSYXxUiI/AAAAAAAAAAU/whaY6zkiEMw/s72-c/arrays1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
