وصف موجز
يقدم هذا البرنامج التعليمي بشكل أساسي كيفية تمديد تكوين XML الخاص بـ Spring حتى يتمكن Spring من التعرف على مخططنا المخصص والشرح.
الوظائف التي نريد تنفيذها هنا هي كما يلي: أولاً ، دع Spring يتعرف على التكوين التالي.
<std: endpoint />
الوظيفة التي يجب تنفيذها في هذا التكوين هي أنه بعد التكوين ، يمكن لـ Spring فحص شرحنا المخصص. ونشر خدمات WebService تلقائيًا وفقًا للتعليقات التوضيحية. لم يتم تنفيذ الوظيفة بالكامل ، وكبرنامج تعليمي لتمديد الربيع ، فإنها تلعب دورًا في جذب اليشم.
إنشاء مشروع
أولاً ، تحتاج إلى إنشاء مشروع Java ، وهنا تستخدم Maven لإنشاء مشروع QuickStart (مشروع Java العادي).
محتوى ملف POM كما يلي
<project xmlns = "http://maven.apache.org/pom/4.0.0" http://maven.apache.org/xsd/maven-4.0.0.xsd "> <DodelVersion> 4.0.0 </modelversion> <roupiD> com.codestd </groupId> <StifactId> spring-cxf-annotation-support </artifactId> <splection> 1.0.0-snapshot </version> <name> $ {project.artifactid} </name> <spried> يمكّن مشروعك من نشر WebService من خلال التعليقات التوضيحية ، استنادًا إلى تغليف Spring+CXF ، دون اقتحام API. </description> <Url> https://github.com/codestd/spring-cxf-annotation-support </url> <تراخيص> <ترخيص> <name> ترخيص Apache ، الإصدار 2.0 </mame> <Url> http://www.apache.org/licenses/license-2.0.txt </url> </quirnive> </iscrements> <geveloper> <joveer> <name> jaune (wangchengwei) </same> <Main> [email protected] </eLaM </swoles <bor thanshiper < /role ></roles><timezone> gmt+8</timezone></developer></developers><scm> <connection>https://github.com/codestd/spring-cxf-annotation-support.git</connection><deverst estd/spring-cxf-annotation-support.git </vishereRconnection> </scm> <properties> <junit.version> 4.12 </junit.version> <pring.version> 4.2.4.release </spring.version> <cxf.version> RTIES> <ERPEMONIES> <REPERENCED> <VERLOWID> JUNIT </rougiD> <ArtifactID> JUNIT </SENTIFACTID> <الإصدار> $} UPID> <STIFACTID> SPRING-COUNTEXT </ARTIFACTID> <SETRESS> $ {spring.version} </version> </reperence> <redence> <roupiD> org.apache.cxf </rougiD> <StifactID> CXF-RT-frontend-jaxws </artifactid> <sored> {cx f.version} </version> </sependency> <reperency> <roupiD> org.apache.cxf </rougled> <artifactid> cxf-rt-transports-http-jetty </stifactid> <splement> $ {cxf.version} </sperence> <sependency> <Sepensid> org.springframework </rougeid> <StifactId> اختبار الربيع </artifactid> <spervent> $ {spring.version} </version> </sependency> <redence> <roupiD> log4j </rougiD> <StifactId> log4j </shintifactid> <splect> 1.2.14 </v ersion> <scope> اختبار </scope> </sependency> <redence> <roupiD> org.slf4j </groupid> <StifactId> slf4j-log4j12 </shintifactid> <soph> 1.7.7 </version> <scope> اختبار </scope> </dependency> </project>مخطط التعريف
<؟ Xmlns: xsd = "http://www.w3.org/2001/xmlschema" e = "http://www.codestd.com/schema/std/ws" elementFormDefault = "Qualified" AttributeDefault = "unqualified"> <xsd: import مساحة الاسم = "http://www.springframework.org/schema/beans"/> <xsd: التعليق التوضيحي> <xsd: الوثائق> <! ]]> </xsd: الوثائق> </xsd: التعليق التوضيحي> <xsd: element name = "endation-endpoint"> <xsd: complextype> <xsd: complexContent> <xsd: extension base = "Beans: IdentificeType"> <xsd: attribute name = "type =" استخدام = "اختياري"> <xsd: annotation> <xsd: documentation> <! [cdata [اسم الفول. insted of id]]> </xsd: الوثائق> </xsd: التعليق التوضيحي> </xsd: السمة> <xsd: اسم السمة = "package" type = "xsd: string" use = "اختياري"> <xsd: endation> <xsd: documentation> <! ]]> </xsd: الوثائق> </xsd: التعليق التوضيحي> </xsd: السمة> </xsd: تمديد> </xsd: ComplexContent> </xsd: complextype> </xsd: element> </xsd: decma>
لن يتم وصف المعرفة حول SECHMA هنا. الأصدقاء الذين لا يعرفون كيفية استخدامه يحتاجون إلى التعرف عليه أولاً. موقع SECHMA في SRC/MAIN/ROSECENT/META-INF/SCEMA/STDWS-1.0.XSD.
التعليق التعليق
حزمة com.codestd.spring.cxf.annotation ؛ استيراد java.lang.annotation.documented ؛ استيراد java.lang.annotation.ElementType ؛ استيراد java.lang.annotation.tearence ؛ java.lang.annotation.rentionpolicy ؛ الغرض من التعرض للخدمة عن طريق إضافة {code @endpoint} التعليق التوضيحي إلى الفصل. * <p> تمديد وظيفة مسح الفاصوليا في الزنبرك. بعد إضافة هذا التعليق التوضيحي إلى الفول ، سيتم تسجيله تلقائيًا في حاوية الربيع. *Author jaune (Wangchengwei)*since 1.0.0*/ @target (elementType.type) @reateratepolicy.runtime) documentedpublic @interpoint point {/*: عنوان()؛}التكوين في الربيع
افتح "نافذة" ، "تفضيلات" ، "XML" ، "كتالوج XML". انقر فوق "إضافة" ، ثم حدد XSD الذي أنشأناه أعلاه في الموقع. "نوع المفتاح" حدد اسم مساحة الاسم وأدخل المفتاح في http://www.codestd.com/schema/std/ws/stdws-.0.xsd. وهذا هو ، اسم ملف TargetNamesPace+ المحدد في Sechma.
أضف مساحات الأسماء في الربيع واستخدم العلامات على النحو التالي. هنا نحتاج إلى استخدام وظيفة مسح شرح الربيع.
<؟ xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http://www.w3.org/2001/xmlschema- Stance "Xmlns: std =" http://www.codestd.com/schema/std/ws "xsi: schemalocation =" http: //www.springframew ork.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-4.0.xsdhtp://www.cod estd.com/schema/std/wshttp://www.codestd.com/schema/std/ws/stdws-1.0.xsd"><std:annotation-endpoint package = "com.codestd.spring.cxf.ws"/> </bans>
يتم تحديد الحزمة المراد مسحها في التكوين ولا تعتمد على التكوين مع السياق.
ما ورد أعلاه هو مخطط التكوين المخصص لـ Spring Custom Taxtible (1) مشاركته من قبل المحرر. آمل أن يكون ذلك مفيدًا للجميع.