تتضمن عناصر الويب الشائعة الاستخدام: الطلب ، الجلسة ، التطبيق ، وما إلى ذلك ، ونحن نستخدم الجلسات بشكل عام أكثر. كيفية الوصول إلى عناصر الويب في Struts2؟ هذا مهم للغاية لأنه يمكنه إكمال تفاعل البيانات بين خلفية البرنامج والمستخدم. فيما يلي مثال تسجيل لإظهار عمليته:
1. index.jsp file
<٪@ page language = "java" contentType = "text/html ؛ charset = utf-8" pageencoding = "utf-8" ٪> <٪ string path = request.getContextPath () ؛ String BasePath = request.getScheme ()+": //"+request.getServerName ()+":"+request.getServerPort ()+path+"/" ؛ ٪> <! doctype html public "-// w3c // dtd html 4.01 transitional // en" "http://www.w3 <base href = "<٪ = basepath ٪>"/> <title> إدراج العنوان هنا </title> </head> <body> <h1> demo </h1> <form action = "user/user02! register" method "method =" post "> name: <input type =" text "name =" user.name <type type = "إرسال" value = "سجل"/> </form> </body> </html>
الوظيفة بسيطة للغاية - أي أن المستخدم يدخل اسم المستخدم وكلمة المرور ، وبعد ذلك يمكن الحصول عليه في الخلفية ، وبعد ذلك سيتم عرضه على المستخدم بعد نجاح التسجيل.
2. تكوين struts.xml
<؟ name = "front" namepace = "/user" تمديد = "struts-default"> <action name = "user*"> <srode>
هناك طريقتان لإكمال هذه الوظيفة
3. النوع الأول (userAction01)
حزمة com.myservice.web ؛ استيراد java.util.map ؛ استيراد com.opensymphony.xwork2.ActionContext ؛ استيراد com.opensymphony.xwork2.actionsupport ؛ يمتد UserAction من الفئة العامة 0 ACTORATIONSUPORT { / ** * * / private static Final Long SerialVersionuid = 1L ؛ مستخدم خاص للمستخدم ؛ طلب الخريطة الخاصة ؛ جلسة خريطة خاصة ؛ تطبيق الخريطة الخاصة ؛ useraction useraction01 () {request = (map) ActionContext.getContext (). get ("request") ؛ الجلسة = ActionContext.getContext (). getSession () ؛ application = ActionContext.getContext (). getApplication () ؛ } string public record () {request.put ("name" ، user.getName ()) ؛ request.put ("كلمة المرور" ، user.getPassword ()) ؛ العودة النجاح } المستخدم العام getUser () {return user ؛ } public void setUser (user user) {this.user = user ؛ }}هذه الطريقة هي استخدام طريقة ActionContext.getContext () للحصول على السياق ، ثم الحصول على الطلب والجلسة والتطبيق
4. طريقة أخرى (userAction02) شائعة جدًا ومشهورة جدًا - IOC (انعكاس التحكم) و DI (حقن التبعية). يتطلب تنفيذ 3 واجهات على النحو التالي:
حزمة com.myservice.web ؛ استيراد java.util.map ؛ استيراد org.apache.struts2.Interceptor.ApplicationAware ؛ استيراد org.apache.struts2.Interceptor.requestaware ؛ استيراد org.apache.struts2.Interceptor.SessionAware ؛ استيراد com.opensymphony.xwork2.actionsupport ؛ يمتد Useraction Class Public Classe02 ActionSupport يطبقات requestaware ، SessionAware ، ApplicationAware {Private Map <String ، Object> request ؛ خريطة خاصة <سلسلة ، كائن> جلسة ؛ الخريطة الخاصة <string ، Object> Application ؛ مستخدم خاص للمستخدم ؛ المستخدم العام getUser () {return user ؛ } public void setUser (user user) {this.user = user ؛ } string public record () {request.put ("name" ، user.getName ()) ؛ request.put ("كلمة المرور" ، user.getPassword ()) ؛ العودة النجاح } Override public void setApplication (Map <String ، Object> application) {// todo method method method that.application = application ؛ } Override public void setSession (Map <String ، Object> Session) {// todo method tuto method this.session = session ؛ } Override public void setRequest (Map <String ، Object> request) {// todo method method method this.request = request ؛ }}هذا ينفذ وظيفة - ضع اسم المستخدم وكلمة المرور في الطلب ، وعند استخدامه ، نحتاج فقط إلى إخراجها.
5. Success.JSP يخرج محتويات الطلب ويعرضه
<٪@ page language = "java" contentType = "text/html ؛ charset = utf-8" pageencoding = "utf-8" ٪> <٪@ taglib uri = "/struts-tags" prefix = "s" ٪> <! "http://www.w3. value = "#request.name"/> مسجل بنجاح ، مع كلمة المرور: <s: property value = "#request.password"/> </body> </html>
تظهر النتائج على النحو التالي:
ما سبق هو كل محتوى الوصول إلى عناصر الويب في Struts2. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.