Tuesday, November 24, 2009

A List of JDBC Drivers

A List of JDBC Drivers
If you need to access a database with Java, you need a driver. This is a list of the drivers available, what database they can access, who makes it, and how to contact them.
IBM DB2
jdbc:db2://:/
COM.ibm.db2.jdbc.app.DB2Driver
JDBC-ODBC Bridge
jdbc:odbc:
sun.jdbc.odbc.JdbcOdbcDriver

Microsoft SQL Server
jdbc:weblogic:mssqlserver4:@:
weblogic.jdbc.mssqlserver4.Driver

Oracle Thin
jdbc:oracle:thin:@::
oracle.jdbc.driver.OracleDriver

PointBase Embedded Server
jdbc:pointbase://embedded[:]/
com.pointbase.jdbc.jdbcUniversalDriver

Cloudscape
jdbc:cloudscape:
COM.cloudscape.core.JDBCDriver

Cloudscape RMI
jdbc:rmi://:/jdbc:cloudscape:
RmiJdbc.RJDriver

Firebird (JCA/JDBC Driver)
jdbc:firebirdsql:[//[:]/]
org.firebirdsql.jdbc.FBDriver

IDS Server
jdbc:ids://:/conn?dsn=''
ids.sql.IDSDriver

Informix Dynamic Server
jdbc:informix-sqli://:/:INFORMIXSERVER=
com.informix.jdbc.IfxDriver

InstantDB (v3.13 and earlier)
jdbc:idb:
jdbc.idbDriver

InstantDB (v3.14 and later)
jdbc:idb:
org.enhydra.instantdb.jdbc.idbDriver

Interbase (InterClient Driver)
jdbc:interbase:///
interbase.interclient.Driver

Hypersonic SQL (v1.2 and earlier)
jdbc:HypersonicSQL:
hSql.hDriver

Hypersonic SQL (v1.3 and later)
jdbc:HypersonicSQL:
org.hsql.jdbcDriver

Microsoft SQL Server (JTurbo Driver)
jdbc:JTurbo://:/
com.ashna.jturbo.driver.Driver

Microsoft SQL Server (Sprinta Driver)
jdbc:inetdae::?database=
com.inet.tds.TdsDriver

Microsoft SQL Server 2000 (Microsoft Driver)
jdbc:microsoft:sqlserver://:[;DatabaseName=]
com.microsoft.sqlserver.jdbc.SQLServerDriver

MySQL (MM.MySQL Driver)
jdbc:mysql://:/
org.gjt.mm.mysql.Driver

Oracle OCI 8i
jdbc:oracle:oci8:@
oracle.jdbc.driver.OracleDriver

Oracle OCI 9i
jdbc:oracle:oci:@
oracle.jdbc.driver.OracleDriver

PostgreSQL (v6.5 and earlier)
jdbc:postgresql://:/
postgresql.Driver

PostgreSQL (v7.0 and later)
jdbc:postgresql://:/
org.postgresql.Driver

Sybase (jConnect 4.2 and earlier)
jdbc:sybase:Tds::
com.sybase.jdbc.SybDriver

Sybase (jConnect 5.2)
jdbc:sybase:Tds::
com.sybase.jdbc2.jdbc.SybDriver

To test your driver once it's installed, try the following code:


{
Class.forName("Driver name");
Connection con = DriverManager.getConnenction("jdbcurl","username","password");
//other manipulation using jdbc commands
}
catch(Exception e)
{
}

Monday, September 14, 2009

Connect to more than one database

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class TestConnectToMoreThanOneDatabase {

public static Connection getOracleConnection() throws Exception {
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:scorpian";
String username = "userName";
String password = "pass";
Class.forName(driver); // load Oracle driver
Connection conn = DriverManager.getConnection(url, username, password);
return conn;
}

public static Connection getMySqlConnection() throws Exception {
String driver = "org.gjt.mm.mysql.Driver";
String url = "jdbc:mysql://localhost/tiger";
String username = "root";
String password = "root";
Class.forName(driver); // load MySQL driver
Connection conn = DriverManager.getConnection(url, username, password);
return conn;
}

public static void main(String[] args) {

Connection oracleConn = null;
Connection mysqlConn = null;
try {
oracleConn = getOracleConnection();
mysqlConn = getMySqlConnection();
System.out.println("oracleConn=" + oracleConn);
System.out.println("mysqlConn=" + mysqlConn);
} catch (Exception e) {
// handle the exception
e.printStackTrace();
System.exit(1);
} finally {
// release database resources
try {
oracleConn.close();
mysqlConn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}

Calculator code using Swings

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Window;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.KeyStroke;

public class Calculator extends JFrame implements ActionListener{
// Variables
final int MAX_INPUT_LENGTH = 20;
final int INPUT_MODE = 0;
final int RESULT_MODE = 1;
final int ERROR_MODE = 2;
int displayMode;

boolean clearOnNextDigit, percent;
double lastNumber;
String lastOperator;

private JMenu jmenuFile, jmenuHelp;
private JMenuItem jmenuitemExit, jmenuitemAbout;

private JLabel jlbOutput;
private JButton jbnButtons[];
private JPanel jplMaster, jplBackSpace, jplControl;

/*
* Font(String name, int style, int size)
Creates a new Font from the specified name, style and point size.
*/

Font f12 = new Font("Times New Roman", 0, 12);
Font f121 = new Font("Times New Roman", 1, 12);

// Constructor
public Calculator()
{
/* Set Up the JMenuBar.
* Have Provided All JMenu's with Mnemonics
* Have Provided some JMenuItem components with Keyboard Accelerators
*/

jmenuFile = new JMenu("File");
jmenuFile.setFont(f121);
jmenuFile.setMnemonic(KeyEvent.VK_F);

jmenuitemExit = new JMenuItem("Exit");
jmenuitemExit.setFont(f12);
jmenuitemExit.setAccelerator(KeyStroke.getKeyStroke( KeyEvent.VK_X,
ActionEvent.CTRL_MASK));
jmenuFile.add(jmenuitemExit);

jmenuHelp = new JMenu("Help");
jmenuHelp.setFont(f121);
jmenuHelp.setMnemonic(KeyEvent.VK_H);

jmenuitemAbout = new JMenuItem("About Calculator");
jmenuitemAbout.setFont(f12);
jmenuHelp.add(jmenuitemAbout);

JMenuBar mb = new JMenuBar();
mb.add(jmenuFile);
mb.add(jmenuHelp);
setJMenuBar(mb);

//Set frame layout manager

setBackground(Color.gray);

jplMaster = new JPanel();

jlbOutput = new JLabel("0");
jlbOutput.setHorizontalTextPosition(JLabel.RIGHT);
jlbOutput.setBackground(Color.WHITE);
jlbOutput.setOpaque(true);

// Add components to frame
getContentPane().add(jlbOutput, BorderLayout.NORTH);

jbnButtons = new JButton[23];
// GridLayout(int rows, int cols, int hgap, int vgap)

JPanel jplButtons = new JPanel(); // container for Jbuttons

// Create numeric Jbuttons
for (int i=0; i < =9; i++)
{
// set each Jbutton label to the value of index
jbnButtons[i] = new JButton(String.valueOf(i));
}

// Create operator Jbuttons
jbnButtons[10] = new JButton("+/-");
jbnButtons[11] = new JButton(".");
jbnButtons[12] = new JButton("=");
jbnButtons[13] = new JButton("/");
jbnButtons[14] = new JButton("*");
jbnButtons[15] = new JButton("-");
jbnButtons[16] = new JButton("+");
jbnButtons[17] = new JButton("sqrt");
jbnButtons[18] = new JButton("1/x");
jbnButtons[19] = new JButton("%");

jplBackSpace = new JPanel();
jplBackSpace.setLayout(new GridLayout(1, 1, 2, 2));

jbnButtons[20] = new JButton("Backspace");
jplBackSpace.add(jbnButtons[20]);

jplControl = new JPanel();
jplControl.setLayout(new GridLayout(1, 2, 2 ,2));

jbnButtons[21] = new JButton(" CE ");
jbnButtons[22] = new JButton("C");

jplControl.add(jbnButtons[21]);
jplControl.add(jbnButtons[22]);

// Setting all Numbered JButton's to Blue. The rest to Red
for (int i=0; i < jbnButtons.length; i++) {
jbnButtons[i].setFont(f12);

if (i < 10)
jbnButtons[i].setForeground(Color.blue);

else
jbnButtons[i].setForeground(Color.red);
}

// Set panel layout manager for a 4 by 5 grid
jplButtons.setLayout(new GridLayout(4, 5, 2, 2));

//Add buttons to keypad panel starting at top left
// First row
for(int i=7; i < =9; i++) {
jplButtons.add(jbnButtons[i]);
}

// add button / and sqrt
jplButtons.add(jbnButtons[13]);
jplButtons.add(jbnButtons[17]);

// Second row
for(int i=4; i < =6; i++)
{
jplButtons.add(jbnButtons[i]);
}

// add button * and x^2
jplButtons.add(jbnButtons[14]);
jplButtons.add(jbnButtons[18]);

// Third row
for( int i=1; i < =3; i++)
{
jplButtons.add(jbnButtons[i]);
}

//adds button - and %
jplButtons.add(jbnButtons[15]);
jplButtons.add(jbnButtons[19]);

//Fourth Row
// add 0, +/-, ., +, and =
jplButtons.add(jbnButtons[0]);
jplButtons.add(jbnButtons[10]);
jplButtons.add(jbnButtons[11]);
jplButtons.add(jbnButtons[16]);
jplButtons.add(jbnButtons[12]);

jplMaster.setLayout(new BorderLayout());
jplMaster.add(jplBackSpace, BorderLayout.WEST);
jplMaster.add(jplControl, BorderLayout.EAST);
jplMaster.add(jplButtons, BorderLayout.SOUTH);

// Add components to frame
getContentPane().add(jplMaster, BorderLayout.SOUTH);
requestFocus();

//activate ActionListener
for (int i=0; i < jbnButtons.length; i++){
jbnButtons[i].addActionListener(this);
}

jmenuitemAbout.addActionListener(this);
jmenuitemExit.addActionListener(this);

clearAll();

//add WindowListener for closing frame and ending program
addWindowListener(new WindowAdapter() {

public void windowClosed(WindowEvent e)
{
System.exit(0);
}
}
);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} //End of Contructor Calculator

// Perform action
public void actionPerformed(ActionEvent e){
double result = 0;

if(e.getSource() == jmenuitemAbout){
JDialog dlgAbout = new CustomABOUTDialog(this, "About Java Swing Calculator", true);
dlgAbout.setVisible(true);
}else if(e.getSource() == jmenuitemExit){
System.exit(0);
}

// Search for the button pressed until end of array or key found
for (int i=0; i < jbnButtons.length; i++)
{
if(e.getSource() == jbnButtons[i])
{
switch(i)
{
case 0:
addDigitToDisplay(i);
break;

case 1:
addDigitToDisplay(i);
break;

case 2:
addDigitToDisplay(i);
break;

case 3:
addDigitToDisplay(i);
break;

case 4:
addDigitToDisplay(i);
break;

case 5:
addDigitToDisplay(i);
break;

case 6:
addDigitToDisplay(i);
break;

case 7:
addDigitToDisplay(i);
break;

case 8:
addDigitToDisplay(i);
break;

case 9:
addDigitToDisplay(i);
break;

case 10: // +/-
processSignChange();
break;

case 11: // decimal point
addDecimalPoint();
break;

case 12: // =
processEquals();
break;

case 13: // divide
processOperator("/");
break;

case 14: // *
processOperator("*");
break;

case 15: // -
processOperator("-");
break;

case 16: // +
processOperator("+");
break;

case 17: // sqrt
if (displayMode != ERROR_MODE)
{
try
{
if (getDisplayString().indexOf("-") == 0)
displayError("Invalid input for function!");

result = Math.sqrt(getNumberInDisplay());
displayResult(result);
}

catch(Exception ex)
{
displayError("Invalid input for function!");
displayMode = ERROR_MODE;
}
}
break;

case 18: // 1/x
if (displayMode != ERROR_MODE){
try
{
if (getNumberInDisplay() == 0)
displayError("Cannot divide by zero!");

result = 1 / getNumberInDisplay();
displayResult(result);
}

catch(Exception ex) {
displayError("Cannot divide by zero!");
displayMode = ERROR_MODE;
}
}
break;

case 19: // %
if (displayMode != ERROR_MODE){
try {
result = getNumberInDisplay() / 100;
displayResult(result);
}

catch(Exception ex) {
displayError("Invalid input for function!");
displayMode = ERROR_MODE;
}
}
break;

case 20: // backspace
if (displayMode != ERROR_MODE){
setDisplayString(getDisplayString().substring(0,
getDisplayString().length() - 1));

if (getDisplayString().length() < 1)
setDisplayString("0");
}
break;

case 21: // CE
clearExisting();
break;

case 22: // C
clearAll();
break;
}
}
}
}

void setDisplayString(String s){
jlbOutput.setText(s);
}

String getDisplayString (){
return jlbOutput.getText();
}

void addDigitToDisplay(int digit){
if (clearOnNextDigit)
setDisplayString("");

String inputString = getDisplayString();

if (inputString.indexOf("0") == 0){
inputString = inputString.substring(1);
}

if ((!inputString.equals("0") || digit > 0) && inputString.length() < MAX_INPUT_LENGTH){
setDisplayString(inputString + digit);
}


displayMode = INPUT_MODE;
clearOnNextDigit = false;
}

void addDecimalPoint(){
displayMode = INPUT_MODE;

if (clearOnNextDigit)
setDisplayString("");

String inputString = getDisplayString();

// If the input string already contains a decimal point, don't
// do anything to it.
if (inputString.indexOf(".") < 0)
setDisplayString(new String(inputString + "."));
}

void processSignChange(){
if (displayMode == INPUT_MODE)
{
String input = getDisplayString();

if (input.length() > 0 && !input.equals("0"))
{
if (input.indexOf("-") == 0)
setDisplayString(input.substring(1));

else
setDisplayString("-" + input);
}

}

else if (displayMode == RESULT_MODE)
{
double numberInDisplay = getNumberInDisplay();

if (numberInDisplay != 0)
displayResult(-numberInDisplay);
}
}

void clearAll() {
setDisplayString("0");
lastOperator = "0";
lastNumber = 0;
displayMode = INPUT_MODE;
clearOnNextDigit = true;
}

void clearExisting(){
setDisplayString("0");
clearOnNextDigit = true;
displayMode = INPUT_MODE;
}

double getNumberInDisplay() {
String input = jlbOutput.getText();
return Double.parseDouble(input);
}

void processOperator(String op) {
if (displayMode != ERROR_MODE)
{
double numberInDisplay = getNumberInDisplay();

if (!lastOperator.equals("0"))
{
try
{
double result = processLastOperator();
displayResult(result);
lastNumber = result;
}

catch (DivideByZeroException e)
{
}
}

else
{
lastNumber = numberInDisplay;
}

clearOnNextDigit = true;
lastOperator = op;
}
}

void processEquals(){
double result = 0;

if (displayMode != ERROR_MODE){
try
{
result = processLastOperator();
displayResult(result);
}

catch (DivideByZeroException e) {
displayError("Cannot divide by zero!");
}

lastOperator = "0";
}
}

double processLastOperator() throws DivideByZeroException {
double result = 0;
double numberInDisplay = getNumberInDisplay();

if (lastOperator.equals("/"))
{
if (numberInDisplay == 0)
throw (new DivideByZeroException());

result = lastNumber / numberInDisplay;
}

if (lastOperator.equals("*"))
result = lastNumber * numberInDisplay;

if (lastOperator.equals("-"))
result = lastNumber - numberInDisplay;

if (lastOperator.equals("+"))
result = lastNumber + numberInDisplay;

return result;
}

void displayResult(double result){
setDisplayString(Double.toString(result));
lastNumber = result;
displayMode = RESULT_MODE;
clearOnNextDigit = true;
}

void displayError(String errorMessage){
setDisplayString(errorMessage);
lastNumber = 0;
displayMode = ERROR_MODE;
clearOnNextDigit = true;
}

public static void main(String args[]) {
Calculator calci = new Calculator();
Container contentPane = calci.getContentPane();
// contentPane.setLayout(new BorderLayout());
calci.setTitle("Java Swing Calculator");
calci.setSize(241, 217);
calci.pack();
calci.setLocation(400, 250);
calci.setVisible(true);
calci.setResizable(false);
}

} //End of Swing Calculator Class.

class DivideByZeroException extends Exception{
public DivideByZeroException()
{
super();
}

public DivideByZeroException(String s)
{
super(s);
}
}

class CustomABOUTDialog extends JDialog implements ActionListener {
JButton jbnOk;

CustomABOUTDialog(JFrame parent, String title, boolean modal){
super(parent, title, modal);
setBackground(Color.black);

JPanel p1 = new JPanel(new FlowLayout(FlowLayout.CENTER));

StringBuffer text = new StringBuffer();
text.append("Calculator Information\n\n");
text.append("Developer: Rajesh Kumar Rolen\n");
text.append("Version: 1.0");

JTextArea jtAreaAbout = new JTextArea(5, 21);
jtAreaAbout.setText(text.toString());
jtAreaAbout.setFont(new Font("Times New Roman", 1, 13));
jtAreaAbout.setEditable(false);

p1.add(jtAreaAbout);
p1.setBackground(Color.red);
getContentPane().add(p1, BorderLayout.CENTER);

JPanel p2 = new JPanel(new FlowLayout(FlowLayout.CENTER));
jbnOk = new JButton(" OK ");
jbnOk.addActionListener(this);

p2.add(jbnOk);
getContentPane().add(p2, BorderLayout.SOUTH);

setLocation(408, 270);
setResizable(false);

addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e)
{
Window aboutDialog = e.getWindow();
aboutDialog.dispose();
}
}
);

pack();
}

public void actionPerformed(ActionEvent e)
{
if(e.getSource() == jbnOk) {
this.dispose();
}
}

}

Sunday, September 13, 2009

Connect JAVA with SQL server

You need to find an appropriate JDBC driver to be able to connect to Microsoft SQL Server using JDBC. Following are the preferred drivers for SQL Server:
Download JTDS

jTDS is an open source JDBC 3.0 driver for Microsoft SQL Server (6.5, 7, 2000 and 2005). Place jar file into your application classpath. java.sql package along with above driver helps connecting to database.
Microsoft SQL Server 2000 Driver for JDBC is a Type 4 JDBC driver. You need to place the jar files in your CLASSPATH variable.
The example below shows how to make a connection to Microsoft SQL Server 2000 using jTDS driver:

import java.sql.*;

public class testConnection
{
public static void main(String[] args)
{
DB db = new DB();
db.dbConnect(
"jdbc:jtds:sqlserver://localhost:1433/tempdb","sa","");
}
}

class DB
{
public DB() {}

public voidn dbConnect(String db_connect_string,
String db_userid, String db_password)
{
try
{
Class.forName("net.sourceforge.jtds.jdbc.Driver");
Connection conn = DriverManager.getConnection(
db_connect_string, db_userid, db_password);
System.out.println("connected");

}
catch (Exception e)
{
e.printStackTrace();
}
}
};

Saturday, September 5, 2009

SCJP Questions

# QUESTION 51:
Exhibit:
1 import java.io.IOException;
2 public class ExceptionTest(
3 public static void main (String[]args)
4 try (
5 methodA();
6 ) catch (IOException e) (
7 system.out.printIn("Caught IOException");
8 ) catch (Exception e) (
9 system.out.printIn("Caught Exception");
10 )
11 )
12 public void methodA () {
13 throw new IOException ();
14 )
Solve it and check resutlt

SCJP Questions

Given:
1 public class foo {
2 public static void main (string[]args)
3 try {return;}
4 finally {system.out.printIn("Finally");}
5 }
6 )
What is the result?
A. The program runs and prints nothing.
B. The program runs and prints "Finally"
C. The code compiles, but an exception is thrown at runtime.
D. The code will not compile because the catch block is missing.
Answer: B

