powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
19 сообщений из 94, страница 4 из 4
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236398
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяи опять таки id здечь уже как следствие....
вот работают через хибер и не понимают ничего в базах, чуть в сторону и хватают проблемы....
вот тебя опять в сторону потянуло.
1. Id никому уже не нужен в данном сабже.
2. Причём тут разговор про всех, хибер и погоду за окном.
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236412
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор1. Id никому уже не нужен в данном сабже.
если б ты ходил по ссылкам тс и смотрел его код внимательно, ты б такое не написал.
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236430
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесли б ты ходил по ссылкам тс и смотрел его код внимательно, ты б такое не написал.
опять бла бла и Мы знаем лучше что у автора болит? Даже если автор говорит обратное.
Последнюю страничку только и говорили про простой перелив объектов коллекции.
Удачи!
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236470
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПоследнюю страничку только и говорили про простой перелив объектов коллекции.
не смотришь код, не понимаешь о чем речь....
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236533
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяне смотришь код, не понимаешь о чем речь....
не ходишь в магазин, не убираешься в подъезде...
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236639
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123вадяне смотришь код, не понимаешь о чем речь....
не ходишь в магазин, не убираешься в подъезде...

И так работает все если :

1) Использовать EclipseLinkJpaVendorAdapter

а так же указать ему магию :


jpaProperties.put("eclipselink.weaving", "false");

убрать инструменталирование кода

jpaProperties.put("jpaDialect"," org.springframework.orm.jpa.vendor.EclipseLinkJpaDialect");

дать возможность в качестве id у entity использовать значение 0

jpaProperties.put("eclipselink.allow-zero-id","true");






Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
    @Bean(name = "entityManagerFactory")
    public LocalContainerEntityManagerFactoryBean entityManagerFactory() {

        EclipseLinkJpaVendorAdapter vendorAdapter = new EclipseLinkJpaVendorAdapter();
        vendorAdapter.setGenerateDdl(false);
        vendorAdapter.setShowSql(true);
        vendorAdapter.setDatabase(Database.MYSQL);

        LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();
        em.setDataSource(GamePropsDataSource());
        em.setPackagesToScan(new String[]{"ru.stoloto.protocol.entities"});
        em.setPersistenceUnitName("persistanceUnitGameProps");
        em.setJpaVendorAdapter(vendorAdapter);
        em.setJpaProperties(additionalProperties());
        Map<String, String> jpaProperties = new HashMap<>();
        jpaProperties.put("eclipselink.weaving", "false");
        jpaProperties.put("jpaDialect"," org.springframework.orm.jpa.vendor.EclipseLinkJpaDialect");
        jpaProperties.put("eclipselink.allow-zero-id","true");
        jpaProperties.put("eclipselink.query-results-cache","true");
        em.setJpaPropertyMap(jpaProperties);
        em.afterPropertiesSet();

        return em;

    }

    @Bean
    public EclipseLinkJpaDialect eclipseLinkJpaDialect() {
        return new EclipseLinkJpaDialect();
    }




Тогда мапинг идет просто через jpa 2.1

StoredProcedureQuery query = em.createStoredProcedureQuery("PR_MPARAMETERS",MProperties.class,Cat.class,Sign.class);

и резалтсеты мапятся в pojo / сами !

но при этом !!! Нужно в объектах указать все равно что они @Entity и у них есть Id (!!!!)

Id необходим для внутреннего отображения в коллекции при мапинге ... без него никак.


Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
@Entity
public class Sign  implements Serializable {


    private static final long serialVersionUID = 1L;

    @Id
    private Integer sign;

    public Integer getSign() {
        return sign;
    }

    public void setSign(Integer sign) {
        this.sign = sign;
    }
}



Это все равно лучше чем руками перекладывать по полям pojo объектов из резатсетов значения ... через rowmapper или что то другое ...


