我试图@Transactional在我的服务的方法中使用注释来懒洋洋地加载一个字段.但是,@Transactional在我的Implementation类上使用会生成所有自动装配的字段null.
这是我的实现:
@Service
public class UserServiceImpl implements UserService {
/**
* DefaultMapper.
*/
@Autowired
private DefaultMapper defaultMapper;
/**
* Resource service injection.
*/
@Autowired
private ResourceService resourceService;
/**
* UserRepository.
*/
@Autowired
private UserRepository userRepository;
/**
* Jwt Factory.
*/
@Autowired
private JwtService jwtService;
@Override
@Transactional
public final UserDto findByLogin(final String login) throws ResourceNotFoundException {
// user repository is null here when using @Transactional
User user = this.userRepository.findByLogin(login)
.orElseThrow(() -> new ResourceNotFoundException(
resourceService.getMessage(MessageBundle.EXCEPTION, "resource.notfound.user.login") …Run Code Online (Sandbox Code Playgroud) 我想问一下如何SELECT Distinct on field在 Querydsl 4 中创建一个。执行此 SQL 请求的最佳方法是什么:
SELECT DISTINCT ON
(company_id, EXTRACT(MONTH FROM createddt), EXTRACT(YEAR FROM createddt)) id,
createddt
FROM companystats
ORDER BY company_id,
EXTRACT(MONTH FROM createddt) DESC,
EXTRACT(YEAR FROM createddt) DESC,
createddt DESC
Run Code Online (Sandbox Code Playgroud)
谢谢。