SCJP Questions

Given:
1 switch (i) {
2 default:
3 System.out.printIn("Hello");
4 )
What are the two acceptable types for the variable i? (Choose Two)
A. Char
B. Byte
C. Float
D. Double
E. Object
Answer: A, B

SCJP Questions

# QUESTION 48:
Given:
1 int i= 1, j= 10 ;
2 do (
3 if (i++> --j) continue;
4 ) while (i<5);
After execution, what are the values for I and j?
A. i = 6 and j= 5
B. i = 5 and j= 5
C. i = 6 and j= 4
D. i = 5 and j= 6
E. i = 6 and j= 6
Answer: D

SCJP Questions

Exhibit:
1 public class test (
2 public static void main(string args[]) {
3 int 1= 0;
4 while (i) {
5 if (i==4) {
6 break;
7 )
8 ++i;
9 )
10
11 )
12 )
What is the value of i at line 10?
A. 0
B. 3
C. 4
D. 5
E. The code will not compile.
Answer: E

SCJP Questions

Given:
1 public class IfTest (
2 public static void main(string[]args) {
3 int x = 3;
4 int y = 1;
5 if (x = y)
6 system.out.printIn("Not equal");
7 else
8 system.out.printIn("Equal");
9 }
10 )
What is the result?
A. The output is "Equal"
B. The output in "Not Equal"
C. An error at line 5 causes compilation to fall.
D. The program executes but does not print a message.
Answer: C

