Input and output of primitive values with random access binary files

August 4th, 2009







import java.io.RandomAccessFile;



public class InputOutputDemoPrimitive {



  public static void main(String[] athrows Exception {



    //Read and write parts of file "raf.dat" in arbitrary order:

    RandomAccessFile raf = new RandomAccessFile("r.dat""rw");

    raf.writeDouble(3.1415);

    raf.writeInt(42);

    raf.seek(0);

    System.out.println(raf.readDouble() " " + raf.readInt());



  }

}





           

       

Temporary table on commit preserce and delete

August 4th, 2009



 

SQL>

SQL> CREATE TABLE EMP (EMPNO NUMBER(4NOT NULL,

  2                    ENAME VARCHAR2(10),

  3                    JOB VARCHAR2(9),

  4                    MGR NUMBER(4),

  5                    HIREDATE DATE,

  6                    SAL NUMBER(72),

  7                    COMM NUMBER(72),

  8                    DEPTNO NUMBER(2));



Table created.



SQL>

SQL> INSERT INTO EMP VALUES (7369‘SMITH‘, ’CLERK‘,    7902, TO_DATE(‘17-DEC-1980‘, ’DD-MON-YYYY‘), 800, NULL, 20);



row created.



SQL> INSERT INTO EMP VALUES (7499‘ALLEN‘, ’SALESMAN‘, 7698, TO_DATE(‘20-FEB-1981‘, ’DD-MON-YYYY‘), 160030030);



row created.



SQL> INSERT INTO EMP VALUES (7521‘WARD‘,  ’SALESMAN‘, 7698, TO_DATE(‘22-FEB-1981‘, ’DD-MON-YYYY‘), 125050030);



row created.



SQL> INSERT INTO EMP VALUES (7566‘JONES‘, ’MANAGER‘,  7839, TO_DATE(‘2-APR-1981‘,  ’DD-MON-YYYY‘), 2975, NULL, 20);



row created.



SQL> INSERT INTO EMP VALUES (7654‘MARTIN‘, ’SALESMAN‘, 7698,TO_DATE(‘28-SEP-1981‘, ’DD-MON-YYYY‘), 1250140030);



row created.



SQL> INSERT INTO EMP VALUES (7698‘BLAKE‘, ’MANAGER‘, 7839,TO_DATE(‘1-MAY-1981‘, ’DD-MON-YYYY‘), 2850, NULL, 30);



row created.



SQL> INSERT INTO EMP VALUES (7782‘CLARK‘, ’MANAGER‘, 7839,TO_DATE(‘9-JUN-1981‘, ’DD-MON-YYYY‘), 2450, NULL, 10);



row created.



SQL> INSERT INTO EMP VALUES (7788‘SCOTT‘, ’ANALYST‘, 7566,TO_DATE(‘09-DEC-1982‘, ’DD-MON-YYYY‘), 3000, NULL, 20);



row created.



SQL> INSERT INTO EMP VALUES (7839‘KING‘, ’PRESIDENT‘, NULL,TO_DATE(‘17-NOV-1981‘, ’DD-MON-YYYY‘), 5000, NULL, 10);



row created.



SQL> INSERT INTO EMP VALUES (7844‘TURNER‘, ’SALESMAN‘, 7698,TO_DATE(‘8-SEP-1981‘, ’DD-MON-YYYY‘), 1500030);



row created.



SQL> INSERT INTO EMP VALUES (7876‘ADAMS‘, ’CLERK‘, 7788,TO_DATE(‘12-JAN-1983‘, ’DD-MON-YYYY‘), 1100, NULL, 20);



row created.



SQL> INSERT INTO EMP VALUES (7900‘JAMES‘, ’CLERK‘, 7698,TO_DATE(‘3-DEC-1981‘, ’DD-MON-YYYY‘), 950, NULL, 30);



row created.



SQL> INSERT INTO EMP VALUES (7902‘FORD‘, ’ANALYST‘, 7566,TO_DATE(‘3-DEC-1981‘, ’DD-MON-YYYY‘), 3000, NULL, 20);



row created.



SQL> INSERT INTO EMP VALUES (7934‘MILLER‘, ’CLERK‘, 7782,TO_DATE(‘23-JAN-1982‘, ’DD-MON-YYYY‘), 1300, NULL, 10);



row created.



SQL>

SQL>

SQL> create global temporary table MyTable_session

  2  on commit preserve rows

  3  as

  4  select from emp where 1=0

  5  /





SQL> insert into MyTable_session select from emp;



14 rows created.



SQL>

SQL>

SQL> create global temporary table MyTable_transaction

  2  on commit delete rows

  3  as

  4  select from emp where 1=0

  5  /



Table created.



SQL>

SQL>

SQL> insert into MyTable_transaction select from emp;



14 rows created.



SQL>

SQL>

SQL> select session_cnt, transaction_cnt

  2    from select count(*session_cnt from MyTable_session ),

  3         select count(*transaction_cnt from MyTable_transaction );



SESSION_CNT TRANSACTION_CNT

———– —————

         14              14



row selected.



SQL>

SQL> commit;



Commit complete.



SQL>

SQL> select session_cnt, transaction_cnt

  2    from select count(*session_cnt from MyTable_session ),

  3         select count(*transaction_cnt from MyTable_transaction );

SESSION_CNT TRANSACTION_CNT

———– —————

         14               0



row selected.



SQL>

SQL> drop table MyTable_session;



SQL>

SQL> drop table MyTable_transaction;



Table dropped.



SQL>

SQL> drop table emp;



Table dropped.



SQL>

SQL> –



 

Generate a square table

August 4th, 2009





#include <stdio.h>

#define SQR(x) ((x(x))



int main()

{

    int counter = 0;



    while (counter < 5)

        printf("x %d square %d\n", counter, SQR(++counter));



    return (0);

}

  



           

       

Implements IComparable

August 4th, 2009



 





using System;

using System.Collections.Generic;



public class Book : IComparable<Book> {

    private string name;

    private int circulation;



    private class AscendingCirculationComparer : IComparer<Book> {

        public int Compare(Book x, Book y) {

            if (x == null && y == nullreturn 0;

            else if (x == nullreturn -1;

            else if (y == nullreturn 1;

            if (x == yreturn 0;

            return x.circulation - y.circulation;

        }

    }

    public Book(string name, int circulation) {

        this.name = name;

        this.circulation = circulation;

    }



    public static IComparer<Book> CirculationSorter {

        get return new AscendingCirculationComparer()}

    }



    public override string ToString() {

        return string.Format("{0}: Circulation = {1}", name, circulation);

    }



    public int CompareTo(Book other) {

        if (other == nullreturn 1;



        if (other == thisreturn 0;

        return string.Compare(this.name, other.name, true);

    }

}



public class MainClass {

    public static void Main() {

        List<Book> Books = new List<Book>();



        Books.Add(new Book("E"1));

        Books.Add(new Book("T"5));

        Books.Add(new Book("G"2));

        Books.Add(new Book("S"8));

        Books.Add(new Book("H"5));



        foreach (Book n in Books) {

            Console.WriteLine("  " + n);

        }



        Books.Sort();

        foreach (Book n in Books) {

            Console.WriteLine("  " + n);

        }



        Books.Sort(Book.CirculationSorter);

        foreach (Book n in Books) {

            Console.WriteLine("  " + n);

        }

    }

}



 

JFreeChart: XML Pie Chart Demo

August 4th, 2009





/* ===========================================================

 * JFreeChart : a free chart library for the Java(tm) platform

 * ===========================================================

 *

 * (C) Copyright 2000-2004, by Object Refinery Limited and Contributors.

 *

 * Project Info:  http://www.jfree.org/jfreechart/index.html

 *

 * This library is free software; you can redistribute it and/or modify it under the terms

 * of the GNU Lesser General Public License as published by the Free Software Foundation;

 * either version 2.1 of the License, or (at your option) any later version.

 *

 * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;

 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

 * See the GNU Lesser General Public License for more details.

 *

 * You should have received a copy of the GNU Lesser General Public License along with this

 * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,

 * Boston, MA 02111-1307, USA.

 *

 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 

 * in the United States and other countries.]

 *

 * ——————–

 * XMLPieChartDemo.java

 * ——————–

 * (C) Copyright 2002-2004, by Object Refinery Limited and Contributors.

 *

 * Original Author:  David Gilbert (for Object Refinery Limited);

 * Contributor(s):   -;

 *

 * $Id: XMLPieChartDemo.java,v 1.14 2004/04/26 19:12:04 taqua Exp $

 *

 * Changes

 * ——-

 * 20-Nov-2002 : Version 1 (DG);

 *

 */



package org.jfree.chart.demo;



import java.awt.Color;

import java.io.IOException;

import java.io.InputStream;

import java.net.URL;

import java.text.NumberFormat;



import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartPanel;

import org.jfree.chart.JFreeChart;

import org.jfree.chart.labels.StandardPieItemLabelGenerator;

import org.jfree.chart.plot.PiePlot;

import org.jfree.data.general.PieDataset;

import org.jfree.data.xml.DatasetReader;

import org.jfree.ui.ApplicationFrame;

import org.jfree.ui.RefineryUtilities;



/**

 * A simple demonstration application showing how to create a pie chart from data in an

 * XML file.

 *

 */

public class XMLPieChartDemo extends ApplicationFrame {



    /**

     * Default constructor.

     *

     @param title  the frame title.

     */

    public XMLPieChartDemo(final String title) {



        super(title);



        // create a dataset…

        PieDataset dataset = null;

        final URL url = getClass().getResource("/org/jfree/chart/demo/piedata.xml");



        try {

            final InputStream in = url.openStream();

            dataset = DatasetReader.readPieDatasetFromXML(in);

        }

        catch (IOException ioe) {

            System.out.println(ioe.getMessage());

        }



        // create the chart…

        final JFreeChart chart = ChartFactory.createPieChart(

            "Pie Chart Demo 1",  // chart title

            dataset,             // data

            true,                // include legend

            true,

            false

        );



        // set the background color for the chart…

        chart.setBackgroundPaint(Color.yellow);

        final PiePlot plot = (PiePlotchart.getPlot();

        plot.setLabelGenerator(new StandardPieItemLabelGenerator(

            "{0} = {2}", NumberFormat.getNumberInstance(), NumberFormat.getPercentInstance()

        ));

        plot.setNoDataMessage("No data available");



        // add the chart to a panel…

        final ChartPanel chartPanel = new ChartPanel(chart);

        chartPanel.setPreferredSize(new java.awt.Dimension(500270));

        setContentPane(chartPanel);



    }



    // ****************************************************************************

    // * JFREECHART DEVELOPER GUIDE                                               *

    // * The JFreeChart Developer Guide, written by David Gilbert, is available   *

    // * to purchase from Object Refinery Limited:                                *

    // *                                                                          *

    // * http://www.object-refinery.com/jfreechart/guide.html                     *

    // *                                                                          *

    // * Sales are used to provide funding for the JFreeChart project - please    * 

    // * support us so that we can continue developing free software.             *

    // ****************************************************************************

    

    /**

     * Starting point for the demonstration application.

     *

     @param args  ignored.

     */

    public static void main(final String[] args) {



        final XMLPieChartDemo demo = new XMLPieChartDemo("XML Pie Chart Demo");

        demo.pack();

        RefineryUtilities.centerFrameOnScreen(demo);

        demo.setVisible(true);



    }



}