Choose Your Language

Monday 21 April 2014

Random password generation using java swing

Thursday 17 April 2014

java program to rotate image

package imaging;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

/**
 *
 * @author Aravind Sankaran
 */
public class RotateImage {
    public  static void main(String args[]){
        try {    
        String path="C:\\images\\ppp.jpg";
        File fileInput=new File(path);
        BufferedImage  img = ImageIO.read(new File(path)); // try/catch IOException
        int width = img.getWidth();
        int height = img.getHeight();        
        String fileName=fileInput.getName();
        fileName=fileName.substring(0, fileName.lastIndexOf('.'));
        BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
        Graphics2D g2d = bufferedImage.createGraphics();
      
// draw graphics     
        double angle=45.0;     
        g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        g2d.rotate(Math.toRadians(angle), width, width);
        g2d.drawImage(img, 0, 0, null);        
        g2d.dispose();
//save as png
File file = new File("C:\\images\\"+fileName+".png");
ImageIO.write(bufferedImage, "png", file);
     } catch (IOException ex) {
      
     }

    }
}
input:

output:


Friday 11 April 2014

Analog clock using java swing

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package analogclock;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Toolkit;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.TimeZone;
import java.util.TimerTask;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;

/**
 *
 * @author Aravind Sankaran
 */
public class AnalogClock  extends JPanel{
  
ImageIcon img;

private GregorianCalendar m_calendar;
private int[] x=new int[2];
private int[] y=new int[2];
private java.util.Timer clocktimer=new java.util.Timer();

/**You could set the TimeZone for the clock here. I used the Dfault time
zone from the user so that every time the program runs on different
computers the correct time is displayed*/

private TimeZone clockTimeZone=TimeZone.getDefault();

//Constructor
public AnalogClock()
{
this.setPreferredSize(new Dimension(210,210));
this.setMinimumSize(new Dimension(210,210));

//schedules the clocktimer task to scan for every 1000ms=1sec
clocktimer.schedule(new TickTimerTask(),0,1000);
}
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setSize(300, 400);
frame.setTitle("Analog Clock");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

AnalogClock m_AnalogClock=new AnalogClock();
frame.add(m_AnalogClock);
frame.setVisible(true);
   
}
//The Clock Face instance method
public void paint(Graphics g)
{

g.setColor(Color.WHITE);
g.fillRect(0,0,this.getWidth(),this.getHeight());
drawCardinals((Graphics2D)g);
drawHands((Graphics2D)g);

}

//Endpoints of the Clock Hand
void clockMinutes(int startRadius,int endRadius,double theta)
{
theta-=Math.PI/2;
x[0]=(int)(getWidth()/2+startRadius*Math.cos(theta));
y[0]=(int)(getHeight()/2+startRadius*Math.sin(theta));
x[1]=(int)(getWidth()/2+endRadius*Math.cos(theta));
y[1]=(int)(getHeight()/2+endRadius*Math.sin(theta));
}

//The Hours/Cardinals of the clock
/** Set Stroke sets the thickness of the cardinals and hands*/
void drawCardinals(Graphics2D g)
{
//g.setStroke(new BasicStroke(9));
g.setStroke(new BasicStroke(12));
g.setColor(Color.black);

for(double theta=0;theta<Math.PI*2;theta+=Math.PI/6)
{
clockMinutes(100,100,theta);
/**Draws a sequence of connected lines defined by arrays of x and
*y coordinates. Each pair of (x, y) coordinates defines a point.
*The figure is not closed if the first point
differs from the last point.*/
g.drawPolyline(x,y,2);
}
}

//The Hand of the Clocks instance method
public void drawHands(Graphics2D g)
{
double h=2*Math.PI*(m_calendar.get(Calendar.HOUR));
double m=2*Math.PI*(m_calendar.get(Calendar.MINUTE));
double s=2*Math.PI*(m_calendar.get(Calendar.SECOND));

g.setStroke(new BasicStroke(9));

clockMinutes(0,55,h/12+m/(60*12));
g.setColor(Color.BLACK);
g.drawPolyline(x,y,2);

clockMinutes(0,70,m/60+s/(60*60));
g.setColor(Color.black);
g.drawPolyline(x,y,2);

clockMinutes(0,70,s/60);
g.setColor(Color.red);
g.drawPolyline(x,y,2);

g.fillOval(getWidth()/2-8,getHeight()/2-8,16,16);
}



//method to update/refresh the clock every second
class TickTimerTask extends TimerTask
{
public void run()
{
m_calendar=(GregorianCalendar)GregorianCalendar.getInstance(clockTimeZone);
repaint();
}
}
}
   

output:

Thursday 10 April 2014

Checking User Name Availability Using AJAX, JSP And MySQL and javascript

 userregistration.jsp
<%--
    Document   : userregistration
    Created on : 17 May, 2013, 11:22:42 AM
    Author     : Aravind Sankaran
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
        <script type="text/javascript">
          function validateForm()
            { 
            var x=document.forms["login"]["username"].value;
            var y=document.getElementById('actual').value;           
           
                if (y=="taken")
                {
                       alert("Name already exist in database");
                    return false;
                }else
                {
                        alert("No name exist");
                }
                   
                   
             }
        </script>
        <script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
var k=document.getElementById("username").value;
var urls="checkusername.jsp?ver="+k;

if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4)
    {
        document.getElementById("err").innerHTML=xmlhttp.responseText;
     }
  }
xmlhttp.open("GET",urls,true);
xmlhttp.send();
}
</script>
    </head>
    <body bgcolor="black">
        <form name="login" method="get" action="" onsubmit="return validateForm();">
        <p>
    <center>
        <font color="white">User Name: </font><input type="text" name="username" id="username" onkeyup="loadXMLDoc()"><br>
        <span id="err"> </span>
    </center>
        </p>
        </form>
    </body>