SCJP Questions

Which statement is true for the class java.util.HashSet?
A. The elements in the collection are ordered.
B. The collection is guaranteed to be immutable.
C. The elements in the collection are guaranteed to be unique.
D. The elements in the collection are accessed using a unique key.
E. The elements in the collections are guaranteed to be synchronized.
Answer: C

SCJP Questions

You need to store elements in a collection that guarantees that no duplicates are stored and all elements
can be accessed in natural order. Which interface provides that capability?
A. Java.util.Map.
B. Java.util.Set.
C. Java.util.List.
D. Java.util.StoredSet.
E. Java.util.StoredMap.
F. Java.util.Collection.
Answer: D

SCJP Questions

Which method is an appropriate way to determine the cosine of 42 degrees?
A. Double d = Math.cos(42);
B. Double d = Math.cosine(42);
C. Double d = Math.cos(Math.toRadians(42));
D. Double d = Math.cos(Math.toDegrees(42));
E. Double d = Math.cosine(Math.toRadians(42));
Answer: C

SCJP Questions

Given:
1 string foo = "ABCDE";
2 foo.substring(3);
3 foo.concat("XYZ");
4 Type the value of foo at line 6.
Answer: ABCDE

SCJP Questions

Given:
1 public class X (
2 public object m () {
3 object o = new float (3.14F);
4 object [] oa = new object [1];
5 oa[0]= o;
6 o = null;
7 return oa[0];
8 }
9 }
When is the float object created in line 3, eligible for garbage collection?
A. Just after line 5
B. Just after line 6
C. Just after line 7 (that is, as the method returns)
D. Never in this method.
Answer: D

