Hallo,
versuche gerade ein paar Daten aus einer Datenbank zu lesen. Die Datenbank habe ich in MySQL angelegt. Die Daten aus der Datenbank kann ich vie NetBeans lesen. Dann habe ich einmal das paket, test.domain, mit dieser Bean:
und
[Java]
package test.dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import test.domain.Names;
public class TestDAOImpl implements TestDAO{
private JdbcTemplate jdbcTemplate;
public void setDataSource(DataSource dataSource){
this.jdbcTemplate=new JdbcTemplate(dataSource);
}
public Names selectNames(int nameID){
String query = "SELECT * FROM NAMES WHERE NAMES_ID = ?";
return (Names) jdbcTemplate.queryForObject(query, new Object[] {
Integer.valueOf(nameID) },
new RowMapper(){
public Object mapRow(ResultSet resultSet, int rowNum)
throws SQLException{
return new Names(resultSet.getInt("NAME_ID"),
resultSet.getString("FIRSTNAME"),
resultSet.getString("LASTNAME"));
}
});
}
}
[/Java]
und weiter noch eine Main Klasse:
[Java]
package test.dao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import test.domain.Names;
public class Main {
public static void main(String[]args){
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
TestDAO testDAO = (TestDAO)context.getBean("testDAO");
Names namesTest = new Names(1,"Spring Test","Discussion related to Spring");
System.out.println(testDAO.selectNames(1));
}
}
[/Java]
und eine bean.xml
versuche gerade ein paar Daten aus einer Datenbank zu lesen. Die Datenbank habe ich in MySQL angelegt. Die Daten aus der Datenbank kann ich vie NetBeans lesen. Dann habe ich einmal das paket, test.domain, mit dieser Bean:
Java:
package test.domain;
public class Names {
private int nameID;
private String firstName;
private String lastName;
public Names(int nameID, String firstName, String lastName){
this.nameID=nameID;
this.firstName=firstName;
this.lastName=lastName;
}
public int getNameID(){
return nameID;
}
public void setNameID(int nameID){
this.nameID=nameID;
}
public String getFirstName(){
return firstName;
}
public void setFirstName(String firstName){
this.firstName=firstName;
}
public String getLastName(){
return lastName;
}
public void setLastName(String lastName){
this.lastName=lastName;
}
public String toString(){
return nameID+" "+firstName+" "+lastName;
}
}
[/Java]
dann habe ich noch das Paket, test.dao mit dem Interface bzw. den Klassen:
[code=Java]
package test.dao;
import test.domain.Names;
public interface TestDAO {
public Names selectNames(int nameID);
}
und
[Java]
package test.dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import test.domain.Names;
public class TestDAOImpl implements TestDAO{
private JdbcTemplate jdbcTemplate;
public void setDataSource(DataSource dataSource){
this.jdbcTemplate=new JdbcTemplate(dataSource);
}
public Names selectNames(int nameID){
String query = "SELECT * FROM NAMES WHERE NAMES_ID = ?";
return (Names) jdbcTemplate.queryForObject(query, new Object[] {
Integer.valueOf(nameID) },
new RowMapper(){
public Object mapRow(ResultSet resultSet, int rowNum)
throws SQLException{
return new Names(resultSet.getInt("NAME_ID"),
resultSet.getString("FIRSTNAME"),
resultSet.getString("LASTNAME"));
}
});
}
}
[/Java]
und weiter noch eine Main Klasse:
[Java]
package test.dao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import test.domain.Names;
public class Main {
public static void main(String[]args){
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
TestDAO testDAO = (TestDAO)context.getBean("testDAO");
Names namesTest = new Names(1,"Spring Test","Discussion related to Spring");
System.out.println(testDAO.selectNames(1));
}
}
[/Java]
und eine bean.xml
Java:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver"/>
<property name="url" value="jdbc:hsqldb:hsql://localhost"/>
<property name="username" value="root"/>
<property name="password" value="***"/>
</bean>
<bean id="testDAO" class="test.dao.TestDAOImpl">
<property name="dataSource" ref="dataSource"/>
</bean>
</beans>
[/Java]
Beim starten der Main bekomme ich dann eine Fehlermeldung, dass etwas mit der JDBC Connection nicht in Ordnung ist. Denke das mein Fehler iwie in der bean.xml liegt. Komme da gerade nicht weiter und würde mich über Hilfe freuen.