Хотя я удивлен что нет нормального решения через рефлексию для мапинга из резатсетов в коллекции pojo объектов :( стоит такое создать ...
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236687
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1Это все равно лучше чем руками перекладывать по полям pojo объектов из резатсетов значения ... через rowmapper или что то другое ...
Хотя я удивлен что нет нормального решения через рефлексию для мапинга из резатсетов в коллекции pojo объектов :( стоит такое создать ...
- при желании, Id-счётчик можно сгенерить прямо во время запроса. Он будет не уникальный для БД, а уникальный для маппинга. Я не знаю что вам именно нужно.
2. Можно соединять один Id из одного набора записей со вторым. Например, Id будет 123,45 - нецелое число.
Не знаю, будет ли работать ОРМ с ним \ JPA. У меня без ОРМ - работает.
авторЭто все равно лучше чем руками перекладывать по полям pojo объектов из резатсетов значения
я пока этого не видел. Т.к. в коде что ты приводил (говорил что он фиктивный), ты лазил по одному - другому и использовал зависимости в коде. Т.е. БЛ была зашита прямо в код.
Но, если у тебя всё получилось, то я рад - удачи!
Atum1стоит такое создать ..
нет. мульти сеты нафиг не нужны. А без них, на SQL'е всё работает.
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236697
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum11) Использовать EclipseLinkJpaVendorAdapter
пров JPA кто?
Я так понял MyBatis ты не юзал.
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236812
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

спасибо !

пока MyBatis еще не смотрел .


- при желании, Id-счётчик можно сгенерить прямо во время запроса. Он будет не уникальный для БД, а уникальный для маппинга. Я не знаю что вам именно нужно.
2. Можно соединять один Id из одного набора записей со вторым. Например, Id будет 123,45 - нецелое число.
Не знаю, будет ли работать ОРМ с ним \ JPA. У меня без ОРМ - работает.
автор
Это все равно лучше чем руками перекладывать по полям pojo объектов из резатсетов значения



Это как ? есть пример кода ?
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236867
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1,
У меня sql без мульти изврата. Нужно?
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236876
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1,
тебе задали вопросы - ответь, решение может оказаться очень простым
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39236904
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1Это как ? есть пример кода ?
на память псевдокод:
ВИ
====
- В ИС А есть 2-е сущности, которые в отдельных справочниках с возможным пересечением ID
- В ИС Б проектируемой нет таких тонкостей и нужно огрегированное одно из двух.
Например в А есть самолёты и паровозы. А в Б мы учитываем как Средства передвижения.
- делаем типа фасада в виде вьюхи у себя или в системе А.
Код: sql
1.
2.
3.
select to_number(id||'.1')  ID, t.* from Самолёты
union all
select to_number(id||'.2')  ID, t.* from Паровозы


Потом у себя в ИС Б работаем только через вьюху на внешнюю ИС.
я у себя поменял только тип поля с целого на дробный. Остальное всё работает как с целым PK
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237074
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Atum1,
У меня sql без мульти изврата. Нужно?

да.

АПИ все таки не все состоят из множественных RS :)
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237075
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяAtum1,
тебе задали вопросы - ответь, решение может оказаться очень простым

Вадя, можно еще раз продублировать вопрос .
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237327
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как ты определяешь, что не id?
и
приведи пример реальной хранимки для которой нет id.
и
как ты с этой хранимкой работаешь
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237352
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадякак ты определяешь, что не id?
и
приведи пример реальной хранимки для которой нет id.
и
как ты с этой хранимкой работаешь


1)
нет id - это я привел пример - в одном из RS ( в каждой ХП ) есть статус выполнения данной ХП - код ошибки или 0 в случае успеха

id != 0 как известно )

2)
как работаю - я код скинул 19161713
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237460
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1,
это не ответ, я всё это прочитал, и я везде увидел id.
постарайся чётко ответить на вопросы - хранимка, код с хранимкой и прочее
...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237484
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяAtum1,
это не ответ, я всё это прочитал, и я везде увидел id.
постарайся чётко ответить на вопросы - хранимка, код с хранимкой и прочее

Самая простая с 1 RS

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
SET NAMES 'utf8' COLLATE 'utf8_unicode_ci'\p;
use db_rt\p;

-- ===========================================================================
-- 1. drop/create 

DELIMITER $$

DROP PROCEDURE IF EXISTS `gettemplate` \p$$