SCJP Questions

What writes the text "" to the end of the file "file.txt"?
A. OutputStream out= new FileOutputStream ("file.txt"); Out.writeBytes ("/n");
B. OutputStream os= new FileOutputStream ("file.txt", true); DataOutputStream out = new
DataOutputStream(os); out.writeBytes ("/n");
C. OutputStream os= new FileOutputStream ("file.txt"); DataOutputStream out = new
DataOutputStream(os); out.writeBytes ("/n");
D. OutputStream os= new OutputStream ("file.txt", true); DataOutputStream out = new
DataOutputStream(os); out.writeBytes ("/n");
Answer: B

SCJP Questions

Which constructs a DataOutputStream?
A. New dataOutputStream("out.txt");
B. New dataOutputStream(new file("out.txt"));
C. New dataOutputStream(new writer("out.txt"));
D. New dataOutputStream(new FileWriter("out.txt"));
E. New dataOutputStream(new OutputStream("out.txt"));
F. New dataOutputStream(new FileOutputStream("out.txt"));
Answer: F

Friday, September 4, 2009

SCJP Questions

The file "file.txt" exists on the file system and contsins ASCII text. Given:
1 try {
2 File f = new File("file.txt");
3 OutputStream out = new FileOutputStream(f, true);
4 }
5 catch (IOException) {} What is the result?
A. The code does not compile.
B. The code runs and no change is made to the file.
C. The code runs and sets the length of the file to 0.
D. An exception is thrown because the file is not closed.
E. The code runs and deletes the file from the file system.
Answer: A

