Commiting the missed files

This commit is contained in:
Amol Nayak
2011-12-16 07:24:04 +05:30
parent 2b4ad46a80
commit db9579d478
3 changed files with 129 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
/*
* Copyright 2002-2011 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.integration.samples.jdbc;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.springframework.jdbc.core.RowMapper;
/**
* The result set mapper that will map the {@link ResultSet} to the {@link Person} instance
* @author Amol Nayak
*
*/
public class PersonMapper implements RowMapper<Person> {
/* (non-Javadoc)
* @see org.springframework.jdbc.core.RowMapper#mapRow(java.sql.ResultSet, int)
*/
public Person mapRow(ResultSet rs, int rowNum) throws SQLException {
Person person = new Person();
person.setPersonId(rs.getInt("id"));
person.setName(rs.getString("name"));
person.setGender(Gender.getGenderByIdentifier(rs.getString("gender")));
person.setDateOfBirth(rs.getDate("dateOfBirth"));
return person;
}
}

View File

@@ -0,0 +1,35 @@
/*
* Copyright 2002-2011 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.integration.samples.jdbc.service;
import org.springframework.integration.samples.jdbc.Person;
/**
* The Service used to create Person instance in database
* @author Amol Nayak
*
*/
public interface PersonService {
/**
* Creates a {@link Person} instance from the {@link Person} instance passed
*
* @param the created person instance, it will contain the generated primary key and the formated name
* @return
*/
Person createPerson(Person person);
}

View File

@@ -0,0 +1,53 @@
/*
* Copyright 2002-2011 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.integration.samples.jdbc;
import java.util.Calendar;
import org.apache.log4j.Logger;
import org.junit.Assert;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.integration.samples.jdbc.service.PersonService;
/**
* The test class for jdbc outbound gateway
* @author Amol Nayak
*
*/
public class OutboundGatewayTest {
private Logger logger = Logger.getLogger(OutboundGatewayTest.class);
@Test
public void insertPersonRecord() {
ApplicationContext context
= new ClassPathXmlApplicationContext("/META-INF/spring/integration/spring-integration-context.xml");
PersonService service = context.getBean(PersonService.class);
logger.info("Creating person Instance");
Person person = new Person();
Calendar dateOfBirth = Calendar.getInstance();
dateOfBirth.set(1980, 0, 1);
person.setDateOfBirth(dateOfBirth.getTime());
person.setName("Name Of The Person");
person.setGender(Gender.MALE);
person = service.createPerson(person);
Assert.assertNotNull("Expected a non null instance of Person, got null", person);
logger.info("\n\tGenerated person with id: " + person.getPersonId() + ", with name: " + person.getName());
}
}