CREATE PROCEDURE `gettemplate` (
	IN a_id BIGINT UNSIGNED,
	IN a_agntid INTEGER UNSIGNED,
	IN a_type ENUM ('type1', 'type2'),
	IN a_drawid INTEGER UNSIGNED,
	IN a_tm BIGINT UNSIGNED
)
l_proc: begin

    DECLARE V_SIGN_OK INTEGER UNSIGNED DEFAULT 0;
    DECLARE V_INVALID_ID INTEGER UNSIGNED DEFAULT 1;
    DECLARE V_NO_READY_ID INTEGER UNSIGNED DEFAULT 2;
    DECLARE V_NO_READY_ID2 INTEGER UNSIGNED DEFAULT 3;
    
    DECLARE v_res_sign INTEGER UNSIGNED DEFAULT V_SIGN_OK;
    
    DECLARE v_tempid BIGINT UNSIGNED;
    DECLARE v_lawid BIGINT UNSIGNED;
    DECLARE v_adsid BIGINT UNSIGNED;

    DECLARE v_temp_text VARCHAR(4000);
    DECLARE v_law_text VARCHAR(4000);
    DECLARE v_ads_text VARCHAR(1000);
    
    DECLARE v_gmid BIGINT UNSIGNED DEFAULT NULL;
   
    SELECT `id` INTO v_gmid FROM `gm` WHERE `pr_id` = a_id;
    
    IF v_gmid IS NOT NULL THEN
    
		
		SELECT MAX(`id`) INTO v_tempid FROM `rt_temp` 
		WHERE v_gmid = `gmid` AND `st` = 'can' AND
			(FROM_UNIXTIME(a_tm) >= `min_date` OR `min_date` IS NULL ) AND
			(a_drawid >= `min_id` OR `min_id` IS NULL);

		IF v_tempid IS NOT NULL THEN
			SELECT `temp_text` INTO v_template_text FROM `receipt_template` WHERE `id` = v_tempid;
		ELSE
			SET v_res_sign = V_NO_ID;
		END IF;


		IF v_res_sign = V_SIGN_OK THEN
			
			SELECT MAX(`id`) INTO v_law_info_id FROM `law_info`
			WHERE v_gmid = `gm_id` AND `st` = 'can' AND `txt_type` = a_type AND
				(FROM_UNIXTIME(a_tm) >= `min_date` OR `min_date` IS NULL ) AND
				(a_drawid >= `min_id` OR `min_id` IS NULL);

			IF v_lawid IS NOT NULL THEN
				SELECT `lawtxt` INTO v_law_text FROM `lawinfo` WHERE `id` = v_lawid;
			ELSE
				SET v_res_sign = V_NO_READY_ID2;
			END IF;

		END IF;


		IF v_res_sign = V_SIGN_OK THEN
			
			SELECT MAX(`id`) INTO v_adsid FROM `adsinfo`
			WHERE (v_gmid = `gm_id` OR `gm_id` IS NULL) AND `st` = 'can' AND
			(a_agntid = `agntid` OR `agntid` IS NULL) AND
			(FROM_UNIXTIME(a_tm) >= `min_date` OR `min_date` IS NULL ) AND
			(FROM_UNIXTIME(a_tm) <= `max_date` OR `max_date` IS NULL ) AND
			(a_drawid >= `min_id` OR `min_id` IS NULL) AND
			(a_drawid <= `max_id` OR `max_id` IS NULL);


			IF v_ads_id IS NOT NULL THEN
				SELECT `ads_text` INTO v_ads_text FROM `adsinfo` WHERE `id` = v_ads_id;
			END IF;

		END IF;
		
	ELSE
		SET v_res_sign = V_INVALID_ID;
	END IF;
	
	SELECT v_res_sign, v_temp_text, v_law_text, v_ads_text, v_temp_id, v_law_id, v_ads_id;
	
end
\p$$

DELIMITER ;

-- ===========================================================================


GRANT EXECUTE ON PROCEDURE `db_rt`.`gettemplate` TO 'a_user'@'%' \p;

-- the END
-- ===========================================================================

...
Рейтинг: 0 / 0
Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
    #39237519
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1,
при таких ответах, отпадает желание помогать,
сколько можно повторять????
нужен полный ответ, а не какие-то пародии имитирующие знание предмета.
тебе нужна помощь - напряги извилины - ответь на вопросы полно
...
Рейтинг: 0 / 0
19 сообщений из 94, страница 4 из 4
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring JPA 2.1 NamedStoredProcedureQuery more complex example with multiple results
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]