Class JRJpaDataSource
java.lang.Object
net.sf.jasperreports.engine.data.JRAbstractBeanDataSource
net.sf.jasperreports.jakarta.ejbql.JRJpaDataSource
- All Implemented Interfaces:
JRDataSource
,JRRewindableDataSource
Java Persistence API data source that uses
jakarta.persistence.Query.getResultList()
.
The query result can be paginated by not retrieving all the rows at once.
Fields are mapped to values in the result following these rules:
- if the query returns a single object/bean (e.g.
SELECT m FROM Movie m
orSELECT NEW MovieDescription(m.title, m.genre) FROM Movie m
), then the fields are mapped to bean property names. - if the query returns multiple objects per row (e.g.
SELECT m.title, m.gender FROM Movie m
), the fields are mapped using the following syntax: COLUMN_index[.property], with the indexes starting from 1. Example mappings: COLUMN_1, COLUMN_2, COLUMN_2.title, COLUMN_2.movie.title.
- Author:
- Marcel Overdijk (marceloverdijk@hotmail.com)
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interface
protected class
protected class
protected class
Nested classes/interfaces inherited from class net.sf.jasperreports.engine.data.JRAbstractBeanDataSource
JRAbstractBeanDataSource.DefaultPropertyNameProvider, JRAbstractBeanDataSource.PropertyNameProvider
-
Field Summary
FieldsFields inherited from class net.sf.jasperreports.engine.data.JRAbstractBeanDataSource
CURRENT_BEAN_MAPPING, EXCEPTION_MESSAGE_KEY_BEAN_FIELD_VALUE_NOT_RETRIEVED, PROPERTY_JAVABEAN_FIELD_PROPERTY, propertyNameProvider
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
getFieldValue
(JRField field) Gets the field value for the current position.protected JRJpaDataSource.FieldValueReader
getFieldValueReader
(JRField field) void
Moves back to the first element in the data source.boolean
next()
Tries to position the cursor on the next element in the data source.Methods inherited from class net.sf.jasperreports.engine.data.JRAbstractBeanDataSource
getBeanProperty, getFieldValue, getPropertyName, isCurrentBeanMapping
-
Field Details
-
EXCEPTION_MESSAGE_KEY_INDEX_OUT_OF_BOUNDS
- See Also:
-
currentRow
-
-
Constructor Details
-
JRJpaDataSource
-
-
Method Details
-
fetchPage
protected void fetchPage() -
next
public boolean next()Description copied from interface:JRDataSource
Tries to position the cursor on the next element in the data source.- Returns:
- true if there is a next record, false otherwise
-
moveFirst
public void moveFirst()Description copied from interface:JRRewindableDataSource
Moves back to the first element in the data source. -
getFieldValue
Description copied from interface:JRDataSource
Gets the field value for the current position.- Returns:
- an object containing the field value. The object type must be the field object type.
- Throws:
JRException
-
getFieldValueReader
-