Если вы хотите отправить ICMP-пакеты в php, вы можете взглянуть на эту реализацию PHP-протокола Native-PHP ICMP , но я ее не тестировал.
Согласитесь с Оливером по длинным и нечитаемым именам методов, но тем не менее и ради аргумента вы можете добиться желаемого результата, используя эквивалентность
A /\ (B \/ C) <=> (A /\ B) \/ (A /\ C)
A and (B or C) <=> (A and B) or (A and C)
. Поэтому в вашем случае это должно выглядеть примерно так: this: findByPlan_PlanTypeInAndSetupStepIsNullOrPlan_PlanTypeInAndStepupStepIs (...)
Вариант 1: вы можете использовать именованные запросы (см. Использование JPA Named Queries ):
@Entity
@NamedQuery(name = "User.findByEmailAddress",
query = "select u from User u where u.emailAddress = ?1")
public class User {
}
public interface UserRepository extends JpaRepository<User, Long> {
User findByEmailAddress(String emailAddress);
}
Вариант2: используйте @Query
для записи ваших пользовательских запросов (см. Использование @Query )
public interface UserRepository extends JpaRepository<User, Long> {
@Query("select u from User u where u.emailAddress = ?1")
User findByEmailAddress(String emailAddress);
}
@Query
или тому подобное.
– fateddy
7 March 2016 в 10:23
Используйте что-то вроде
findByFirstElementAndCriteriaOrSecondElementAndCriteria
как (первое условие) ИЛИ (второе и условие) -> условие & amp; (первый или второй)
Criteria
, содержащие один и тот же контент: findByFirstElementAndCriteriaOrSecondElementAndCriteria(Element element1, Criteria criteria1, Element element2, Criteria criteria2) //criteria1.equals(criteria2) -> true
– thorinkor
13 June 2018 в 08:25
В настоящее время это невозможно, а также не будет в будущем. Я бы сказал, что даже если это было возможно, с более сложным запросом вы бы не хотели искусственно сжать всю сложность запроса в имя метода. Не только потому, что трудно усвоить, что происходит в запросе, но и с точки зрения клиентского кода: вы хотите использовать экспрессивные имена методов, которые - в случае простого findByUsername(…)
- вывод запроса позволяет вам create.
Для более сложных вещей вы просто повышаете сложность запроса в вызывающем коде, и желательно переходить к читаемому имени метода, который семантически выражает то, что делает запрос, и сохраняет сложность запроса в объявленном вручную запрос с использованием @Query
, именованных запросов или тому подобного.