Sunteți pe pagina 1din 55

NETBEANS JAVA TUTORIALS FOR BEGINNERS

JAVA Coding simplified

NETBEANS JAVA TUTORIAL FOR BIGINNERS Manoj A.P

Author's Note

used this material for training program of the young and provided as an additional material for students.These tutorial collections proved extreamely helpfull for beginners of Java and Netbean programming platform. Anybody who would like to use and distribute this book can find link to download the current version of this e-book from authors blog/ twitter accounts. We also love to hear what you are thinking about this e-book. Thank you, MANOJ http://twiitter/manojMelattur

Contents

How to add nodes to a swing tree control in java Netbeans? create database and tables in Java DB/JDB ? 9 Make a Tabbed dialog in Java Netbeans 11 Database programming with Netbeans and Java 12

Play with Tables & views in Java DB 17 Playing with swing ComboBox in Netbeans: Adding an array to jComboBox 19 Utility Classes : Return multiple values using Vectors in Java 21 Develop applications using Netbeans persistence 23 How to use ArrayList in Java to store objects? 25 How to obtain value from an ArrayList into an Array in Java? 27 Functions returning ArrayList in JAVA 28 TreeSets for fast accessing and retrieval of objects in Java. 29 Getting the current date and time 30 Accessing date components with Calendar Object 33 Gregorian calendar and leap year in Java 35 Random numbers and Random class in Java 38 How to use Obervable and Observe Objects 39 How to Schedule a task in Java 43 How to Bind a Swing Table compenent with DB connection Netbeans 45 Binding selected columns of a table into Swing table in NB 46 Observing more than one class and types of changes in those classes. 47 Files and FileNameFilter Interface 52

Code is poetry

NETBEANS JAVA TUTORIALS

How to

How to add nodes to a swing tree control in java Netbeans?


http://techietalkcat.blogspot.in

A Swing Tree control will be a good option for an application in which users need to select items from a variety of groups. Using a swing Tree component in Netbeans is so easy. If you dont want touch much of the code you can use the Model property to set up your tree nodes. Lets begin just another Netbeans Java application 1. Add a Java Project- Java-Java Application (Leave the main class blank) 2. Add a New JFrame Form and Drag the Swing Tree component in Design mode. PLAY WITH MODEL The Model property of the JTree control let you customize your tree. Netbeans simplifies the use of the Tree and it will look like  Click on the Model property of the tree control and start adding the parent and childs.  You can create as many parent and child , just using space before the text you enter. DRESS THE NODES USING THE CODE. Here we use instance of defaultMutableTreeNode which extends Mutable Node interface. First up all we need the top level note, the root node which is the parent of all the others, then add childs. Finally we add all these to the Jtree1 using the Add method. Drop the following codes to the constructor of the JFrame form just after init() method.
DefaultMutableTreeNode top=new DefaultMutableTreeNode(Items);

DefaultMutableTreeNode Juices=new DefaultMutableTreeNode(Juices); DefaultMutableTreeNode ic=new DefaultMutableTreeNode(IceCream); top.add(ic); // add the IceCreame node to the top node as child top.add(Juices);

NETBEANS JAVA TUTORIALS


DefaultMutableTreeNode m=new DefaultMutableTreeNode(mango); DefaultMutableTreeNode p=new DefaultMutableTreeNode(Pinwapple); DefaultMutableTreeNode g=new DefaultMutableTreeNode(Grapes); DefaultMutableTreeNode o=new DefaultMutableTreeNode(Orange); Juices.add(m); //add mango child node to the Juice node as child Juices.add(p);
Juices.add(g); Juices.add(o); DefaultMutableTreeNode fs=new DefaultMutableTreeNode(Fruit Salad); DefaultMutableTreeNode fl=new DefaultMutableTreeNode(Falooda); DefaultMutableTreeNode ch=new DefaultMutableTreeNode(Choclate Shake); DefaultMutableTreeNode ms=new DefaultMutableTreeNode(Misc); ic.add(fs); ic.add(fl);//add Fruit Salad to the IceCreame node as child. ic.add(ch);

jTree2.setModel(new DefaultTreeModel(top));
DefaultMutableTreeNode Juices=new DefaultMutableTreeNode(Juices); DefaultMutableTreeNode ic=new DefaultMutableTreeNode(IceCream); top.add(ic); node as child // add the IceCreame node to the top

NETBEANS JAVA TUTORIALS


top.add(Juices); DefaultMutableTreeNode m=new DefaultMutableTreeNode(mango); DefaultMutableTreeNode p=new DefaultMutableTreeNode(Pinwapple); DefaultMutableTreeNode g=new DefaultMutableTreeNode(Grapes); DefaultMutableTreeNode o=new DefaultMutableTreeNode(Orange); Juices.add(m); node as child Juices.add(p); Juices.add(g); Juices.add(o); DefaultMutableTreeNode fs=new DefaultMutableTreeNode(Fruit Salad); DefaultMutableTreeNode fl=new DefaultMutableTreeNode(Falooda); DefaultMutableTreeNode ch=new DefaultMutableTreeNode(Choclate Shake); DefaultMutableTreeNode ms=new DefaultMutableTreeNode(Misc); ic.add(fs); ic.add(fl);//add Fruit Salad to the IceCreame node as child. ic.add(ch); //add mango child node to the Juice

jTree2.setModel(new DefaultTreeModel(top)); Now it will look like

NETBEANS JAVA TUTORIALS