SCJP Questions

Which can be used to encode charS for output?
A. Java.io.OutputStream.
B. Java.io.OutputStreamWriter.
C. Java.io.EncodeOutputStream.
D. Java.io.EncodeWriter.
E. Java.io.BufferedOutputStream.
Answer: B

SCJP Questions

Which gets the name of the parent directory file "file.txt"?
A. String name= File.getParentName("file.txt");
B. String name= (new File("file.txt")).getParent();
C. String name = (new File("file.txt")).getParentName();
D. String name= (new File("file.txt")).getParentFile();
E. Directory dir=(new File ("file.txt")).getParentDir();
String name= dir.getName();
Answer: B

SCJP Questions

# QUESTION 35:
You are assigned the task of building a panel containing a TextArea at the top, a label directly below it,
and a button directly below the label. If the three components are added directly to the panel. Which
layout manager can the panel use to ensure that the TextArea absorbs all of the free vertical space when
the panel is resized?
A. GridLayout.
B. CardLayout.
C. FlowLayout.
D. BorderLayout.
E. GridBagLayout.
Answer: E

SCJP Questions

Exhibit:
1 import java.awt*;
2
3 public class X extends Frame (
4 public static void main(string []args) (
5 X x = new X ();
6 X.pack();
7 x.setVisible(true);
8 )
9
10 public X () (
11 setlayout (new GridLayout (2,2));
12
13 Panel p1 = new panel();
14 Add(p1);
15 Button b1= new Button ("One");
16 P1.add(b1);
17
18 Panel p2 = new panel();
19 Add(p2);
20 Button b2= new Button ("Two");
21 P2.add(b2);
22
23 Button b3= new Button ("Three");
24 add(b3);
25
26 Button b4= new Button ("Four");
27 add(b4);
28 )
29 )
Which two statements are true? (Choose Two)
A. All the buttons change height if the frame height is resized.
B. All the buttons change width if the Frame width is resized.
C. The size of the button labeled "One" is constant even if the Frame is resized.
D. Both width and height of the button labeled "Three" might change if the Frame is resized.
Answer: C, D

SCJP Questions

Which is a method of the MouseMotionListener interface?
A. Public void mouseMoved(MouseEvent)
B. Public boolean mouseMoved(MouseEvent)
C. Public void mouseMoved(MouseMotionEvent)
D. Public boolean MouseMoved(MouseMotionEvent)
E. Public boolean mouseMoved(MouseMotionEvent)
Answer: A

