Sunday, March 21, 2010

Java database connectivity

Front End : Java
Back End : MS Access 2003

  1. Java Application ---> JDBC API ---> JDBC -->ODBC -->Database (MS Access)
  2. First u need to setup ODBC Connection to ur MS Access Database
  3. Then u need to connect ur JDBC to ODBC using JdbcOdbcDriver provided with Java
  4. Setup ODBC : first thing is go to control Panel > Administrative tools > Data Sources ODBC
  5. Add the database u want from List of databases
  6. CLick on System DSN Tab
  7. Add Driver For Respected Database here in out case MS Access !
  8. Click on Configure > click on Select > select ur DATABASE FILE
  9. Click on Apply Now u have successfully setup Datasource to ur database!
  10. REMEMBER THE NAME OF DATASOURCE ! u will need it later!

Programming Part :

  • Import java.sql.*;
  • Register JDBC Driver :

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  • Setup Connection :

Connection con = DriverManager.getConnection("jdbc:odbc:DATASOURCE",Username,Password);

  • Execute Query :

Statement stm = con.createStatement();

RecordSet rs = stm.executeQuery("QUERY HERE");

  • Extract Data :

while(rs.next()) { }

  • To get Value Of Data Field of type String : rs.getString()
  • To get Value of Data field of type integer : rs.getInt()
  • To get Value of Data Field of type Double : rs.getDouble()
  • rs.close()
  • stmt.close()
  • con.close()

Thats It ! You Have Done !

Happy Databasing!

Saturday, March 20, 2010

Database Drivers

Hi ,
When we think of Database Connectivity we come across something terms something as , ODBC , Database Drivers etc...soo wht are they?? why we use it?? how to choose . . .all questions comes in mind..! i wil try to explain those things in short ! belive me its not for PROFESSIONALS in these fields..jst for beginners..or newbies...soo if ur a professional pls dnt BLAME ME ! n dont thik its KIDY THINGS . . .newbie struggles to learn tat..!

First thing :
  1. Consider you have MS Access Database
  2. You as a programmer Coding ur application in JAVA
  3. JAVA application needs to be connected to MS Access database
  4. JAVA (SUN Microsystem) MS Access (Microsoft) JAVA --> JAVA API which cant directly connect to MS Access rt?? soo how to ??
  5. You must have Drivers installed which can connect to MS Access
  6. Now JAVA only provides 1 basic driver (JDBC - ODBC bridge)
  7. it means..Your Java application will use This JDBC ODBC Bridge driver to connect to ODBC driver which in turn wil connect to database
  8. java application --> JAPA APi -->JDBC ODBC Bridge --> ODBC Driver --> Database
  9. But JDBC ODBC has some limitations too in such cases...wht u wil do???
  10. soo insted of using JDBC ODBC driver u wil check for Drivers that wil directly connect to database insted of connectin to ODBC First...rt?
  11. So u need to contact ur Database Vendor to knw wheather u have JAVA supported drivers or not . . if they have then fine..install it and access database as :
  12. JAVA --> JAVA API --> DRIVERS -->Database ( now u hv direct access to database) No ODBC used here
  13. But if ur database vendor dnt provide drivers for JAVA except ODBC then??
  14. Then u wil go for Third Party Dricvers which u need to install on ur client machine as follows : Java App --> JAVA API --> (Third Party Drivers) --> Database
(Your Application S/W) ----> API ---> Database Driver --->Database
Java ----> JDBC ---> ODBC ---> Database
Java ----> JDBC ---> THIRD PARTY---> Database

But how to get third party drivers information : well for example....u need to search for thirdparty driver for JDBC then go to vendor website :
http://developers.sun.com/product/jdbc/drivers

This was jst a short introduction of Database Drivers ! i wil publish a file shortly in which u can get information about Database , its connectivity and Driver information n installation tips!
Thank You!
Happy Databasing!...

Monday, March 8, 2010

Capture Snapshot of PC with Current Resolution . . .(Java Programming)

import java.awt.*;
//get current resolution . . .

Toolkit tk = Toolkit.getDefaultToolkit();
Dimension dm = tk.getScreenSize();
System.out.println(dm);

//Capture snapshot . . .

Robot robot = new Robot();
// Capture the screen shot of the area of the screen defined by the rectangle
BufferedImage bi=robot.createScreenCapture(new Rectangle(dm.width,dm.height));
ImageIO.write(bi, "jpg", new File("D:/imageTest.jpg"));