how to get list of long values in hibernate from the table while casting from bigint to long

krltos

I get the following exception when using the getEvents method:

org.hibernate.MappingException: Unknown entity: java.lang.Long

public List<Long> getEvents(Person person) {

    String q = "select new java.lang.Long(te.event_id) "
        + "from teachers_event te"
        + "where te.teachers_id = :personId ";
    Query query = entityManager.createNativeQuery(q, Long.class);
    query.setParameter("personId", person.getId());
    return (List<Long>) query.getResultList();
}

The teachers_event table in database connects the id of teacher with the event. I don't map this table to an entity. I only want to get the ids from it. The ids in the PostgreSQL table are bigint. Is there any way to achieve it without making a separate class to map the TeacherEvents entity?

Maciej Kowalski

In JPA 2.1 there is a feature called "result set mapping".

Basically you have to define a POJO class which would hold the result values (all the values must be passed using the constructor):

public class IdResult{

    private Object id;

    public IdResult(Object id){
        this.id = id;
    }

     public Long getLongId(){
        return (Long)id;
     }
}

Then you have to declare the mapping on one of your entities (does not matter on which, it just has to be a declated @Entity):

@SqlResultSetMapping(name="IdMapping", classes = {
    @ConstructorResult(targetClass = IdResult.class, 
    columns = {@ColumnResult(name="id")})
})

You would have to use an alias in your query to match the @ColumnResult name:

select te.event_id as id
...

And finally use in the query creation:

Query query = entityManager.createNativeQuery(q, IdMapping.class);
return (List<IdResult>) query.getResultList();

Then in your service layer you would just use getLongId();

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

Insert values from a short list into a long list

SQL Selecting from very long list of values

get long format data frame from list

Implicitly casting bigint postgres datatytpe to Java Long

Python loop (for or while) to add keep adding values from a list as long as they don't exceed a given condition

Casting from int to long throws exception

How to efficiently create a SparseDataFrame from a long table?

How to unpivot from a long to a wide table?

How to create list from long data in bigquery?

How to get response data from long polling?

Geolocation - how to get city from long and lat

How to get each char* from a long void*

How to get lat long from HEXEWKB PostGis?

How to get data from a long array of data?

How to get values from logs into java list? <hibernate>

How to transform long to wide data, while adding extra rows with values from further columns

Why (c++) casting from long long unsigned int to long double and back produces 0

Casting from long double to unsigned long long appears broken in the MSVC C++ compiler

How to get values from a list while calling API

hibernate map java Long to MySQL BIGINT error

Recode from a long list of variables

Convert long series keys to hex, then Choose desired values from a list of long separated keys

How to get a long table drawed starting from the top of page using iText7 in C#?

How to prevent IE from freezing while long running script execution?

Long list of Hit and Get from sudo apt update

get JSON from long string

How to get text from long list selector item in Windows Phone 8?

Use of ReturningWork<Long> interface from Hibernate?

How to get the list item values from the table data in Selenium WebDriver?

TOP Ranking

  1. 1

    Failed to listen on localhost:8000 (reason: Cannot assign requested address)

  2. 2

    Loopback Error: connect ECONNREFUSED 127.0.0.1:3306 (MAMP)

  3. 3

    How to import an asset in swift using Bundle.main.path() in a react-native native module

  4. 4

    pump.io port in URL

  5. 5

    Compiler error CS0246 (type or namespace not found) on using Ninject in ASP.NET vNext

  6. 6

    BigQuery - concatenate ignoring NULL

  7. 7

    ngClass error (Can't bind ngClass since it isn't a known property of div) in Angular 11.0.3

  8. 8

    ggplotly no applicable method for 'plotly_build' applied to an object of class "NULL" if statements

  9. 9

    Spring Boot JPA PostgreSQL Web App - Internal Authentication Error

  10. 10

    How to remove the extra space from right in a webview?

  11. 11

    java.lang.NullPointerException: Cannot read the array length because "<local3>" is null

  12. 12

    Jquery different data trapped from direct mousedown event and simulation via $(this).trigger('mousedown');

  13. 13

    flutter: dropdown item programmatically unselect problem

  14. 14

    How to use merge windows unallocated space into Ubuntu using GParted?

  15. 15

    Change dd-mm-yyyy date format of dataframe date column to yyyy-mm-dd

  16. 16

    Nuget add packages gives access denied errors

  17. 17

    Svchost high CPU from Microsoft.BingWeather app errors

  18. 18

    Can't pre-populate phone number and message body in SMS link on iPhones when SMS app is not running in the background

  19. 19

    12.04.3--- Dconf Editor won't show com>canonical>unity option

  20. 20

    Any way to remove trailing whitespace *FOR EDITED* lines in Eclipse [for Java]?

  21. 21

    maven-jaxb2-plugin cannot generate classes due to two declarations cause a collision in ObjectFactory class

HotTag

Archive