Saturday, May 12, 2012

Spring DAO

We'll wrap up discussion on the Spring JDBC support by using the DAO support classes that Spring provides out of the box. We'll see how this makes our DAO classes cleaner than ever.

org.springframework.jdbc.core.simple.SimpleJdbcDaoSupport
Extension of JdbcDaoSupport that exposes a SimpleJdbcTemplate as well. Only usable on Java 5 and above. 


*************************************************************
package com.venkat;


import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;


import com.venkat.dao.CricketDAO;


public class TestCricket {


public static void main(String[] args) {


ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
CricketDAO dao= context.getBean("cricketDao",CricketDAO.class);
System.out.println(dao.getCricketCount());
}


}
*****************************************************************
package com.venkat.dao;

import org.springframework.jdbc.core.simple.SimpleJdbcDaoSupport;

public class CricketDAO extends SimpleJdbcDaoSupport{
public int getCricketCount()
{
String sql="select count(*) from CRICKET";
return this.getJdbcTemplate().queryForInt(sql);
}

}
****************************************************************
package com.venkat.model;

public class Cricket {
private int id;
private String playername;
private int runs;
private int rank;
public Cricket(int id, String playername, int runs, int rank) {
super();
this.id = id;
this.playername = playername;
this.runs = runs;
this.rank = rank;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPlayername() {
return playername;
}
public void setPlayername(String playername) {
this.playername = playername;
}
public int getRuns() {
return runs;
}
public void setRuns(int runs) {
this.runs = runs;
}
public int getRank() {
return rank;
}
public void setRank(int rank) {
this.rank = rank;
}

}
*****************************************************************<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

<bean id="cricketDao" class="com.venkat.dao.CricketDAO">
<property name="dataSource" ref="dataSource"/>
</bean>


<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url"
value="jdbc:oracle:thin:@localhost:1521:xe">
</property>
<property name="username" value="venkat"></property>
<property name="password" value="venkat"></property>
</bean></beans>
***************************************************************
CREATE TABLE  "CRICKET" 
   ( "ID" NUMBER, 
 "PLAYERNAME" VARCHAR2(4000), 
 "RUNS" NUMBER, 
 "RANK" NUMBER, 
  CONSTRAINT "CRICKET_PK" PRIMARY KEY ("ID") ENABLE
   )
/

No comments:

Post a Comment