Showing posts with label JDBC. Show all posts
Showing posts with label JDBC. Show all posts
Sunday, March 23, 2014
This is a very popular question often asked in an interview. You also might be in a situation where you have to store the current date retrieved by java.util.Date in a database table where the datatype of the column is DATE . In that case you have to convert it to java.sql.Date . Also you might have to fetch date from database and then store it in a java.util.Date object . So this is a very important topic. Since both of these classes store the value of date in long milliseconds, so it is very easy to convert from one type to the other. Both of these classes have a method called getTime() which is used for conversion.
-------------------------------------------------------------------------------------------------------------------------
Java Source Code
-------------------------------------------------------------------------------------------------------------------------
public class DateConverter { public static void main(String[] args) { //creating instances of java.util.Date representing current date and time java.util.Date now = new java.util.Date(); System.out.println("Value of java.util.Date : " + now); //converting java.util.Date to java.sql.Date in Java java.sql.Date sqlDate = new java.sql.Date(now.getTime()); System.out.println("Converted value of java.sql.Date : " + sqlDate); //converting java.sql.Date to java.util.Date back java.util.Date utilDate = new java.util.Date(sqlDate.getTime()); System.out.println("Converted value of java.util.Date : " + utilDate); } }
-------------------------------------------------------------------------------------------------------------------------
Output
-------------------------------------------------------------------------------------------------------------------------
Value of java.util.Date : Sun Mar 23 11:35:46 IST 2014
Converted value of java.sql.Date : 2014-03-23
Converted value of java.util.Date : Sun Mar 23 11:35:46 IST 2014
Hope this helps. Happy coding :)
Labels:Java FAQs,JDBC | 0
comments
Friday, March 14, 2014
In our last post we discussed about how to obtain a database connection.After we have it, we can carry out different JDBC operations. Here we will discuss about
- How to insert new records/rows in database tables (INSERT operation)
- How to find a record/row in database tables (SELECT operation)
- How to update records/rows in tables (UPDATE operation)
- How to delete a record/row from tables (DELETE operation)
Different JDBC operations |
SQL is written for carrying out the operations and it is either passed to a Statement or a PreparedStatement. The latter is used as DBMS has to only recompile and carry out the task. There is no need of parsing if PreparedStatement is used. Also it prevents SQL injection. You should use it everywhere when you have to pass parameters. It is recommended to use in all public applications.
First create a database table Student as follows :
CREATE TABLE student(id number primary key,name varchar(30));
-------------------------------------------------------------------------------------------------------------------------
Java Source Code
-------------------------------------------------------------------------------------------------------------------------
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class StudentService { private Connection con; public StudentService(Connection con){ this.con = con; //database connection object } //Inserting new row in table with given id and name public void insertRecord(int id, String name) throws SQLException{ con.setAutoCommit(false); String sql = "INSERT INTO student VALUES(?,?)"; PreparedStatement ps = con.prepareStatement(sql); ps.setInt(1, id); ps.setString(2, name); ps.executeUpdate(); con.commit(); ps.close(); } //Find a record based on id public void findRecord(int id) throws SQLException{ String sql = "SELECT * FROM student WHERE id=?"; PreparedStatement ps = con.prepareStatement(sql); ps.setInt(1, id); ResultSet rs = ps.executeQuery(); if(rs.next()) System.out.println(rs.getInt("id")+"\t"+rs.getString("name")); else System.out.println("No records found"); ps.close(); } //Find all the records public void findAllRecord() throws SQLException{ con.setAutoCommit(false); String sql = "SELECT * FROM student"; PreparedStatement ps = con.prepareStatement(sql); ResultSet rs = ps.executeQuery(); while(rs.next()) System.out.println(rs.getInt("id")+"\t"+rs.getString("name")); ps.close(); } //Update a record with new name based on id public void updateRecord(int id, String name) throws SQLException{ con.setAutoCommit(false); String sql = "SELECT id,name FROM student WHERE id=?"; PreparedStatement ps=con.prepareStatement(sql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); ps.setInt(1, id); ResultSet rs=ps.executeQuery(); rs.updateString("name", name); rs.updateRow(); con.commit(); ps.close(); } //Delete a record based on id public void deleteRecord(int id) throws SQLException{ con.setAutoCommit(false); String sql = "DELETE FROM student WHERE id=?"; PreparedStatement ps = con.prepareStatement(sql); ps.setInt(1, id); ps.executeUpdate(); con.commit(); ps.close(); } }
-------------------------------------------------------------------------------------------------------------------------
Download Links
-------------------------------------------------------------------------------------------------------------------------
Labels:JDBC | 0
comments
Thursday, March 13, 2014
All those who are new to programming have dealt with data provided either from a file or command line. But you might ne in a situation where you have to store and access data from a persistent storage more easily and which is not a file, e.g. database. It fully depends on vendors and databse administrators how the data will be stored on the disk. It provides a much easier way to access and save data and coders dont have to think about storage. But before we go into saving and accessing data from a database, the first step is to create a connection with the databse from your java program. Here we will be using Oracle 11g Express edition as our database. We will use JDBC to obtain the connection.
Just as we need a device driver to use a hardwarte from a software, similarly we will need a driver to access the database. There are different types of drivers : type 1, type 2 , type 3 and type 4. For more about this visit Wikipedia JDBC driver . We will be using type 4 JDBC driver which is completely written in Java. If you have already installed Oracle you will find that in
![]() |
JDBC Architecture |
Just as we need a device driver to use a hardwarte from a software, similarly we will need a driver to access the database. There are different types of drivers : type 1, type 2 , type 3 and type 4. For more about this visit Wikipedia JDBC driver . We will be using type 4 JDBC driver which is completely written in Java. If you have already installed Oracle you will find that in
C:/oraclexe/app/oracle/product/11.2.0/server/jdbc/lib/ojdbc6.jar
Place that jar file in your classpath. Below is the code which will return the Connection object to the database
-------------------------------------------------------------------------------------------------------------------------
Java Source Code
-------------------------------------------------------------------------------------------------------------------------
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public final class Provider { static{ try { Class.forName("oracle.jdbc.OracleDriver"); System.out.println("Driver loaded successfully"); } catch (ClassNotFoundException e) { System.out.println("Failed to load driver"); } } public static Connection getCon(String userid, String pass) throws SQLException{ return DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:xe", userid, pass); } }
This is the fisrt and foremost step of using JDBC. Happy coding :)
Labels:JDBC | 0
comments
Subscribe to:
Posts
(Atom)
Total Pageviews
Followers
Labels
- Algorithms (7)
- Annotation (3)
- Files (6)
- Generics (3)
- Graphics2D (5)
- Graphics2D-Images (7)
- Inheritance (2)
- J2EE (9)
- Java 8 (4)
- Java FAQs (19)
- JDBC (3)
- Networking (2)
- Packages (1)
- Reflection (4)
- Security (7)
- Sorting (2)
- Swing (3)
- Threads (3)
- Utils (3)
Popular Posts
-
Today I will show you how you can implement Bankers algorithm in Java. The Banker's algorithm is a resource allocation and deadlock a...
-
------------------------- UPDATE ------------------------- I have updated the code on request of some followers so that they can directly...
-
Today I am going to show how to convert a postfix expression to an infix expression using stack in Java. In an earlier post here we ...
-
Today in this article I will tell you how to convert an infix expression to postfix expression using stack. This is an important applicat...
-
--------------------UPDATE------------------- I have updated my post so that now it can detect IE 11. This modification was necessary as t...
-
Today I am going to show you how you can generate and validate captcha. A CAPTCHA (an acronym for "Completely Automated Public Turin...
-
Today I am going to post a program that will be able to produce all the mColorings of a given graph G. What is mColoring : The problem st...
-
Today in this article I will show you how to create or develop a Tower of Hanoi game in Java. The Tower of Hanoi is a famous problem tha...