</html>

checkusername.jsp
<%--
    Document   : checkusername
    Created on : 9 May, 2013, 12:42:25 PM
    Author     : Aravind Sankaran
--%>

<%@ page import="java.io.*,java.sql.*" %>
<%@ page contentType="text/html" pageEncoding="UTF-8"%>

<%
                    String sn=request.getParameter("ver");
                    Class.forName("com.mysql.jdbc.Driver");
                    Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/daodatabase","root","root");
                    Statement st=con.createStatement();
                    ResultSet rs = st.executeQuery("select * from usertable where username='"+sn+"'");  // this is for name
                    if(rs.next())
                    {   %>
                        <font color=red>
                        Name already taken
                        <input type="hidden" id="actual" name="actual" value="taken">
                        <input type="submit" value="submit">
                        </font>

                   <% }else {%>
                        <font color=green>
                        <input type="hidden" id="actual" name="actual" value="available">
                        Available
                        </font>
                        <input type="submit" value="submit">
                   <% }%>
                   
     <%              
rs.close();
st.close();
con.close();
%>

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>userregistration.jsp</welcome-file>
    </welcome-file-list>
</web-app>


Wednesday 9 April 2014

java program to display space count of a given string

public class SpaceCounter{
    static  int spaceCounter=1;
    public static void main(String ar[]){
       
        String input="hello aravind sankaran nair";
       
        for (char space : input.toCharArray()) {
          if(Character.isWhitespace(space)){
           spaceCounter=spaceCounter+1;
          }
         }
        System.out.println("number of words = "+spaceCounter);
    }
}

output:
number of words = 4

Tuesday 8 April 2014

Java program to connect MySql using ArrayList

Create database with name "employeedb"
Create table with name "employee"
CREATE TABLE `employee` (
  `empname` varchar(45) NOT NULL,
  `empdesignation` varchar(45) NOT NULL,
  `empsalary` varchar(45) NOT NULL
);

java code:
package mysqlconnectionusingarraylist;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;

/**
 *
 * @author Aravind Sankaran Nair
 */
public class MySqlConnectionUsingArrayList {
  
     public static void main(String[] args) {
         ArrayList<Employee> employeeList =new ArrayList<Employee>();
         String url = "jdbc:mysql://localhost:3306/employeedb";
         try{
            Connection conn = DriverManager.getConnection(url, "root", "root");
            Statement st = conn.createStatement();
             ResultSet rs = st.executeQuery("SELECT * FROM employee");
                while(rs.next()){
                Employee employee=new Employee();             
                employee.setEmpName(rs.getString("empname"));
                employee.setEmpDesignation(rs.getString("empdesignation"));
                employee.setEmpSalary(rs.getString("empsalary"));
                employeeList.add(employee);               
                }
                 for(int i=0;i<employeeList.size();i++){
                System.out.println("Employee name is "+employeeList.get(i).getEmpName());
                System.out.println("Employee designation is "+employeeList.get(i).getEmpDesignation());
                System.out.println("Employee salary is "+employeeList.get(i).getEmpSalary());
                System.out.println("");
                }
         }catch(Exception e){
            
         }
          
     }
}
class Employee{
    private String empName;
    private String empDesignation;
    private String empSalary;

    public String getEmpName() {
        return empName;
    }

    public void setEmpName(String empName) {
        this.empName = empName;
    }

    public String getEmpDesignation() {
        return empDesignation;
    }

    public void setEmpDesignation(String empDesignation) {
        this.empDesignation = empDesignation;
    }

    public String getEmpSalary() {
        return empSalary;
    }

    public void setEmpSalary(String empSalary) {
        this.empSalary = empSalary;
    }
   
}

output:
Employee name is aravind
Employee designation is software engineer
Employee salary is 25000

Employee name is ambili
Employee designation is software engineer
Employee salary is 35000

Sunday 6 April 2014

Checking User Name Availability Using AJAX, JSP And MySQL updated version

Project structure:





userregistration.jsp
<%--
    Document   : userregistration
    Created on : 17 May, 2013, 11:22:42 AM
    Author     : Aravind Sankaran
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
        <script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
var k=document.getElementById("username").value;
var urls="checkusername.jsp?ver="+k;

if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4)
    {
        document.getElementById("err").innerHTML=xmlhttp.responseText;
     }
  }
xmlhttp.open("GET",urls,true);
xmlhttp.send();
}
</script>
    </head>
    <body bgcolor="black">
        <p>
    <center>
        <font color="white">User Name: </font><input type="text" name="username" id="username" onkeyup="loadXMLDoc()"><br>
        <span id="err"> </span>
    </center>
        </p>
    </body>
</html>

checkusername.jsp
<%--
    Document   : checkusername
    Created on : 9 May, 2013, 12:42:25 PM
    Author     : Aravind Sankaran
--%>

<%@ page import="java.io.*,java.sql.*" %>
<%@ page contentType="text/html" pageEncoding="UTF-8"%>

<%
                    String sn=request.getParameter("ver");
                    Class.forName("com.mysql.jdbc.Driver");
                    Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/daodatabase","root","root");
                    Statement st=con.createStatement();
                    ResultSet rs = st.executeQuery("select * from usertable where username='"+sn+"'");  // this is for name
                    if(rs.next())
                    {   %>
                        <font color=red>
                        Name already taken
                        </font>

                   <% }else {%>
                        <font color=green>
                        Available
                        </font>
                        <input type="submit" value="submit">
                   <% }%>
                   
     <%              
rs.close();
st.close();
con.close();
%>

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>userregistration.jsp</welcome-file>
    </welcome-file-list>
</web-app>
output: