ภาพรวม struts2:
Struts2 เป็นกรอบที่ใช้ในการพัฒนาแอพพลิเคชั่น MVC มันให้วิธีแก้ไขปัญหาที่พบบ่อยในกระบวนการพัฒนาเว็บแอปพลิเคชันเช่นการตรวจสอบความถูกต้องตามกฎหมายของข้อมูลการป้อนข้อมูลผู้ใช้, รูปแบบ Unified, ความเป็นสากล ฯลฯ เนื่องจากมี struts2 จึงต้องมี struts1 อย่างไรก็ตามในสาระสำคัญ struts2 ไม่ได้ขยายจาก struts1 และควรจะบอกว่ามันเป็นเว็บที่เปลี่ยนฉลากแบรนด์
struts1 vs struts2
การก่อสร้างสิ่งแวดล้อม struts2
สร้างรุ่นใหม่ตรวจสอบ struts2 จากนั้นเลือกไลบรารีที่คุณต้องการใช้สำหรับ struts2 คุณสามารถเลือกดาวน์โหลดโดยตรงในหน้าใหม่เพื่อดาวน์โหลดหรือคุณสามารถดาวน์โหลดแพ็คเกจ JAR ที่จำเป็นสำหรับ struts2 ล่วงหน้าและสร้างของคุณเอง (ที่นี่ฉันเลือกห้องสมุดที่ฉันสร้างขึ้นเอง)
http://struts.apache.org/download.cgi#struts2516 คุณสามารถเลือกรุ่นที่คุณต้องการใช้ในหน้านี้ นอกจากนี้คุณยังสามารถดาวน์โหลดท้องถิ่นบน wulin.com: //www.vevb.com/softs/539810.html
หลังจากคลิกขั้นตอนถัดไปตั้งชื่อโครงการ Struts2 ของคุณ (เมื่อตั้งชื่อแล้วขอแนะนำให้เปลี่ยนชื่อหลังจากเส้นทางของรูทเนื้อหาในคอลัมน์ที่สองหากคุณเปลี่ยนมันในคอลัมน์แรกเพียงเปลี่ยนคอลัมน์แรกคอลัมน์อีกสองคอลัมน์จะไม่เปลี่ยนแปลง)
คลิกเสร็จสิ้นเพื่อสร้างโครงการ Struts2 ให้เสร็จสมบูรณ์ โครงการที่สร้างขึ้นมีดังนี้
ความคิดกับคราส
struts2 helloworld
หลังจากสร้างสภาพแวดล้อมการพัฒนาของ Struts2 เราเริ่มเขียนโปรแกรม First Struts2 ต้องการให้คุณป้อนข้อมูลพื้นฐานของผู้ใช้ในแบบฟอร์มและคลิกส่งและข้ามไปยังหน้าอื่นเพื่อแสดงข้อมูลที่ผู้ใช้ป้อน ก่อนที่จะเรียนรู้ struts2 นี่เป็นเรื่องง่ายมากสำหรับเรา คุณจะต้องส่งคำขอหน้าไปยัง Servet เพื่อตอบกลับคำขอไปยังหน้าอื่นและใช้ EL และ JSTL เพื่อแสดงข้อมูล สำหรับ struts2 แน่นอนว่าเป็น HelloWorld และเราจะใช้ตัวอย่างนี้เพื่อเริ่มอธิบายแง่มุมต่าง ๆ ของความรู้ของ Struts2
เขียนรหัสหน้าใน index.jsp สำหรับผู้ใช้ในการป้อนข้อมูลพื้นฐานดังนี้:
เขียนคลาสเอนทิตีตามแอตทริบิวต์ชื่อฟอร์มและสร้างเมธอด getXxx และ setxxx, customer.java
เขียนรหัสในไฟล์ struts.xml เพื่อจัดการคำขอ struts2
กลับไปที่หน้าจอแสดงผล show.jsp
struts.xml
<? XML เวอร์ชัน = "1.0" การเข้ารหัส = "UTF-8"?> <! Doctype struts สาธารณะ "-// Apache Software Foundation // dtd struts การกำหนดค่า 2.3 // en" "http://struts.apache.org/dtds/struts-2.3.dtd" name = "input" method = "print"> <result name = "print">/show.jsp </result> </action> </package> </struts>
customer.java
แพ็คเกจ com.struts2.hello.test;/*** สร้างโดย shkstart เมื่อ 2018/03/24.*/ลูกค้าชั้นเรียนสาธารณะ {ส่วนตัวสตริงผู้ใช้ชื่อผู้ใช้สตริงส่วนตัว; {return "ลูกค้า {" + "username = '" + username +'/'' + ", email = '" + อีเมล +'/'' + ", address = '" ที่อยู่ +'/'' + '}';}}index.jsp
< %@ page contentType = "text/html; charset = utf-8" language = "java" %> <html> <head> <title> อินพุต </title> </head> <body> <body> <body> <form action = "Input.action" name = "username"> </td> </tr> <tr> <td> อีเมล </td> <td> <อินพุต type = "text" name = "อีเมล"> </td> </tr> <tr> <td> ที่อยู่ </td> <td> value = "ส่ง"> </td> </tr> </tron> </table> </body> </html>
show.jsp (แสดงเนื้อหาแท็กร่างกายเท่านั้น)
ชื่อผู้ใช้: $ {ชื่อผู้ใช้} <br> อีเมล: $ {อีเมล} <br> ที่อยู่: $ {ที่อยู่} <br>คำอธิบายรหัสโดยละเอียด
ตัวแปรสมาชิกใน customer.java สอดคล้องกับแอตทริบิวต์ใน index.jsp หนึ่งทีละหนึ่งและไม่เพิกเฉยต่อตัวพิมพ์ใหญ่บนและล่าง;
ตัวแปรสมาชิกที่แสดงใน show.jsp สอดคล้องกับตัวแปรใน customer.java มิฉะนั้นจะไม่สามารถแสดงได้
ค่าฟอร์มฟอร์มค่าการกระทำใน index.jsp ควรตั้งค่าเป็นคุณสมบัติชื่อของการกระทำในไฟล์ struts.xml
แอตทริบิวต์วิธีการของโหนดการกระทำในไฟล์ struts.xml ควรเป็นวิธี String print() ใน custome.java และแอตทริบิวต์ชื่อของโหนดผลลัพธ์คือ
ค่าส่งคืนของวิธี String print()
ค่าของโหนดผลลัพธ์คือหน้าเว็บที่ตอบสนองหลังจากประมวลผลคำขอ struts2
เราจะอธิบายความรู้ที่เกี่ยวข้องในรายละเอียดในภายหลังเกี่ยวกับการแสดงหน้า show.jsp นั่นคือทั้งหมดสำหรับ helloWorld ของเราใน struts2 ฉันเชื่อว่าสามเณรอย่างฉันจะไม่ทำผิดพลาดครั้งสำคัญหากพวกเขาติดตามพวกเขา! -
โหนดไฟล์ struts.xml
แอตทริบิวต์แพ็คเกจ --- struts2 ใช้แพ็คเกจเพื่อจัดระเบียบโมดูล
แอตทริบิวต์การกระทำ --- คำขอ struts2 เป็นการกระทำ
การกระทำหนึ่งสามารถมีโหนดลูกได้หลายโหนดและโหนดลูกผลลัพธ์หลายโหนดสามารถแยกแยะได้โดยใช้แอตทริบิวต์ชื่อ
แอตทริบิวต์ประเภทของโหนดผลลัพธ์เริ่มต้นเป็น dispatcher (ไปข้างหน้า) ซึ่งระบุประเภทการตอบสนองของผลลัพธ์
การกระทำกับการกระทำ
สรุป
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่าเนื้อหาของบทความนี้จะมีค่าอ้างอิงบางอย่างสำหรับการศึกษาหรือที่ทำงานของทุกคน หากคุณมีคำถามใด ๆ คุณสามารถฝากข้อความไว้เพื่อสื่อสาร ขอบคุณสำหรับการสนับสนุน Wulin.com