GETTING THE PATH OF THE SELECTION So how would you get the selection path, it is easy .Drag an addition Label control  On the click event of the JTree put these freaky codes. TreePath tp; tp=jTree2.getSelectionPath(); DefaultMutableTreeNode t=new DefaultMutableTreeNode(tp); if (t!=null){ jLabel1.setText(t.toString());}

NETBEANS JAVA TUTORIALS

How to

create database and tables in Java DB/JDB ?


http://techietalkcat.blogspot.in

Most of the program require a database ,Java comes up with an inbuilt database called JavaDB. It is an unique SQL data base.Using the service menu you can operate the JDB in Netbeans Java IDE. Creating your first Database using JavaDB Access the services window from the package explorer /from Windows menu(Ctrl+5) .  Expand Data Base ->JavaDB. Database Connection in Netbeans  Right click the Java DB and use create database command to create user database. Create Java DB database a n d

## After the database creation a new connection will appeared in the just below the Driver folder.  Expand the connection node which will list different schema you can use. Schema  Expand one of the schema which will list Tables,Views and Procedures. Lets create the first table  Right click table and using create table command design your first table. Table dialog in Netbeans Data can be entered to the table from the view data window, where you can also execute SQL queries.(Using the right click of the Table folder you can access the window) Views  Views are the logical tables which may represent only a part of a table.Creating a view in JavaDB is so simple and easy.You can combine tables using the views.

NETBEANS JAVA TUTORIALS


Right click the views folder use create view window to create view based on the table or a group of tables. Avoid semicolon(;) at the end of the SQL statement. Create view dialog  Here is an example based on the product table.  View Name: Available Products  select * from product where available=TRUE Procedures Using procedures just run few SQL commands.Just right click the folder and select execute command and run.  You can connect and disconnect connection to the database or table using t h e connect/disconnect command. ## *Netbeans is a free Java IDE for developing Java application.Get your copy from Oracle.com

NETBEANS JAVA TUTORIALS

How to

Make a Tabbed dialog in Java Netbeans


http://techietalkcat.blogspot.in

Java Netbeans , an IDE that simplify the coding for Java application development, provide rich set of visual tools which can be used to design your windows with Swing and AWT containers and components. Tabbed windows is featured most of application , especially on Windows OS apps.So how do we use the Tabbed forms in Netbeans and Java. Most of the languages like Visual BASIC let us tabbed dialogues with single component. But in Javas way things becomes different.  Swing provides two types of components containers and controls .Containers just hold the controls.In order make tabbed dialog we need a tabbed container and and Internal Frame. Start a Java Project and leave the main class blank.  Add a JFrame Form to the project.Go to New - Swing GUI Form - JFrame Form.  Open the Form by double click in the Project - Source Packages - Form.  Drag a Tabbed Pane container to the JFrame Form to the Swing Pallet. No tabs appeared ,isnt it?  Now drag JInternal Frame from container and it will show up the tab.To change the tab title double click. In order to arrange controls on the Internal frame use panel container, it let you group items. ## Move between tabs ,using code is pretty simple; SelectedIndex(0) property let move through tabs.  We can also re position the tabs.

NETBEANS JAVA TUTORIALS

How to

Database programming with Netbeans and Java


http://techietalkcat.blogspot.in

