Criar uma Sessão em Java

Pessoal, eu estou com dificuldade para criar uma session em Java. Eu estou criando um api que cadastra chamados. Em resumo, eu tenho os Controladores UsuariosController e a ChamadosController. Em ChamadosController ele precisa receber o id do usuario que fez o login no sistema para ser associado ao chamado. Como eu posso criar uma sessão eu passar o id do usuario para a classe ChamadosController?

Segue as classes:

@Api(tags="Usuarios")

@RestController
@RequestMapping("/usuarios")
public class UsuariosController {

@Autowired
private UsuariosRepository usuariosRepository;
private BCryptPasswordEncoder bCryptPasswordEncoder;
public UsuariosController(UsuariosRepository usuariosRepository, BCryptPasswordEncoder bCryptPasswordEncoder)
{
	this.usuariosRepository = usuariosRepository;
	this.bCryptPasswordEncoder = bCryptPasswordEncoder;
}

@ApiResponses(value = {
		@ApiResponse(code = 200, message = "Retorna a lista de usuarios"),
		@ApiResponse(code = 403, message = "Você não tem permissão para acessar este recurso"),
	})
@ApiOperation(value = "", authorizations = { @Authorization(value = "jwtToken") })
@RequestMapping(method=RequestMethod.GET, value="/cadastrados")
public @ResponseBody List<Usuarios> listausuarios() {
	return usuariosRepository.findAll();
}

@PostMapping("/cadastro")
public void signUp(@RequestBody Usuarios usuarios, HttpSession session)
{
	usuarios.setSenha(bCryptPasswordEncoder.encode(usuarios.getSenha()));
	usuariosRepository.save(usuarios);
	
	session.setAttribute("usuario", new Usuarios().getId());
	
}



    @RestController
   @RequestMapping("/chamados")
  public class ChamadosController {

@Autowired
private ChamadosService chamadosService;

@ApiOperation(value = "", authorizations = { @Authorization(value = "jwtToken") })
@GetMapping(value = "/{chamadoId}")
public ResponseEntity<Chamados> findById(@PathVariable Long chamadoId) {
	Chamados obj = chamadosService.findById(chamadoId);
	return ResponseEntity.ok().body(obj);
}

@ApiOperation(value = "", authorizations = { @Authorization(value = "jwtToken") })
@PostMapping("/{userId}/{problemId}")
public ResponseEntity<Chamados> cadastrarChamado(@PathVariable("userId") Long userId, @PathVariable("problemId") Long problemId,
		@RequestParam("file") MultipartFile file, @RequestParam("descricaoProblema") String descricaoProblema,
		@RequestParam("dataCriacao") String dataCriacao) {
	
	Chamados obj = chamadosService.salvarDados(userId, problemId, file, descricaoProblema, dataCriacao);
	
	URI uri = ServletUriComponentsBuilder.fromCurrentRequest().path("/{chamadoId}")
			.buildAndExpand(obj.getId()).toUri();
	return ResponseEntity.created(uri).build();
}

@ApiOperation(value = "", authorizations = { @Authorization(value = "jwtToken") })
@GetMapping
public ResponseEntity<List<Chamados>> ListaDeChamados() {
	List<Chamados> list = chamadosService.lista();
	return ResponseEntity.ok().body(list);
}

@ApiOperation(value = "", authorizations = { @Authorization(value = "jwtToken") })
@GetMapping("/baixarAnexo/{chamadoId}")
public ResponseEntity<ByteArrayResource> downloadFile(@PathVariable Long chamadoId){
	Chamados chamado = chamadosService.getFile(chamadoId).get();
	return ResponseEntity.ok()
			.contentType(MediaType.parseMediaType(chamado.getTipoAnexo()))
			.header(HttpHeaders.CONTENT_DISPOSITION,"attachment:filename=\""+chamado.getNomeAnexo()+"\"")
			.body(new ByteArrayResource(chamado.getAnexo()));
}

}

Amigo, você já está usando jwt certo? Porque você não inclui o id dele no jwt e faz o decode dele e no momento que você inicar o processo?

@BlackDog se eu fosse usar uma sessão, você sabe como eu poderia obter o id do usuário? Eu sou iniciante. Eu estou aprendendo java web.