SCJP Questions

# QUESTION 32:
Given the ActionEvent, which method allows you to identify the affected component?
A. GetClass.
B. GetTarget.
C. GetSource.
D. GetComponent.
E. GetTargetComponent.
Answer: C

SCJP Questions

Given:
1 public class returnIt (
2 returnType methodA(byte x, double y) (
3 return (short) x/y * 2;
4 )
5 )
What is the valid returnType for methodA in line 2?
A. Int
B. Byte
C. Long
D. Short
E. Float
F. Double
Answer: F

SCJP Questions

1 class super (
2 public int I = 0;
3
4 public super (string text) (
5 I = 1
6 )
7 )
8
9 public class sub extends super (
10 public sub (string text) (
11 i= 2
12 )
13
14 public static void main (straing args[]) (
15 sub sub = new sub ("Hello");
16 system.out. PrintIn(sub.i);
17 )
18 )
What is the result?
A. Compilation will fail.
B. Compilation will succeed and the program will print "0"
C. Compilation will succeed and the program will print "1"
D. Compilation will succeed and the program will print "2"
Answer: A

SCJP Questions

Given:
1 byte [] arry1, array2[];
2 byte array3 [][];
3 byte[][] array4;
If each array has been initialized, which statement will cause a compiler error?
A. Array2 = array1;
B. Array2 = array3;
C. Array2 = array4;
D. Both A and B
E. Both A and C
F. Both B and C
Answer: F

SCJP Questions

# QUESTION 28:
Which declaration prevents creating a subclass of an outer class?
A. Static class FooBar{}
B. Private class FooBar{}
C. Abstract public class FooBar{}
D. Final public class FooBar{}
E. Final abstract class FooBar{}
Answer: D

SCJP Questions

Given:
1 class super {
2 public float getNum() {return 3.0f;}
3 )
4
5 public class Sub extends Super {
6
7 )
Which method, placed at line 6, will cause a compiler error?
A. Public float getNum() {return 4.0f; }
B. Public void getNum () { }
C. Public void getNum (double d) { }
D. Public double getNum (float d) {retrun 4.0f; }
Answer: B

SCJP Questions

Exhibit:
1 public class test(
2 public int aMethod()[
3 static int i=0;
4 i++;
5 return I;
6 )
7 public static void main (String args[]){
8 test test = new test();
9 test.aMethod();
10.int j = test.aMethod();
11.System.out.printIn(j);
12.]
13.}
What is the result?
A. Compilation will fail.
B. Compilation will succeed and the program will print "0"
C. Compilation will succeed and the program will print "1"
D. Compilation will succeed and the program will print "2"
Answer: D

SCJP Questions

Given:
1 abstract class abstrctIt {
2 abstract float getFloat ();
3 )
4 public class AbstractTest extends AbstractIt {
5 private float f1= 1.0f;
6 private float getFloat () {return f1;}
7 }
What is the result?
A. Compilation is successful.
B. An error on line 6 causes a runtime failure.
C. An error at line 6 causes compilation to fail.
D. An error at line 2 causes compilation to fail.
Answer: C

SCJP Questions

You want subclasses in any package to have access to members of a superclass. Which is the most
restrictive access modifier that will accomplish this objective?
A. Public
B. Private
C. Protected
D. Transient
E. No access modifier is qualified
Answer: C

SCJP Questions

Which will declare a method that forces a subclass to implement it?
A. Public double methoda();
B. Static void methoda (double d1) {}
C. Public native double methoda();
D. Abstract public void methoda();
E. Protected void methoda (double d1){}
Answer: D

SCJP Questions

Given:
1 public class foo {
2 public static void main (String[]args) {
3 String s;
4 system.out.printIn ("s=" + s);
5 }
6 }
What is the result?
A. The code compiles and "s=" is printed.
B. The code compiles and "s=null" is printed.
C. The code does not compile because string s is not initialized.
D. The code does not compile because string s cannot be referenced.
E. The code compiles, but a NullPointerException is thrown when toString is called.
Answer: C

SCJP Questions

Given:
1 int index = 1;
2 int [] foo = new int [3]; 10.int bar = foo [index]; 11.int baz = bar + index; What is the result?
A. Baz has the value of 0
B. Baz has the value of 1
C. Baz has the value of 2
D. An exception is thrown.
E. The code will not compile.
Answer: B

SCJP Questions

Given:
1 public class test(
2 public static void main(string[]args){
3 string foo = args [1];
4 string foo = args [2];
5 string foo = args [3];
6 }
7 }
And command line invocation:
Java Test red green blue
What is the result?
A. Baz has the value of ""
B. Baz has the value of null
C. Baz has the value of "red"
D. Baz has the value of "blue"
E. Bax has the value of "green"
F. The code does not compile.
G. The program throws an exception.
Answer: G

SCJP Questions

Given:
1 int index = 1;
2 boolean[] test = new Boolean[3];
3 boolean foo= test [index]; What is the result?
A. Foo has the value of 0.
B. Foo has the value of null.
C. Foo has the value of true.
D. Foo has the value of false.
E. An exception is thrown.
F. The code will not compile.
Answer: D

SCJP Questions

Which three are valid declarations of a float? (Choose Three)
A. Float foo = -1;
B. Float foo = 1.0;
C. Float foo = 42e1;
D. Float foo = 2.02f;
E. Float foo = 3.03d;
F. Float foo = 0x0123;
Answer: A, D, F

