Spring Data JPA 复杂仓库接口

java

复制

下载

@Repository

public interface OrderRepository extends JpaRepository<Order, Long>,

JpaSpecificationExecutor<Order> {

// 派生查询方法

List<Order> findByCustomerIdAndStatusIn(Long customerId, List<JiAOYu.HUoCheNGrM.CN/jy/19728.html OrderStatus> statuses);

// JPQL查询

@Query("SELECT o FROM Order o WHERE o.totalAmount > :minAmount AND o.createdAt >= :startDate")

Page<Order> findLargeOrders(@Param("minAmount") BigDecimal minAmount,

@Param("startDate") LocalDateTime startDate,

Pageable pageable);

// 动态查询

default List<Order> findOrdersByCriteria(OrderSearchCriteria criteria) {

return findAll((root, JiAOYu.HUoCheNGrM.CN/jy/19727.html, cb) -> {

List<Predicate> predicates = new ArrayList<>();

if (criteria.getCustomerId(JiAOYu.HUoCheNGrM.CN/jy/19726.html) != null) {

predicates.add(cb.equal(root.get("customerId"), criteria.getCustomerId()));

}

if (criteria.getStartDate() != null) {

predicates.add(cb.greaterThanOrEqualTo(root.get("createdAt"), criteria.getStartDate()));

}

return cb.and(predicates.toArray(new Predicate[0]));

});

}

}

4. Spring Security 配置(OAuth2 + JWT)

java

复制

下载

@EnableWebSecurity

@EnableGlobalMethodSecurity(prePostEnabled = true)

public class SecurityConfig JiAOYu.HUoCheNGrM.CN/jy/19725.htmlextends WebSecurityConfigurerAdapter {

@Autowired

private JwtAuthenticationFilter jwtFilter;

@Override

protected void configure(HttpSecurity http) throws Exception {

http.csrf().disable()

.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)

.and()

.authorizeRequests()

.antMatchers("/api/auth/ JiAOYu.HUoCheNGrM.CN/jy/19724.html").permitAll()

.antMatchers("/api/admin/**").hasRole("ADMIN")

.anyRequest().authenticated()

.and()

.addFilterBefore(jwtFilter, UsernamePasswordAuthenticationFilter.class)

.oauth2ResourceServer()

.jwt()

.jwtAuthenticationConverter(jwtAuthenticationConverter());

}

private Converter<Jwt, AbstractAuthenticationToken> jwtAuthenticationConverter() {

JwtAuthenticationConverter converter = new JwtAuthenticationConverter();

converter.setJwtGrantedAuthoritiesConverter(jwt -> {

List<String> JiAOYu.HUoCheNGrM.CN/jy/19723.html = jwt.getClaimAsStringList("roles");

return roles.stream()

.map(SimpleGrantedAuthority::new)

.collect(Collectors.toList());

});

return converter;

}

}

特别声明:[Spring Data JPA 复杂仓库接口] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

魏老六聊城鸡腿:办公室零食界的“隐形冠军”(魏老六正宗魏氏熏鸡老店(开发区店)怎么样)

魏老六鸡腿作为聊城地区特色美食,在即食休闲食品市场占据独特地位。它凭借独特的风味和便捷包装成为上班族的理想选择。本文深入剖析其制作工艺、营养价值、消费场景及其对地方经济的影响。

魏老六聊城鸡腿:办公室零食界的“隐形冠军”(魏老六正宗魏氏熏鸡老店(开发区店)怎么样)

『宋茜』短发娃娃裙造型亮相,撞脸吴昕『马伊琍』,俏皮可爱很精致(『宋茜』短发娃娃裙造型亮相)

近日,浙江潮州的T风格时尚论坛活动上,『宋茜』一头短发,『妆容』精致,身着娃娃裙亮相,让人耳目一新。 裙子👗是酒红色蕾丝边吊带裙,镂空花纹加蓬蓬裙摆,自带复古柔美感;脚下搭配银色铆钉凉鞋,手里拎着纯白色小包,甜中带点飒…

『宋茜』短发娃娃裙造型亮相,撞脸吴昕『马伊琍』,俏皮可爱很精致(『宋茜』短发娃娃裙造型亮相)

德绒2件装上衣:秋冬季儿童的贴心守护者(德绒材质衣服如何)

为什么今年的德绒上衣如此流行?它是如何在保暖性和时尚性间找到平衡的?这不仅是一种服装的选择,更是对儿童成长过程中保暖需求的深度考量。 本文将深入解析这种深受家长和孩子喜爱的秋冬装。

德绒2件装上衣:秋冬季儿童的贴心守护者(德绒材质衣服如何)

铠甲勇士小说有哪些必读篇章?里面有什么精彩设定?😎(铠甲勇士小说有多少章)

铠甲勇士小说深受小朋友喜爱,但家长可能对具体篇目和情节不太了解。本篇文章深入解读铠甲勇士小说的世界观和主要角色关系,让你快速掌握这部充满正义感的作品。无论你是想了解铠甲勇士系列小说的最新出版信息,还是重温经典故事情节,本文都能为你提供专业解

铠甲勇士小说有哪些必读篇章?里面有什么精彩设定?😎(铠甲勇士小说有多少章)

旋转盘共焦点显微镜🔬的演变(转盘式共聚焦显微镜🔬特点)

由于这些系统拥有极高的最大分辨率,因此有必要将它们与能够在超分辨率下采样、高灵敏度和速度的现代相机📷️配对。 随着SDCM成像系统从过去到现在取得的巨大进步,这些系统未来将如何发展?成像技术与显微镜🔬同步进步,下…

旋转盘共焦点显微镜🔬的演变(转盘式共聚焦显微镜🔬特点)