जावा बाइटकोड इंजेक्शन वास्तव में क्या है और इसका उपयोग क्यों किया जाएगा?जावा बाइटकोड इंजेक्शन क्या है?
उत्तर
जावा कोड को संकलित करता है पढ़ें। बाइटकोड इंजेक्शन Foo.class
को रनटाइम पर संशोधित कर रहा है ताकि इसे लोड और चलाने से ठीक पहले कोड में इंजेक्ट किया जा सके।
एक परिदृश्य की कल्पना कीजिए जहां मैं पता लगाने के लिए कितनी बार विधि
public void bar();
Foo.class
में शुरू हो जाती है चाहता हूँ। मैं तो उस वर्ग लोड होने के दौरान Foo.class
को बीच में रोक java.lang.instrument
का उपयोग कर एक एजेंट लिख सकता है यह ASM का उपयोग कर संशोधित करता है ताकि bar()
कॉल com.amir.agent.incrementCount()
विधि प्रवेश पर।
$java -javagent:MyAgent Foo //assuming Foo has a main() defined
और रनटाइम पर, Foo.class
न केवल अपने सामान्य कार्य है, यह भी काम करते हो जाएगी होगा मैं MyAgent
में हर बार bar()
शुरू हो जाती है परिभाषित:
अब मैं अपने कार्यक्रम चला सकते हैं।
खरोंच से एक एजेंट के लेखन पर एक सूचक के लिए, here शुरू करते हैं।
पहली बार Google खोज देता है एक दिलचस्प बाईटकोड (Foo.java ->> Foo.class
) में Java Programming: Bytecode Injection
अपने प्रश्न के दूसरे भाग को संबोधित करने के लिए। मैं इसका उपयोग करता हूं क्योंकि मैं आलसी हूं और नहीं चाहता कि मेरे आधे (कामकाजी) जीवन लेखन गेटर्स और सेटर्स लिखें। इसके बजाय मैंने अपनी कक्षा परिभाषा से पहले एक टिप्पणी @ डेटा रखा और सबकुछ किया गया।
Project Lombok पर 3 मिनट के वीडियो प्रदर्शन देखें।
- 1. जावा: बाइटकोड
- 2. जावा बाइटकोड
- 3. क्या हम जावा 6 बाइटकोड
- 4. जावा बाइटकोड
- 5. जावा बाइटकोड संपादक?
- 6. जावा बाइटकोड विनिर्देश
- 7. obcomuscated जावा बाइटकोड decpiling
- 8. जावा बाइटकोड में प्रोग्रामिंग
- 9. जावा - बाइनरी कोड बाइटकोड के समान है?
- 10. बाइटकोड
- 11. जेवीएम बाइटकोड में एनओपी क्या है?
- 12. जावा में कोड इंजेक्शन संभव है?
- 13. जावा बाइटकोड वाद्ययंत्र के विकल्प
- 14. जावा बाइटकोड मैनिपुलेशन लाइब्रेरी सुझाव
- 15. सीपीथन बाइटकोड दुभाषिया है?
- 16. जांचें कि क्या जावा बाइटकोड में डीबग प्रतीकों
- 17. क्या मुझे जावा कंपाइलर द्वारा उत्पादित बाइटकोड देखना चाहिए?
- 18. एमएसआईएल और जावा बाइटकोड के बीच मतभेद?
- 19. एलएलवीएम और जावा बाइटकोड के बीच अंतर क्या हैं?
- 20. एंड्रॉइड पर जावा बाइटकोड चलाना - DalvikVM
- 21. बाइटकोड क्या हैं और JVM उन्हें
- 22. जावा एएसएम बाइटकोड संशोधन-बदलती विधि निकायों
- 23. जावा अनुकूलन: बाइटकोड-केवल बनाम जेआईटी
- 24. क्या सीएलआर/.NET बाइटकोड उपकरण मौजूद हैं?
- 25. जावा बाइटकोड (जावा का उपयोग किए बिना) संकलित करें
- 26. जावा बाइटकोड "अत्यधिक" संख्या को "खराब" कोड माना जाता है?
- 27. मानक लुआ बाइटकोड और लुआजिट बाइटकोड
- 28. जावा इंजेक्शन/जावा में असेंबली कोडिंग?
- 29. क्या कोई जावा बाइटकोड अनुकूलक है जो बेकार गेटोस को हटा देता है?
- 30. जावा ईई 5 निर्भरता इंजेक्शन?