SCJP Questions

Which two statements are reserved words in Java? (Choose Two)
A. Run
B. Import
C. Default
D. Implement
Answer: B, C

SCJP Questions

Given:
1 //point X
2 public class foo (
3 public static void main (String[]args) throws Exception {
4 printWriter out = new PrintWriter (new
5 java.io.outputStreamWriter (System.out), true;
6 out.printIn("Hello");
7 }
8 )
Which statement at PointX on line 1 allows this code to compile and run?
A. Import java.io.PrintWriter;
B. Include java.io.PrintWriter;
C. Import java.io.OutputStreamWriter;
D. Include java.io.OutputStreamWriter;
E. No statement is needed.
Answer: A

SCJP Questions

1 interface foo {
2 int k = 0;
3 ]
4
5 public class test implements Foo (
6 public static void main(String args[]) (
7 int i;
8 Cert cert = new test ();
9 i= Cert.k;
10.i= Cert.k;
11.i= Foo.k;
12.)
13.)
14.
What is the result?
A. Compilation succeeds.
B. An error at line 2 causes compilation to fail.
C. An error at line 9 causes compilation to fail.
D. An error at line 10 causes compilation to fail.
E. An error at line 11 causes compilation to fail.
Answer: A

SCJP Questions

Exhibit:
1 public class enclosingone (
2 public class insideone{}
3 )
4 public class inertest(
5 public static void main (string[]args)(
6 enclosingone eo= new enclosingone ();
7 //insert code here
8 )
9 )
Which statement at line 7 constructs an instance of the inner class?
A. InsideOnew ei= eo.new InsideOn();
B. Eo.InsideOne ei = eo.new InsideOne();
C. InsideOne ei = EnclosingOne.new InsideOne();
D. EnclosingOne.InsideOne ei = eo.new InsideOne();
Answer: D

SCJP Questions

Given:
1 package foo;
2
3 public class Outer (
4 public static class Inner (
5 )
6 )
Which statement is true?
A. An instance of the Inner class can be constructed with "new Outer.Inner ()"
B. An instance of the inner class cannot be constructed outside of package foo.
C. An instance of the inner class can only be constructed from within the outer class.
D. From within the package bar, an instance of the inner class can be constructed with "new inner()"
Answer: A

SCJP Questions

A. An anonymous inner class may be declared as final.
B. An anonymous inner class can be declared as private.
C. An anonymous inner class can implement multiple interfaces.
D. An anonymous inner class can access final variables in any enclosing scope.
E. Construction of an instance of a static inner class requires an instance of the enclosing outer class.
Answer: D

SCJP Questions

Which two demonstrate an "is a" relationship? (Choose Two)
A. public interface Person { }
public class Employee extends Person { }
B. public interface Shape { }
public class Employee extends Shape { }
C. public interface Color { }
public class Employee extends Color { }
D. public class Species { }
public class Animal (private Species species;)
E. interface Component { }
Class Container implements Component (
Private Component[ ] children;
)
Answer: D, E

SCJP Questions

Given:
1 class BaseClass {
2 Private float x = 1.0f ;
3 protected float getVar ( ) ( return x;)
4 }
5 class Subclass extends BaseClass (
6 private float x = 2.0f;
7 //insert code here
8 )
Which two are valid examples of method overriding? (Choose Two)
A. Float getVar ( ) { return x;}
B. Public float getVar ( ) { return x;}
C. Float double getVar ( ) { return x;}
D. Public float getVar ( ) { return x;}
E. Public float getVar (float f ) { return f;}
Answer: B, D

SCJP Questions

1 public class MethodOver {
2 public void setVar (int a, int b, float c) {
3 }
4 }
Which two overload the setVar method? (Choose Two)
A. Private void setVar (int a, float c, int b) { }
B. Protected void setVar (int a, int b, float c) { }
C. Public int setVar (int a, float c, int b) (return a;)
D. Public int setVar (int a, int b, float c) (return a;)
E. Protected float setVar (int a, int b, float c) (return c;)
Answer: A, C

SCJP Questions

Given:
1 public class ConstOver {
2 public ConstOver (int x, int y, int z) {
3 }
4 }
Which two overload the ConstOver constructor? (Choose Two)
A. ConstOver ( ) { }
B. Protected int ConstOver ( ) { }
C. Private ConstOver (int z, int y, byte x) { }
D. Public Object ConstOver (int x, int y, int z) { }
E. Public void ConstOver (byte x, byte y, byte z) { }
Answer: A, C

SCJP Questions

1 public class test {
2 public static void add3 (Integer i) }
3 int val = i.intValue ( );
4 val += 3;
5 i = new Integer (val);
6 }
7
8 public static void main (String args [ ] ) {
9 Integer i = new Integer (0);
10 add3 (i);
11 system.out.printIn (i.intValue ( ) );
12 }
13 )
What is the result?
A. Compilation will fail.
B. The program prints "0".
C. The program prints "3".
D. Compilation will succeed but an exception will be thrown at line 3.
Answer: B

SCJP Questions

1 Public class test (
2 Public static void stringReplace (String text) (
3 Text = text.replace ('j' , 'i');
4 )
6 public static void bufferReplace (StringBuffer text) (
7 text = text.append ("C")
8 )
9
10 public static void main (String args[]} (
11 String textString = new String ("java");
12 StringBuffer text BufferString = new StringBuffer ("java");
13
14 stringReplace (textString);
15 BufferReplace (textBuffer);
16
17 System.out.printLn (textString + textBuffer);
18 }
19 )
What is the output?
Answer: JAVAJAVA