You can create powerful database applications using the Java language and Netbeans IDE.Java uses JDBC for connecting SQL databases.The language has rich set of SQL and database functionality classes.This tutorial will teach how you can create a data base application. Project Components In our example we create an MDI Application which saves the Expense of date.It is a personal application. We use a Internal Frame and JFrameForm plus a split pan to add few buttons. In addition we had a class contact with members to add database functionality. Learn the complete tutorial and master Java and JDBC programming The MDI Window and Childs  Start a Java Application project with Swing GUI Forms; JFrame Form and then Internal Frame Form,Desktop pane from the Swing container pallets. Panel container with Buttons,list boxes, combo boxes and a text field to input data.  Also add the following code to the main form(JFrame Form) in order to load the child form in response to the button click private void NewXpnsButtonMouseClicked(java.awt.event. MouseEvent evt) { EntryForm ef=new EntryForm();jDesktopPane1.add(ef);ef. setVisible(true); } The Xpense Class  Add Java class to add database functionality with name Expenses.  In the Constructor please add the following code. Analyse the code. Connection con=null;Statement st=null;ResultSet re=null;public Xpenses() {try {Class.forName(org.apache.derby. jdbc.ClientDriver);con=DriverManager.getConnection(jdb

NETBEANS JAVA TUTORIALS


c:derby://localhost:1527/TechDB,tech,manujan);System. out.print(DataBase Connection established);} catch (Exception e) {System.out.print(DataBase error+e.getMessage());}} aaThe Class.Forname specifies the Database Driver.You can access this information using the Services Panel (Project Explorer). aaJust go to the connection properties.  The Connection object con specifies the database URL along with username and password. CURD Operations Now your program ready to accept connection from database.Lets Just do some CURD operations.  Add a method called AddNewXpense and add the following codes. public void AddNewXpense() {try {st=con.createStatement();String SQL;SQL=INSERT INTO TECH.XPENSE VALUES(+xd+,+XItem+,+X Cat+,+Xtype+,+Xamount+);st.executeUpdate(SQL);System.out.print(One record added);} catch (Exception e) {System.out.print(Error couccured:+e.getMessage());} aaHere st create and execute SQL statements. Simply insert the SQL commands. aaWe use string variable to avoid problem with SQL data type and Java types. st.executeUpdate(SQL); will execute the SQL statement and insert rows. ## You can do all the CURD operation like this. The complete Xpense class will look like package ChildForms; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet;

NETBEANS JAVA TUTORIALS


import java.sql.Statement; import java.util.Date; public class Xpenses { Connection con=null; Statement st=null; ResultSet re=null; public String xd=null; public String XItem=null;; public String XCat=null; public String Xtype=null;; String Xamount=null; public Xpenses() { try { Class.forName(org.apache.derby.jdbc.ClientDriver); con=DriverManager.getConnection(jdbc:derby://localhost:1527/TechDB,tech,manujan); System.out.print(DataBase Connection established); } catch (Exception e) { System.out.print(DataBase error+e.getMessage()); } } public void SetDate(String d){ this.xd=d; } public void SetItem(String it){ this.XItem=it; } public void SetCate(String ca){ this.XCat=ca; } public void SetType(String ty){ this.Xtype=ty;

NETBEANS JAVA TUTORIALS


} public void SetAmount(String am){ this.Xamount=am; } public void AddNewXpense() { try {

st=con.createStatement(); String SQL; SQL=INSERT INTO TECH.XPENSE VALUES(+xd+,+XItem+,+XCat+,+Xtype+,+Xamount+); st.executeUpdate(SQL); System.out.print(One record added); } catch (Exception e) { System.out.print(Error couccured:+e.getMessage()); }} } Xpense object and invoking memebers  Now you need to create an object of the class and use it to insert a row to database table  Add the following code to the Update button of the child form (Internal Form) your Frame

private void UpdateTButtonMouseClicked(java.awt.event.MouseEvent evt) { Xpenses x=new Xpenses(); try { x.SetDate(dateTxt.getText()); x.SetAmount( amountTxt.getText() ); x.SetCate(CatCom.getSelectedItem().toString()); x.SetType(TypeCom.getSelectedItem().toString()); x.SetItem(itemCom.getSelectedItem().toString());

NETBEANS JAVA TUTORIALS


System.out.println(Date.valueOf(dateTxt.getText()).toString()); x.AddNewXpense(); } catch (Exception e) { System.out.println(Reading error coccured:+e.getMessage()); } }  Now add some library for the support of the Java DB project which can be found on the db - lib folder of the Javasdk.  Right click your project from the from the package explorer and access project properties.  Access the Libraries add derby and derby client Jar using the Add Jar / Folder button.Now you are ready for first run OK ,start your database and run the project. }

NETBEANS JAVA TUTORIALS

How to

Play with Tables & views in Java DB


http://techietalkcat.blogspot.in

Database programming with Java-DB and Netbeans is so easy.Some times we had tables with too many columns which is not essential for the application.But the data is being used by other users.In this case logical views of tables are great help to the programmer. What is a view ?  Views are logical tables.We can create a view of a table with few columns needed based on a table or another view.View can be worked like table, but it didnt occupy any physical memory. View structure on service window Creating a view? In this example we used Java-DB default sample database and a table called MANUFACTURER. We want only few records who were in the city of Santa Clara.  Access the Service window - Expand your Database connection (sample)-APP (schema)  Expand the table node and then the Manufacturer sample table.  Right click the View node and create a new(SanatClara) Select manufacturer_id,name,state,email,rep from manufacturer where city = Santa Clara Now time to take a look at the view you just made.  Right click the view and select view data Preparing the Project  Start a Java Application [Leave the main class alone]  Add libraries to the project. Access the Project Properties - Libraries.  Add the derby client jar files to the project inorder to provide support for the JavaDB.  Create following instances above the constructor Connection c=null; Statement s=null; ResultSet rs=null;

NETBEANS JAVA TUTORIALS


Insert the following code in the constructor of the form try { Class.forName(org.apache.derby.jdbc.ClientDriver); c=DriverManager.getConnection(jdbc:derby://localhost:1527/sample,app,app); System.out.println(Connection established); } catch (Exception e) { System.out.println(JDB Error:+e.getMessage()); } aathis will set up the connection and ready for executing the queries and commands.  On the click event of the jButton insert the following try { String SQL=SELECT * FROM APP.SANTACLARA; s=c.createStatement(); rs= s.executeQuery(SQL); while(rs.next()){ System.out.println(rs.getString(MANUFACTURER_ ID)+ | +rs.getString(NAME)+ | +rs.getString(STATE)+ | +rs.getString(EMAIL)+ | +rs.getString(REP)); } } catch (Exception e) { System.out.println(Table Error:+e.getMessage()); } Now you can run the project. ## Just like in table you can perform all CURD operations on affected Try to create more views and add few rows on the Swing components rows.

NETBEANS JAVA TUTORIALS

How to

Playing with swing ComboBox in Netbeans: Adding an array to jComboBox


http://techietalkcat.blogspot.in

ComboBox component allows users to select an item from a list of item or enter a new text / value. ComboBox is an important GUI component for every desktop application.J ava provide jComboBox through the Javax.Swing package. We can add an item to combo at design mode and at run time too. Lets see the common method to add items to jComboBox at run time.  Start a Java Application Add a JFrame Form Combobox Command button.  Add the code to the click event of button for adding a single Item jComboBox2.addItem(Duma); Adding a single object or a group of object Sometimes we need to add object arrays to Combobox.Java let it do using the SetModel method.  Drag another button and drop these code to the Click event.  We are going to add a set of strings using the String class.then add it to the jComboBox.This is good practice instead of using Additem in a loop. String [] s=new String[5]; s[0]=Onam; s[1]=Vishu; s[2]=Bakreed; s[3]=Holly; s[4]=Christmas; jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(s));

NETBEANS JAVA TUTORIALS


Now Run the project Explore more Netbeans Tutorial on wwww.techietalkcat.blogspot.in

NETBEANS JAVA TUTORIALS

How to

Utility Classes : Return multiple values using Vectors in Java


http://techietalkcat.blogspot.in

Methods in Java is an essential feature at all. Methods can return object and value. Lets consider a situation where you want to return a specific rows from database table.There may be plenty of row say 50 or a 1000s. So we had huge data to gather and return.  Using Vector class we can store what ever object in it. It automatically increase its size as we add the data. Lets check out the method public Vector GetItems(){ Connection con=null; Statement st=null; ResultSet re=null; Vector li=new Vector(3,1); try { Class.forName(org.apache.derby.jdbc.ClientDriver); con=DriverManager.getConnection(jdbc:derby://localhost:1527/TechDB,tech,123); st=con.createStatement(); String SQL; SQL=SELECT CATE FROM TECH.XPENSE; re=st.executeQuery(SQL); while(re.next()){ li.addElement(re.getString(cate)); } System.out.println(li.size()+Elements fectched);

} catch (Exception e) {

NETBEANS JAVA TUTORIALS


System.out.println(Error couccured while fetching:+e. getMessage()); } return li; } aaHere the Vector object list will hold the data. aaThe initial size of the vector was 3 and it will increased by one.So we had plenty of place to hold the rows. ## The database portion of the method is already discussed ,please refer the previous posts.  Now time to call the methods. I invoke them in JFrame Forms construc tor,after the initCocomponent(). Xpenses x=new Xpenses(); Vector s=new Vector(); s= x.GetItems(); You can also add the vector object to directly to ComboBox.The defaultComboBoxModdel method support the Vector argument. CategoryCom.setModel(new DefaultComboBoxMod el(s)); Vectors cant be directly to output to console.You have to use Iterator or enumeration class to extract the values.

Iterator i=s.iterator(); while (i.hasNext()){ System.out.println(i.next()); }

Run your project & watch the resultst

NETBEANS JAVA TUTORIALS

How to

Develop applications using Netbeans persistence


http://techietalkcat.blogspot.in

Netbeans Java IDE speed up the application development.Along with some power up plugins the IDE make development process rapid and effective.We are talking about Netbeans Persistence feature.Persistence module make database application development so simple and easy.  Using the persistence wizard you can instantly creates persistence class for table.Using EntityManagerFactory and Entity Manager object we can operate the database with simplicity. Let me show how you can build an sample persistence operation. Start a Java application project  Leave the main class alone.(Project Name:Persistence)  Add a Swing GUI Form-JFrame Form  Drag a Swing JButton Lets create the sample Persistence class(We use the default sample database and Discount code table)  Go to File-New-Select Persistence-Entity Class From Database.  Select the database connection and add the tables , click Next  Add a new package (persistence will not work on default package) and hit finish button. Now you have the Entity class for the table you chosen. ## You also should note the persistence and find the persistence unit name property. You can view this by opening the XML file or just by Navigator(Ctrl+7). It will look like PersistencePU Now you are ready to code the action.Drop the following code in click event of the button on JFrame Form. EntityManagerFactory ef = Persistence.createEntityManagerFactory(PersistancePU); EntityManager em=ef.createEntityManager(); aaThis will create the EntityManager factory and EntityManager objects.Lets begin the Transaction.

NETBEANS JAVA TUTORIALS


The Transaction begin with calling of begin(). em.getTransaction().begin(); DiscountCode d=new DiscountCode(); d.setDiscountCode(D); d.setRate(BigDecimal.ZERO.valueOf(12.00)); em.persist(d); em.getTransaction().commit(); ef.close(); em.close(); The Discount Entity object was used to store value and then it is passed to the EntityManager. The Persist() will add the transaction to the table and it will be saved after the calling of commit(). Now check out the table for new entry.

NETBEANS JAVA TUTORIALS

How to

How to use ArrayList in Java to store objects?


http://techietalkcat.blogspot.in

ArrayList class extends the AbstractList interface, which implements List Interface (extends collection). List is a collection Frame work. Collection are are great help while you are working with a group of objects. In addition to the Collection class members, List also had many useful members. In general Arrays in Java lies under the category of static Array, in which the size of the Array should be given at before use it. At runtime user cant change the size at runtime. ArrayList can be used to define variable length arrays which can automatically resize at runtime. Adding Object into an ArrayList. ArrayList a=new ArrayList(); a.add(C Programming); a.add(Java Programming); a.add(C++ Programming); System.out.println(Size:+a.size()); a.add(Python Programming); a.add(0,Rubby); System.out.println(Size:+a.size()); Fetching elements int i; i=0; while(i<a.size()){ System.out.println(\n+a.get(i).toString()); i++; } } } The size of the ArrayList will increase automatically as new Objects were inserted to the List. Size() will get you the size of the array. The Objects can be fetched using get() method. a.add(0,Rubby); statement will insert the object as the first element into the ArrayList. Another example will make the operation on Integer Object in an ArrayList vivid.

NETBEANS JAVA TUTORIALS


ArrayList a1=new ArrayList(); a1.add(1); a1.add(12); a1.add(1); Fetching elements i=0; int s=0; while(i<a1.size()){ s+=Integer.parseInt(a1.get(i).toString()); i++; } System.out.println(\nSum=+s);

NETBEANS JAVA TUTORIALS

How to

How to obtain value from an ArrayList into an Array in Java?


http://techietalkcat.blogspot.in

The ArrayList is like a variable array, it let Java programmers to insert object any type. When handling a group of objects, Lists would be useful. We already saw the basic operation on lists on last post. This post will let you learn how to extract object into an Array. This can be accomplished using an Object array and toArray() method of the ArrayList. Object ob[]=a1.toArray(); int s=0; while(i<ob.length){ s+=((Integer)ob[i]).intValue(); i++; } System.out.println(\nSum=+s); The intValue() method of Wrapper class Integer utilized to get the Integer value from the Object.

NETBEANS JAVA TUTORIALS

How to

Functions returning ArrayList in JAVA


http://techietalkcat.blogspot.in

ArrayList is one of the interesting collections extensions which will help programmers to return multiple objects. In general all function s can return a single value in Java. By using the List collection object ArrayList we return multiple objects. In this example we have an array and a function which is declared as static in another class. The function will filter all the odd numbers into ArrayList and return. In effect our Java function would return as many objects we want. The Function body static ArrayList GetOdd(int x[]){ ArrayList out=new ArrayList(); int i=0; while(i<x.length){ if(x[i]%2!=0){ out.add(x[i]); }i++; } return out; } Calling the function int x[]={2,4,5,6,7,11}; ArrayList a=new ArrayList(); a=NewClass.GetOdd(x); int i; i=0; while(i<a.size()){ System.out.println(\n+a.get(i).toString()); i++; } } The GetOdd() function will fetch all odd elements into ArrayList. You can also fetch those elements into an array from List (See how)

NETBEANS JAVA TUTORIALS

How to

TreeSets for fast accessing and retrieval of objects in Java.


http://techietalkcat.blogspot.in

TreeSets are a collection framework, ideal for storing retrieving objects. It works faster compared to other collection frameworks. TreeSets implements Set interface; they can store unique values, in a sorted order. When programmer need large amount of sorted data to be stored and maintain, the TreeSet is recommended. Following code will illustrate use of Tree list TreeSet ts=new TreeSet(); ts.add(12);ts.add(1);ts.add(121);ts.add(22);ts.add(121);ts. add(-12); System.out.println(ts);

Output: [-12, 1, 12, 22, 121] TreeSets stores only unique values. Here in the out put the duplicate of 121 is removed from the list.

NETBEANS JAVA TUTORIALS

How to

Getting the current date and time


http://techietalkcat.blogspot.in

The Date class is an old class which included in the old versions Java. The Date will not help you to access individual members of the Date. The date can only return default string or in milliseconds. For accessing the most of the components of date you have to use the new Calendar Object. package date.example; import java.util.Date; /** * * @author Techietalk.in */ public class DateExample { /** * @param args the command line arguments */ public static void main(String[] args) { Date dt=new Date(); //Using default toString() System.out.println(Current Date is:+dt); //Date and Time in Milliseconds long d=dt.getTime(); System.out.println(Current Date[Milliseconds]:+d); } } The Date class has following methods for comparison After, before, equals, compareTo which uses Comparable interface (Date class). There are different constructors you can construct date value. package date.comparison; import java.util.Date; /**

NETBEANS JAVA TUTORIALS


* * @author Techietalk.in */ public class DateComparison { /** * @param args the command line arguments */ public static void main(String[] args) { Date d1=new Date(99,2,17); Date d2=new Date(99,2,1); if (d1.after(d2)==true){ System.out.println(Using After:The date is new[+d1+- than -+d2+]); } Date d3=new Date(2/1/2010); if (d1.before(d3)==true){ System.out.println(Using Before:This is an earlier date[+d1+- than -+d3+] ); } Date d4=new Date(); d4=d3; if(d4.equals(d4)==true){ System.out.println(Using Equal:Both dates are equal[+d3+- than -+d4+] ); } //Compare to method illustration Date d5=new Date(1/1/2010);

NETBEANS JAVA TUTORIALS


System.out.println(____________________________________ ______________\n ); if(d5.compareTo(d4)==0){ System.out.println(CompareTo[0]::Both dates are equal[+d5+- than -+d4+] ); } else if(d5.compareTo(d4)>0){ System.out.println(CompareTo[>0]:This is an newer date[+d5+- than -+d4+] ); } else if (d5.compareTo(d4)<0){ System.out.println(CompareTo[<0]::This is an earlier date[+d5+- than -+d4+] ); } } }

The CompareTo method returns 3 values as follows. CompareTo Function and returning values. If the calling object is equal with arg the function will return 0 If the calling object is an earlier than the given one and the function will return >0 If the calling object is a newer than the given one and the function will return <0 I believe that the two program illustration will clarify the use of Date class and methods.

NETBEANS JAVA TUTORIALS

How to

Accessing date components with Calendar Object


http://techietalkcat.blogspot.in

We already saw that how a Date object works and how the comparison of two dates is possible. The Calendar class support more components and operations on date and time. It is an abstract class which made conversion of time to useful components. Calendar provides different type of protected variables such as DAYS_OF_WEEK, DAYS_OF_YEAR, and MONTH etc. Calendar class didnt provide any public constructor to construct new date value. We have to use Overloaded Set method for constructing new date. To access the current date you simply call the getInstance method. Following program will illustrates how to use a Calendar Object. package calendarobject; import java.util.Calendar; import java.util.Locale; /** * * @author Techietalk.in */ public class CalendarObject { /** * @param args the command line arguments */ public static void main(String[] args) { String mName[]={Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec}; String Days[]={Sun,Mon,Tue,Wed,Thu,Fri,Sat}; Calendar Cal=Calendar.getInstance(); System.out.println(Cal.get(Calendar.YEAR)+ +mName[Cal.get(Calendar.MONTH)]+ +Cal.get(Calendar.DATE)+ +Days[Cal.get(Calendar.DAY_OF_WEEK)-1]);

NETBEANS JAVA TUTORIALS


System.out.println(Cal.get(Calendar.HOUR)+ :+Cal.get(Calendar.MINUTE)+:+Cal.get(Calendar.SECOND)); Calendar CDate =Calendar.getInstance(); CDate.add(Calendar.YEAR,1); System.out.println(CDate.get(Calendar.YEAR)); Calendar Edate = Calendar.getInstance(); System.out.println(__________________________________ ______\n); Edate.clear(); Edate.set(2013,7,18); System.out.println(Edate.get(Calendar.YEAR)+ +mName[Edate.get(Calendar.MONTH)-1]+ +Edate.get(Calendar.DATE)); } } aaSince Month and Day of the week are represented in integer values, we have taken necessary care to build Arrays for Days and Month. ## Calendar object made the date operation simple, we can access each of single com ponents for advanced date and time operations.

NETBEANS JAVA TUTORIALS

How to

Gregorian calendar and leap year in Java


http://techietalkcat.blogspot.in

Java had rich set of classes to perform advanced date and time operations. Gregoriancalender is one of the classes you can use where date and time operation required. The class inherited the features of Calendar object. Unlike Calendar class it has many constructors to full fill the needs of the programmers. GregorianCalendar (int year, int month, int dayOfMonth) GregorianCalendar (int year, int month, int dayOfMonth, int hours, int minutes) GregorianCalendar (int year, int month, int dayOfMonth, int hours, int minutes, int seconds)  GregorianCalender do all the Date and time operations, it also provide some extra function such as isLeapyear.  The Class can also use locales and Time zones as the arguments for the Gregoriancalender object. GregorianCalendar(Locale locale) GregorianCalendar(TimeZone timeZone) GregorianCalendar(TimeZone timeZone, Locale locale) The following example will clarify the use of GregorianCalendar class and objects. /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package georgiancalendar; import java.util.Calendar; import java.util.GregorianCalendar; import java.util.Locale; /** *

NETBEANS JAVA TUTORIALS


*/ public class GeorgianCalendar { /** * @param args the command line arguments */ public static void main(String[] args) { String months[] = { Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec}; GregorianCalendar gcal=new java.util.GregorianCalendar(2016, 1, 1); Locale loc=new Locale(Malayalam,CANADA); GregorianCalendar lg=new java.util.GregorianCalendar(loc); System.out.println(gcal.get(Calendar. YEAR)+/+months[gcal.get(Calendar.MONTH)]+/+gcal.get(Calendar.DATE ));

if(gcal.isLeapYear(gcal.get(Calendar.YEAR))){ System.out.println(This is a leap year !); } else { System.out.println(Not a leap year !); }

System.out.println(lg.get(Calendar.YEAR)+/+months[lg. get(Calendar.MONTH)]+/+lg.get(Calendar.DATE )+ +loc. getCountry()+ +loc.getDisplayLanguage());}}

NETBEANS JAVA TUTORIALS


## Locale is another class supplied with Java SDK, which stores locales information such as language and country to Calendar objects. The class possesses three con structors. ## There is also the Time Zone class which can hold time zone information. The two classes are useful when handling Calendar and GregorianCalender objects. ## The Locale class support many useful methods, such as getCountry, getDisplayLan guage, which extract Country and Language from the Locale objects.

NETBEANS JAVA TUTORIALS

How to

Random numbers and Random class in Java


http://techietalkcat.blogspot.in

Random is the pseudorandom number generating class which can produce random numbers. The class can generate float, int, Boolean, byte random numbers. The nextBoolean(), nextBytes(), nextLong(), nextDouble(), nextFloat(), nextGuassian() are the different functions used to generate random numbers. Following example will clarify the concept of Random class. package random.example; import java.util.Random; /** * * @author NEIT */ public class RandomExample { /** * @param args the command line arguments */ public static void main(String[] args) { Random r=new Random(); System.out.println(r.nextInt(100)); System.out.println(r.nextDouble()); System.out.println(r.nextGaussian()); System.out.println(r.nextLong()); } } The overloaded nextInt(arg) method can accept a value as argument , and it will generate random values take the argument as starting value. If you dont specified any starting value it will use current time starting string.

NETBEANS JAVA TUTORIALS

How to

How to use Obervable and Observe Objects


http://techietalkcat.blogspot.in  Observable class is an abstract class which is used to create object that can observe by another class.

In real world such application exists. Suppose in case of Shopping cart list, when new items added to the list, it should be notified to purchase object. Observable class can notify when changes undergoes with the help of setChanged () and notifyObserver () method. When notifyObservers called the changes were informed through update () method. Observable class should subclassed from java.utils. Observable and the Observer class implements the Observer interface.  There were only two golden rules for observable object, first one: while any changes undergoes to the observable, need to invoke setChanged.  Secondly setChanged should be called before notifyObservers method invoke, when it is ready to inform the observers. Without the SetChanged there will be no action take place. Using the add Observer you can add observers for the class. Following Scoreboard example will explain how the Observable class and Observer interface works. We had three classes namely Player Scorecard Scoreboard. Player Class package scoreboard; import java.util.Observable; /** *

NETBEANS JAVA TUTORIALS


* @author Techietalk.in */ public class Players extends Observable{ String player_name; int goals; String descr; String team; public Players( ) { } public void newGoals(String p,String te,int g){ goals=g; player_name=p; team=te; setChanged(); notifyObservers(this); } public void newGoals(String p,String te,int g,String des){ goals=g; player_name=p; descr=des; team=te; setChanged(); notifyObservers(this); } } Player class holds Player information. With newGoal method new goal details can be added to the observable object. The Scorecard is the observer class, whenever a core is added to the Player object using newGoal it will be reported to observer class [Scorecard] and the update method will print the result.

NETBEANS JAVA TUTORIALS


Scorecard package scoreboard; import java.util.Observable; import java.util.Observer; /** * * @authorTechietalk.in */ public class ScoreCard implements

Observer{

@Override public void update(Observable o, Object o1) { System.out.println(Players.class.cast(o1).player_ name +[+Players.class.cast(o1).team +] +(+Players. class.cast(o1).goals +)); if (Players.class.cast(o1).descr!=null){ System.out.print( -> lol +Players.class. cast(o1).descr); } } } ## Remember the observer class should implements the Observer interface and use up date () to perform action required. The Live Scoreboard class /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package scoreboard;

NETBEANS JAVA TUTORIALS


/** * * @authorTechietalk.in */ public class ScoreBoard { /** * @param args the command line arguments */ public static void main(String[] args) throws InterruptedException { Players p=new Players(); ScoreCard sc=new ScoreCard(); p.addObserver(sc); System.out.print(-----------------------\n SCORE BOARD\n-----------------------\n); p.newGoals(Messie,MU,1); Thread.sleep(3500); p.newGoals(Roonie,Arsenel, 5); Thread.sleep(4500); p.newGoals(Ronaldo,TotelDam, 1); Thread.sleep(4500); p.newGoals(Beckham,Manchester City, 2,Corner Kick); } } Finally the main class scoreboard will create objects of Player and Scorecard and add Scorecard object as observer. Whenever a new object player score is added it will automatically add the information to the scoreboard. We also used sleep method of Thread to place a delay between score display, so that it can be live. More source code will be make available through www.techietalk.in , you can too contribute to us.

NETBEANS JAVA TUTORIALS

How to

How to Schedule a task in Java


http://techietalkcat.blogspot.in  Scheduling task is an application of threading in Java. Timer and TimerTask classes provide functionality for scheduling the execution of a piece of code for future.

TimerTask class implements the runnable interface, so it can use the thread execution using the Timer class instance. If you are familiar with run (Threads and multi-threaded programming Java) method, will understand the working of a thread. It is a member defined by runnable. The overridden run method hold execution part of your task; you can drop those operations come under the task you want to schedule. package tasksheduler; import java.util.TimerTask; /** * * @author Techietalk.in */ public class Tasks extends TimerTask{ @Override public void run() { System.out.println(The Meeting was Over); }

} Now Schedule the task, can achieve using the Timer object which work exactly as a Thred.

NETBEANS JAVA TUTORIALS


public class TaskSheduler { package tasksheduler; import java.util.Timer; /** * * @author Techietalk.in */ public class TaskSheduler { /** * @param args the command line arguments */ public static void main(String[] args) { Tasks tsk=new Tasks(); Timer tm=new Timer(); tm.schedule(tsk,500); } } You can schedule as many tasks, just by sub classing the TimerClass. Note: The task will scheduled to run in every half second with initial delay of one second. 1 second=1000  second=500 Scheduling the task for a future date The schedule method has many forms. You can run a task on specific date using following format tm.schedule(task,Date as date);

//half second

NETBEANS JAVA TUTORIALS

How to

How to Bind a Swing Table compenent with DB connection Netbeans


http://techietalkcat.blogspot.in

Java Netbeans becomes an easy tool for database powered program development. You can create and manage database connections instantly with Service window using the connection wizard. ## By default Java Netbeans come with JDB , the derby database. ## Other database connection require the driver so databases like MS Access will not work without proper driver (jar file). The JavaDB tutorials will help you to tune your inbuilt Java Database. The bind feature allow you to display rows from your tables without coding. Lets figure it out  Add a Java Application Project ( leave the main class blank)  New File Swing GUI Form JFrame Form.  Now drag a Swing Table control from Swing Pallet  Access the service Window expand the Database Node  Start the Java DB service by clicking Start command (right click)  Now right click the Swing table Bind Elements, now you will get the bind dialog. Using the Click import data to form you can easily import rows from a connection.  Click the import data to form and select a connection and a table  Choose the columns you want to add to the table and hit OK Now run the project aaThe table component will hold all the rows from the connection. aaYou can see the connection navigator just below the service window which is help full for managing Query and list.

NETBEANS JAVA TUTORIALS

How to

Binding selected columns of a table into Swing table in NB


http://techietalkcat.blogspot.in

Binding in Java Netbeans refers to extracting the data from other components without pain of coding, i.e. no code is required. Netbeans will code for you. In our last Data Binding tutorial we demonstrate how you can bind a Database table using the service window and the binding feature. You can also bind the selected columns to Table control too. Lets do it  Add a New Java Application Project(Leave the main class option unchecked)  Add a new Swing Frame Form and drag a table control  Make sure that the Java DB or any database service is running.  Right click the table and choose the Table Contents. Use bound option to import rows from table.  Select the Column tab Insert for adding a new colum  Select the new column set the column from Expression and Title as Column head. You can also choose the width, height and type of the value for the column you inserted.  Close the window and Run the App

NETBEANS JAVA TUTORIALS

How to

Observing more than one class and types of changes in those classes.
http://techietalkcat.blogspot.in  An observer class can observe any no of classes as an observable class can add any number of observers

Observing interface and Observable class provide a great tool for a programmer, we already saw that how to of Observable in our last tutorial. A class can be observed by many observers, how about class that can observe more than one. Lets explore Here is two observable classes which can notify different type of changes occurred. Nos Class package ob1; import java.util.Observable; /** * * @author Techietalk.in */ public class Nos extends Observable{ int x; int y; public Nos() { } public void SetNos(int x,int y){ this.x=x; this.y=y; setChanged(); notifyObservers(new Integer(y)); } } OBSL Class package ob1;

NETBEANS JAVA TUTORIALS


import java.util.Observable; public class OBSL extends Observable{ int x; float f; String s; public OBSL() { } public OBSL(int x) { this.x = x; setChanged(); notifyObservers(this); } public void Set(int x){ this.x=x; setChanged(); notifyObservers(new Integer(x)); } public void Set(float x){ this.f=x; setChanged(); notifyObservers(new Float(x)); } public void Set(String x){ this.s=x; setChanged(); notifyObservers(new String(x)); } } No lets Observe the change they made, add a main class. import java.util.Observable; import java.util.Observer; import ob1.*;

NETBEANS JAVA TUTORIALS


public class Ob1 implements Observer{ public static void main(String[] args) { OBSL ob=new OBSL(); Nos n=new Nos(); Ob1 o=new Ob1(); ob.addObserver(o); n.addObserver(o); ob.Set(10); ob.Set(new Float(12.34)); ob.Set(Welcome); ob.Set(new Float(1.34)); n.SetNos(1, 1); n.SetNos(1, 1); } @Override public void update(Observable o, Object o1) { System.out.println(Integer:+Integer.class. cast(o1).toString() + changed!); System.out.println(Flaot:+Float.class.cast(o1). toString() + changed!); System.out.println(String:+String.class. cast(o1).toString() + changed!); System.out.println(\nInstance of Class +o.getClass().getName()+\n); System.out.println(Integer:+Integer.class. cast(o1).toString() + changed!); System.out.println(Flaot:+Float.class.cast(o1). toString() + changed!); System.out.println(String:+String.class. cast(o1).toString() + changed!); } }

NETBEANS JAVA TUTORIALS


Lets observe the result

The update method of the observer class returns some error. So we have to keep track of changes made according to the changing object as well as observing objects. Lets modify the Update method as follows if(OBSL.class.isInstance(o)){ System.out.println(Instance of Class +o.getClass().getName()+\n); if(Integer.class.isInstance(o1)==true){ System.out.println(Integer:+Integer.class. cast(o1).toString() + changed!); } else if(Float.class.isInstance(o1)) { System.out.println(Flaot:+Float.class.cast(o1). toString() + changed!); } else if(String.class.isInstance(o1)){ System.out.println(String:+String.class. cast(o1).toString() + changed!); } }

NETBEANS JAVA TUTORIALS


if(Nos.class.isInstance(o)){ System.out.println(\nInstance of Class +o.getClass().getName()+\n); if(Integer.class.isInstance(o1)==true){ System.out.println(Integer:+Integer.class. cast(o1).toString() + changed!); } else if(Float.class.isInstance(o1)) { System.out.println(Flaot:+Float.class.cast(o1). toString() + changed!); } else if(String.class.isInstance(o1)){ System.out.println(String:+String.class. cast(o1).toString() + changed!); } } } Lets Run it again

Here the isinstance method used to check the type of the changing objects and Observable class. So we can add necessary code for handling different classes and avoid the errors.

NETBEANS JAVA TUTORIALS

How to

Files and FileNameFilter Interface


http://techietalkcat.blogspot.in

We alreaddy seen how File Object work with directories and Files. Sometimes we need to filter out those files which lies under particular formats. It can be few .pdf files or .java files or .txt files. Java itself has the capability to handle these type of operations with the help of FileNameFilter Interface.  The interface defines a single method accept , which is called once for a file in a list and returns true for file in the directory specified by the directory that should included in the list. Now lets start with Netbeans Project, or an Eclipse project.  Start New Project with main class.  Add and an additional Java class to the project which implements the FileNameFilter interface and drop the code. public class FilefilterEx implements FilenameFilter{ String ext; public FilefilterEx(String ext){ this.ext=. + ext; } @Override public boolean accept(File file, String string) { return string.endsWith(ext); } The overriden method accept will check out the extention for files. The Object of the FIefilterEx can be used as an argument with list method of File object, which extratct files to an array of strings. You can pass the the filter class object with list which will fetch the files. Now do the main() part
String Dir=D:/Lycons;

File f1=new File(Dir);

NETBEANS JAVA TUTORIALS


FilefilterEx fil=new FilefilterEx(exe); String s[]=f1.list(fil); for(int i=0;i<s.length;i++){ System.out.println(s[i]); }
and the out put will be look like

200406.pdf 200407.pdf 200408.pdf 200409.pdf Advanced Javascript.pdf Encyclopedia Britannica 2009 - Book of the Year.pdf introduction2vb1.pdf j-classloader-ltr.pdf Java 2 - The Complete Reference (5th Edition).pdf Java Game Programming For Dummies .pdf ## There is an alternative for list method which offer sosame filtering capabilities. The only difference is with list is that ListFiles return files as an array of File objects instead of the array of String . The ListFiles method of File object comes with three signature File[ ] listFiles( ) File[ ] listFiles(FilenameFilter FFObj) File[ ] listFiles(FileFilter FObj) Rewrite the code of main method as String Dir=D:/Lycons; File f1=new File(Dir); FilefilterEx fil=new FilefilterEx(pdf); File s[]= f1.listFiles(fil); for(int i=0;i<s.length;i++){ System.out.println(s[i]); } The following method of applying Filter class is also leagal File s[]= f1.listFiles(new FilefilterEx(docx));

NETBEANS JAVA TUTORIALS

More tutorials will coming soon

S-ar putea să vă placă și