में हेडर प्राप्त करने के लिए कैसे मैं नवीनतम स्प्रिंग डेटा रेस्ट का उपयोग कर रहा हूं और मैं बनाने से पहले "" ईवेंट को संभालने में हूं। आवश्यकता मैं भी मॉडल "ग्राहक" के लिए पोस्ट अंतबिंदु को प्रस्तुत HTTP हेडर कब्जा करने के लिए है। हालांकि, के लिए इंटरफ़ेस RepositoryEventHandler इसका खुलासा नहीं करता है।स्प्रिंग डेटा रेस्ट - @RepositoryEventHandler
@Component
@RepositoryEventHandler
public class ClientEventHandler {
@Autowired
private ClientService clientService;
@HandleBeforeCreate
public void handleClientSave(Client client) {
...
...
}
}
हम घटनाओं से कैसे निपटता और HTTP हेडर पर कब्जा कर सकते हैं? मैं का उपयोग करता है @RequestHeader HttpHeaders हेडर वसंत MVC तरह पैरामीटर के लिए उपयोग करना चाहते हैं।
की कोशिश की मैं परीक्षण नहीं किया है, लेकिन आप कर सकते हैं '@ Autowired'' 'HttpServletRequest सीधे' तरह @Autowired \t निजी HttpServletRequest अनुरोध; 'तो request.getHeader (" उपयोगकर्ता-एजेंट ") का उपयोग' '.can आप कृपया उदाहरण यहाँ https://www.mkyong.com जाँच/जावा/कैसे करने वाली मिलता-http-अनुरोध हेडर में जावा/ –
HttpServletRequest एक स्प्रिंग प्रबंधित नहीं है सेम तो autowired नहीं किया जा सकता। –
एक कस्टम नियंत्रक के बिना एक विचार एक सर्वलेट फ़िल्टर होगा जो थ्रेडलोकल का उपयोग करके मौजूदा थ्रेड को आवश्यक मानों को बांधता है और उन्हें स्थिर कॉल के माध्यम से उपलब्ध कराता है। उदाहरण के लिए देखें http://veerasundar.com/blog/2010/11/java-thread-local-how-to-use-and-code-sample/ या http://blog.smartbear.com/programming/how- और-कब-उपयोग-जावा-थ्रेडलोकल-ऑब्जेक्ट/ –