List of usage examples for org.springframework.jca.cci.core RecordCreator RecordCreator
RecordCreator
From source file:org.springframework.samples.jca.dao.PersonDaoImpl.java
/** * @see org.springframework.samples.jca.dao.PersonneDao#getPerson(int) *//*from w ww . j ava 2 s . co m*/ public Person getPerson(final int id) throws PersonException { CciInteractionSpec interactionSpec = new CciInteractionSpec(); /*interactionSpec.setUser("sa"); interactionSpec.setPassword("");*/ interactionSpec.setSql("select * from person where person_id=?"); List people = (List) getCciTemplate().execute(interactionSpec, new RecordCreator() { public Record createRecord(RecordFactory recordFactory) throws ResourceException, DataAccessException { IndexedRecord input = recordFactory.createIndexedRecord("input"); input.add(new Integer(id)); return input; } }, new RecordExtractor() { public Object extractData(Record record) throws ResourceException, SQLException, DataAccessException { List people = new ArrayList(); ResultSet rs = (ResultSet) record; while (rs.next()) { Person person = new Person(); person.setId(rs.getInt("person_id")); person.setLastName(rs.getString("person_last_name")); person.setFirstName(rs.getString("person_first_name")); people.add(person); } return people; } }); if (people.size() == 1) { return (Person) people.get(0); } else { throw new PersonException("Can't the person"); } }
From source file:org.springframework.samples.jca.dao.PersonDaoImpl.java
/** * @see org.springframework.samples.jca.dao.PersonDao#updatePerson(org.springframework.samples.jca.model.Person) *//*from w w w . j a v a 2 s. c om*/ public void updatePerson(final Person person) { StringBuffer request = new StringBuffer(); request.append("update person set "); request.append("person_last_name=?,"); request.append("person_first_name=?"); request.append(" where person_id=?"); CciInteractionSpec interactionSpec = new CciInteractionSpec(); interactionSpec.setSql(request.toString()); getCciTemplate().execute(interactionSpec, new RecordCreator() { public Record createRecord(RecordFactory recordFactory) throws ResourceException, DataAccessException { IndexedRecord input = recordFactory.createIndexedRecord("input"); input.add(person.getLastName()); input.add(person.getFirstName()); input.add(new Integer(person.getId())); return input; } }, new RecordExtractor() { public Object extractData(Record record) throws ResourceException, SQLException, DataAccessException { IndexedRecord output = (IndexedRecord) record; for (Iterator i = output.iterator(); i.hasNext();) { log.debug("Number of updated lines : " + i.next()); } return null; } }); }