SCJP Questions

1 public class Foo {
2 public static void main (String [] args) {
3 StringBuffer a = new StringBuffer ("A");
4 StringBuffer b = new StringBuffer ("B");
5 operate (a,b);
6 system.out.printIn{a + "," +b};
7 )
8 static void operate (StringBuffer x, StringBuffer y) {
9 x.append {y};
10 y = x;
11 )
12 }
What is the result?
A. The code compiles and prints "A,B".
B. The code compiles and prints "A,A".
C. The code compiles and prints "B,B".
D. The code compiles and prints "AB,B".
E. The code compiles and prints "AB,AB".
F. The code does not compile because "+" cannot be overloaded for StringBuffer.
Answer: D

SCJP Questions

Given
1 Public class test (
2 Public static void main (String args[]) (
3 System.out.printIn (6 ^ 3);
4 )
5 )
What is the output?
Answer: 5

SCJP Questions

Exhibit :
1 public class test (
2 private static int j = 0;
3
4 private static boolean methodB(int k) (
5 j += k;
6 return true;
1 )
2
3 public static void methodA(int i) {
4 boolean b:
5 b = i < 10 | methodB (4);
6 b = i < 10 || methodB (8);
7 )
8
9 public static void main (String args[] } (
10 methodA (0);
11 system.out.printIn(j);
12 )
13 )
What is the result?
A. The program prints "0"
B. The program prints "4"
C. The program prints "8"
D. The program prints "12"
E. The code does not complete.
Answer: B

SCJP Questions

Given:
Integer i = new Integer (42);
Long 1 = new Long (42);
Double d = new Double (42.0);
Which two expressions evaluate to True? (Choose Two)
A. (i ==1)
B. (i == d)
C. (d == 1)
D. (i.equals (d))
E. (d.equals (i))
F. (i.equals (42))
Answer: D, E

SCJP Questions

Given:
1 public class test (
2 public static void main (String args[]) {
3 int i = 0xFFFFFFF1;
4 int j = ~i;
5
6 }
7 )
What is the decimal value of j at line 5?
A. 0
B. 1
C. 14
D. -15
E. An error at line 3 causes compilation to fail.
F. An error at line 4 causes compilation to fail.

Answer: C

Monday, August 31, 2009

How to use GridLayout

Java Swing Tutorial Explaining the GridLayout. GridLayout is a layout manager that lays out a container’s components in a rectangular grid. The container is divided into equal-sized rectangles, and one component is placed in each rectangle.

import java.awt.*;
import javax.swing.*;

public class GridLayoutDemo {
public final static boolean RIGHT_TO_LEFT = false;

public static void addComponentsToPane(Container contentPane) {
if (RIGHT_TO_LEFT) {
contentPane.setComponentOrientation(
ComponentOrientation.RIGHT_TO_LEFT);
}
// Any number of rows and 2 columns
contentPane.setLayout(new GridLayout(0,2));

contentPane.add(new JLabel("JLabel 1"));
contentPane.add(new JButton("JButton 2"));
contentPane.add(new JCheckBox("JCheckBox 3"));
contentPane.add(new JTextField("Long-Named JTextField 4"));
contentPane.add(new JButton("JButton 5"));
}

private static void createAndShowGUI() {
JFrame.setDefaultLookAndFeelDecorated(true);

JFrame frame = new JFrame("GridLayout Source Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//Set up the content pane and components in GridLayout
addComponentsToPane(frame.getContentPane());
frame.pack();
frame.setVisible(true);
}

public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}

Swing Validation Package with InputVerifier

Although there are multiple frameworks out there for validating user input in Swing, there is also an API in Swing called InputVerifier which is very easy to use, and extremely easy to customize.


import javax.swing.BorderFactory;
import javax.swing.InputVerifier;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

import com.jgoodies.forms.builder.DefaultFormBuilder;
import com.jgoodies.forms.layout.FormLayout;

public class InputVerifierExample extends JPanel {
private JLabel validationLabel;

public InputVerifierExample() {
DefaultFormBuilder formBuilder = new DefaultFormBuilder(new FormLayout("right:pref, 3dlu, p:g"));
formBuilder.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));

JTextField javaField = new JTextField();
JTextField swingField = new JTextField();
this.validationLabel = new JLabel();

javaField.setInputVerifier(new StrictInputVerifier("Java"));
swingField.setInputVerifier(new StrictInputVerifier("Swing"));

formBuilder.append("Java Field:", javaField);
formBuilder.append("Swing Field:", swingField);
formBuilder.appendParagraphGapRow();
formBuilder.append(validationLabel, 3);

add(formBuilder.getPanel());
}

private class StrictInputVerifier extends InputVerifier {
private String validString;

public StrictInputVerifier(String validString) {
this.validString = validString;
}

public boolean verify(JComponent input) {
JTextField textField = (JTextField) input;
if (validString.equals(textField.getText())) {
validationLabel.setText("");
return true;
} else {
validationLabel.setText("Field must only contain " + this.validString);
return false;
}
}
}

public static void main(String[] a){
JFrame f = new JFrame("Input Verifier Example");
f.setDefaultCloseOperation(2);
f.add(new InputVerifierExample());
f.pack();
f.setVisible(true);
}
}
 

About

Site Info

Information Source

Academy of JAVA by Rajesh Rolen Copyright © 2009 Community is Developed by Rajesh Kumar Rolen WebSite

/* tracking code by yahoo login */