Google

Tuesday, December 25, 2007

Complex Table Example In Java

import java.awt.*;
import java.awt.event.*;
import java.text.Format;
import java.text.NumberFormat;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.JTable;
import javax.swing.JTable.*;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.*;
import java.sql.*;
import mypackage.MyTableModel;
import mypackage.CustomCellRenderer;

public class ComplexTable extends JPanel implements TableModelListener {





static JFrame myFrame;

static Object[][] data = {
{"Mary", "Campione",
"Snowboarding", new Integer(5), new Boolean(false)},
{"Alison", "Huml",
"Rowing", new Integer(3), new Boolean(true)},
{"Kathy", "Walrath",
"Knitting", new Integer(2), new Boolean(false)},
{"Sharon", "Zakhour",
"Speed reading", new Integer(20), new Boolean(true)},
{"Philip", "Milne",
"Pool", new Integer(10), new Boolean(false)}
};



static String[] columnNames = {"First Name",
"Last Name",
"Sport",
"# of Years",
"Vegetarian"};







public static void main(String args[]){

myFrame = new JFrame("Complex Table Example");
myFrame.getContentPane().setLayout(new BorderLayout());


//TableSorter sorter = new TableSorter(new MyTableModel());
JTable table = new JTable(new MyTableModel());
//sorter.setTableHeader(table.getTableHeader());





JScrollPane scrollPane = new JScrollPane(table);
table.setPreferredScrollableViewportSize(new Dimension(500, 70));

TableColumn column = null;
for (int i = 0; i < 5; i++) { column = table.getColumnModel().getColumn(i); if (i == 2) { column.setPreferredWidth(100); //sport column is bigger } else { column.setPreferredWidth(50); } } table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); TableColumn sportColumn = table.getColumnModel().getColumn(2); JComboBox comboBox = new JComboBox(); comboBox.addItem("Snowboarding"); comboBox.addItem("Rowing"); comboBox.addItem("Chasing toddlers"); comboBox.addItem("Speed reading"); comboBox.addItem("Teaching high school"); comboBox.addItem("None"); sportColumn.setCellEditor(new DefaultCellEditor(comboBox)); TableColumn lastName = table.getColumnModel().getColumn(1); lastName.setCellRenderer( new CustomCellRenderer() ); table.setBackground(Color.lightGray); DefaultTableCellRenderer renderer = new DefaultTableCellRenderer(); renderer.setToolTipText("Click for combo box"); sportColumn.setCellRenderer(renderer); table.getTableHeader().setToolTipText( "Click to sort; Shift-Click to sort in reverse order"); table.setSelectionForeground( Color.white ); table.setSelectionBackground( Color.red ); myFrame.getContentPane().add(table.getTableHeader(), BorderLayout.PAGE_START); myFrame.getContentPane().add(table, BorderLayout.CENTER); myFrame.setSize(800,400); myFrame.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); myFrame.setVisible(true); } public void tableChanged(TableModelEvent e) { int row = e.getFirstRow(); int column = e.getColumn(); TableModel model = (TableModel)e.getSource(); String columnName = model.getColumnName(column); Object data = model.getValueAt(row, column); } }

mypackage.MyTableModel


package mypackage;
import javax.swing.table.AbstractTableModel;

public class MyTableModel extends AbstractTableModel {



private Object[][] data = {
{"Mary", "Campione",
"Snowboarding", new Integer(5), new Boolean(false)},
{"Alison", "Huml",
"Rowing", new Integer(3), new Boolean(true)},
{"Kathy", "Walrath",
"Knitting", new Integer(2), new Boolean(false)},
{"Sharon", "Zakhour",
"Speed reading", new Integer(20), new Boolean(true)},
{"Philip", "Milne",
"Pool", new Integer(10), new Boolean(false)}
};



private String[] columnNames = {"First Name",
"Last Name",
"Sport",
"# of Years",
"Vegetarian"};


public int getColumnCount() {
return columnNames.length;
}

public int getRowCount() {
return data.length;
}

public String getColumnName(int col) {
return columnNames[col];
}

public Object getValueAt(int row, int col) {
return data[row][col];
}

public Class getColumnClass(int c) {
return getValueAt(0, c).getClass();
}

/*
* Don't need to implement this method unless your table's
* editable.
*/
public boolean isCellEditable(int row, int col) {
//Note that the data/cell address is constant,
//no matter where the cell appears onscreen.
if (col <>
return false;
} else {
return true;
}
}

/*
* Don't need to implement this method unless your table's
* data can change.
*/
public void setValueAt(Object value, int row, int col) {
data[row][col] = value;
fireTableCellUpdated(row, col);
}

}

mypackage.CustomCellRenderer


package mypackage;

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

public class CustomCellRenderer
extends JLabel
implements TableCellRenderer
{
private boolean isSelected;
private boolean hasFocus;


public CustomCellRenderer()
{

}

public Component getTableCellRendererComponent( JTable table,
Object value, boolean isSelected, boolean hasFocus,
int row, int column )
{
String sText = (String)value;
this.isSelected = isSelected;
this.hasFocus = hasFocus;

if( isSelected )
setForeground( Color.red );
else
setForeground( Color.black );
if( hasFocus )
setForeground( Color.cyan );

setText( sText );
return this;
}
}

Wednesday, December 19, 2007

Reading International Stock Value In Java

import java.net.*;
import java.io.*;
import java.util.StringTokenizer;

public class StockQuoter {
String csvString;
URL url = null;
URLConnection urlConn = null;
InputStreamReader inStream = null;
BufferedReader buff = null;

StockQuoter(String symbol){

try{
url = new
URL("http://quote.yahoo.com/d/quotes.csv?s="
+ symbol + "&f=sl1d1t1c1ohgv&e=.csv" );
urlConn = url.openConnection();
inStream = new
InputStreamReader(urlConn.getInputStream());
BufferedReader buff= new BufferedReader(inStream);

// get the quote as a csv string
csvString =buff.readLine();

// parse the csv string
StringTokenizer tokenizer = new
StringTokenizer(csvString, ",");
String ticker = tokenizer.nextToken();
String price = tokenizer.nextToken();
String tradeDate = tokenizer.nextToken();
String tradeTime = tokenizer.nextToken();

System.out.println("Symbol: " + ticker +
" Price: " + price + " Date: " + tradeDate
+ " Time: " + tradeTime);
} catch(MalformedURLException e){
System.out.println("Please check the spelling of the URL:"
+ e.toString() );
} catch(IOException e1){
System.out.println("Can't read from the Internet: " +
e1.toString() );
}
finally{
try{
inStream.close();
buff.close();
}catch(Exception e){
e.printStackTrace();
}
}
}

public static void main(String args[]){
System.out.println("Sample Usage: java StockQuoter IBM");
StockQuoter sq = new StockQuoter("IBM");
}

}

Tuesday, December 18, 2007

Servlet JSP data passing

------------------Servlet File-----------------


import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.*;
import javax.servlet.http.*;

public class Servlet1 extends HttpServlet {
String s="Naveed Ali";
private static final String CONTENT_TYPE = "text/html; charset=windows-1252";

public void init(ServletConfig config) throws ServletException {
super.init (config);
}

public void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println("Hi this is testing");
out.println(s);

out.close();
}
}





JSP File

<%@ page
import = "java.io.*"
import = "java.lang.*"
import = "java.io.IOException"
import = "java.io.ObjectInputStream"
import = "java.io.ObjectOutputStream "
import = "java.net.MalformedURLException"
import = "java.net.URL"
import = "java.net.URLConnection"



%>


<%
URL yahoo = new URL("servlet url here");
URLConnection yc = yahoo.openConnection();
BufferedReader in = new BufferedReader(
new InputStreamReader(
yc.getInputStream ()));
String inputLine;

while ((inputLine = in.readLine()) != null)
out.print(inputLine+" ");
in.close();



%>

Thursday, September 13, 2007

MS Access to Application Express Migration

Oracle Latest Database

Oracle 11g for Linux Technology Preview available for download from oracle site