Wednesday, 15 July 2015

mysql - How to Map Native Query result to java Class -



mysql - How to Map Native Query result to java Class -

i working on java nativequery in jpa.i have result in class practice how map distance variable practice class .please help me.

list<practice> resultdata=(list<practice>)em.createnativequery("select *, ( 3959 * acos( cos( radians(?1) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(?2) ) + sin( radians(?1) ) * sin( radians( latitude ) ) ) ) distance tb_practice having distance < 200 order distance;",practice.class) .setparameter(1, latitude) .setparameter(2, longitude) .getresultlist();

this result of query: please help how map distance variable class practice.

@entity(name = "tb_practice") public class practice { @id @generatedvalue(strategy = generationtype.auto) private long id; private string address; private string city; private string distance; }

this pratice table.

i think need both grouping derived table expression.

you need list tb_practice table columns instead of column1...columnn, query:

list<practice> resultdata= (list<practice>) em.createnativequery(" select new practice( p.id, p.address, p.city) ( select p.id, p.address, p.city, ( 3959 * acos( cos( radians(?1) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(?2) ) + sin( radians(?1) ) * sin( radians( latitude ) ) ) ) distance tb_practice grouping p.id, p.address, p.city having distance < 200 order distance ) practice_by_distance ",practice.class) .setparameter(1, latitude) .setparameter(2, longitude) .getresultlist();

java mysql hibernate jpa native

No comments:

Post a Comment