这里我试图用jpa从mysql数据库中获取数据,但是我被findby绊倒了,如何使用Crudepository spring数据jpa为下面的查询编写findby方法?
select t.id, t.MSISDN, t.Param1, t.param2
from BULK_REPOSITORY t
where t.Camp_Start_Date between Sysdate - 2 and sysdate
and t.status = 0
and t.camp_type = 1;
我试过这个,但它不工作:
List<Bulk_repository> findByStatusInAndfindByCamp_typeIn(int status, int camp_type);
我有这样的实体类:
@Entity
@Table(name = "BULK_REPOSITORY")
public class Bulk_repository {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "id")
private long id;
@Column(name = "msisdn")
private String msisdn;
@Column(name = "camp_start_date")
private Date camp_start_date;
@Column(name = "camp_end_date")
private Date camp_end_date;
@Column(name = "camp_type")
private int camp_type;
@Column(name = "camp_cd")
private String camp_cd;
@Column(name = "status")
private int status;
@Column(name = "process_date")
private Date process_date;
@Column(name = "entry_date")
private Date entry_date;
@Column(name = "entry_user")
private String entry_user;
@Column(name = "param1")
private String param1;
@Column(name = "param2")
private String param2;
@Column(name = "param3")
private String param3;
@Column(name = "param4")
private String param4;
@Column(name = "param5")
private String param5;
@Column(name = "error_desc")
private String error_desc;
您可以将Spring数据JPA中的@Query
与JPQL一起使用:
JPQL不支持句号。所以你必须自己处理:
java prettyprint-override">@Query("SELECT t from Bulk_repository t " +
"WHERE t.camp_start_date BETWEEN CURRENT_DATE AND :currentDateMinus2 " +
"AND t.status = :status " +
"AND t.camp_type = :campType")
List<Bulk_repository> findByStatusInAndfindByCamp_typeIn(
@Param("status") int status,
@Param("campType") int camp_type,
@Param("currentDateMinus2") Date currentDateMinus2);
我建议将日期范围作为参数传递给方法。
List< Bulk_repository> findByStatusIsAndCamp_typeIsAndCamp_start_dateBetween(int status, int campType, Date start, Date end)
试试下面
List<Bulk_repository> findAllByStatusAndCamp_typeAndCamp_start_dateBetween(
int status, int camp_type,Date camp_start_dateStart, Date camp_start_dateEnd)
无论你想叫它到哪里
@Autowired
private Bulk_repository bulkRepository;
public List<Bulk_repository> getListRepositoryByConditions(){
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -2);
Date startDate = cal.getTime();
Date endDate = new Date();
return bulkRepository.findAllByStatusAndCamp_typeAndCamp_start_dateBetween(
0, 1,startDate, endDate);
}
我尝试在数据帧“df_energy”中添加一个新的列“energy_class”,如果“consumpion_energy”值为 有什么办法可以帮我吗? 先谢谢你
我不能执行这个声明。
我收集了用户在商店购买的物品,以及他从朋友那里得到的喜欢和不喜欢的东西。集合字段如下所示: 现在,我想得到以下总结: 获取用户X的(喜欢-不喜欢)差异 获取用户X的差异(喜欢-不喜欢)到存储Y 获取用户X的(喜欢-不喜欢)差异到商店Y和产品Z 对于#1,我做了: 我得到了正确的结果: [{"_id":"542ea90fbb1e37b09f660980","rankDiff": 2}] 但当我试图通
问题内容: 我想知道是否可能有这样的事情: 知道项目是通过请求接收的JSON容器,因此这就是为什么我使用键值方法的原因。 谢谢 我之所以问是因为我尝试使用Google进行谷歌搜索,但是我唯一能得到的结果是,但是我必须使用。 问题答案: 你当然可以。就像是: HTML JS 演示小提琴
基于我上一篇文章:Spring JPA long SQL String for NativeQuery null 我试着重命名了上面看到的文件,但它说文件中的方法在启动过程中找不到。知道如何让项目理解多个orm.xml文件吗?
我的应用程序有250多个表,每个表都有ID和name列。我正在尝试用Hibernate5+将我们的应用程序从Hibernate3迁移到Spring-JPA4.3。 在当前的hibernate层中,我有(选项1): 因此,如何在一个JPA存储库中执行以下操作: