Size: a a a

Spring Framework and more

2020 February 14

Ю

Юрий in Spring Framework and more
Роман Нагаев
он всё равно запросит сущность целиком)
просто потом возьмёт из неё только id

@AlexD надо просто переделать его селект на jpql и будет норм
так в запросе тоже самое)
источник

RS

Ruslan Stelmachenko in Spring Framework and more
Юрий
sql инъекции
какие sql-инъекции в захардкоженном SQL, в котором даже нет какого-либо user input? )
источник

Ю

Юрий in Spring Framework and more
Ruslan Stelmachenko
какие sql-инъекции в захардкоженном SQL, в котором даже нет какого-либо user input? )
упс, не увидел)
источник

OD

O. D. in Spring Framework and more
Юрий
sql инъекции
Все ещё не понимаю что здесь может пойти на так
источник

РН

Роман Нагаев in Spring Framework and more
Юрий
так в запросе тоже самое)
он запрашивает только id, а findAll вытащит все поля + eager связи
источник

OD

O. D. in Spring Framework and more
Роман Нагаев
он запрашивает только id, а findAll вытащит все поля + eager связи
+
источник

Ю

Юрий in Spring Framework and more
O. D.
Все ещё не понимаю что здесь может пойти на так
в твоем случае можно использовать натив квери
источник

OD

O. D. in Spring Framework and more
Юрий
в твоем случае можно использовать натив квери
Сейчас загуглю
источник

Ю

Юрий in Spring Framework and more
Роман Нагаев
он запрашивает только id, а findAll вытащит все поля + eager связи
так субд работает как , сначала вытащит все поля, а потом из них только id
источник

Ю

Юрий in Spring Framework and more
т.е тоже самое
источник

RS

Ruslan Stelmachenko in Spring Framework and more
по сети все равно меньше данных передается
источник

Ю

Юрий in Spring Framework and more
по идее, могу ошибаться
источник

РН

Роман Нагаев in Spring Framework and more
O. D.
Все ещё не понимаю что здесь может пойти на так
да всё так, просто если название сущности изменится jpql провалидируется при компиляции а sql нет и упадёт в рантайме
источник

RS

Ruslan Stelmachenko in Spring Framework and more
к тому же СУБД работает не так. если есть индекс по ID, а он скорее всего есть, то большинство СУБД даже не пойдет в область хранения данных, она просто вытащит данные прямо из индекса
источник

Ю

Юрий in Spring Framework and more
Ruslan Stelmachenko
к тому же СУБД работает не так. если есть индекс по ID, а он скорее всего есть, то большинство СУБД даже не пойдет в область хранения данных, она просто вытащит данные прямо из индекса
надо будет скорость замерить
источник

OD

O. D. in Spring Framework and more
Роман Нагаев
да всё так, просто если название сущности изменится jpql провалидируется при компиляции а sql нет и упадёт в рантайме
О, не знал, спасибо
источник

АР

Андрей Романов in Spring Framework and more
Юрий
findAll().stream().map(Shops::getId).collect(Collectors::toList) плохо что ли?)
причём findAll вытащит все записи, что не очень хорошо при большом объёме данных
источник

PD

Plomipu Dmitri in Spring Framework and more
народ. Я вас умоляю помогите плиз. Ситуация срочная с ломбоком и джексоном. Короче у меня есть dto-шка в которую я получаю как результат запроса( это не важно какого. Суть не совсем в этом ).

@Data
@NoArgsConstructor
public class EmployeeTimeReportDto implements Serializable {

private Long timeReportId;
private LocalDate date;
private LocalTime start;
private LocalTime end;
private HoursAndMinutesDto totalHours;
private TimeReportStatusEnum status;
private boolean isApproved;


/*@builder e.t.c.*/
}

Но в конечной JSON-ине я получаю поле "approved" вместо "isApproved". Попробовал модифицировать геттер, чтобы джексон его увидел и поменял название поля при сериализации, добавя в дтошку следующее:

@Getter(AccessLevel.NONE)
private boolean isApproved;

@JsonProperty("isApproved")
public boolean isApproved(){
 return this.isApproved;
}

но привязанность "approved" у джексона никуда не делась, появилось при этом конечно поле ещё и "isApproved", но произошло исключение:

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "approved" (class ee.h2h.h2hwebserver.controller.dto.response.job.EmployeeTimeReportDto), not marked as ignorable (7 known properties: "isApproved", "start", "end", "timeReportId", "date", "status", "totalHours"])
at [Source: (String)"[{"timeReportId":2854,"date":[2019,5,15],"start":[8,0],"end":[17,0],"totalHours":{"hours":9,"minutes":0},"status":"AUTOMATICALLY_GENERATED","approved":false,"isApproved":false},{"timeReportId":2855,"date":[2019,5,16],"start":[8,0],"end":[17,0],"totalHours":{"hours":9,"minutes":0},"status":"AUTOMATICALLY_GENERATED","approved":false,"isApproved":false})
источник

PD

Plomipu Dmitri in Spring Framework and more
я клянусь, что я искал во всём проекте, где я объявил поле какому-либо классу "approved", но ничего не нашёл. Нигде нету approved, в полях классов только isApproved
источник

PD

Plomipu Dmitri in Spring Framework and more
как сделать так чтобы джексон в той дтошке поменял имя поля для JSON-ины и вообще при сериализации и десериализации обращался к этому булевскому полю как "isApproved", а не пытался искать "approved", которого нет и я не определял ??
источник