ไวยากรณ์ JSP
ในส่วนนี้จะสั้นจะแนะนำ JSP การพัฒนาพื้นฐานไวยากรณ์
ต้นฉบับ
คำสั่งจาวาสคริปต์สามารถมีจำนวนของตัวแปรวิธีการหรือการแสดงออกใด ๆ ตราบใดที่พวกเขามีความถูกต้องในภาษาสคริปต์
ไวยากรณ์สคริปต์:
<% 代码片段 %>
หรือคุณยังสามารถเขียนประโยค XML ของพวกเขาที่เทียบเท่าเช่นนี้ด้านล่าง:
<jsp:scriptlet> 代码片段 </jsp:scriptlet>
ข้อความแท็ก HTML องค์ประกอบใด ๆ JSP จะต้องเขียนออกมาจากสคริปต์
นี่คือตัวอย่าง แต่ยังตัวอย่างแรกของ JSP กวดวิชา:
<html> <head><title>Hello World</title></head> <body> Hello World!<br/> <% out.println("Your IP address is " + request.getRemoteAddr()); %> </body> </html>
หมายเหตุ: ตรวจสอบให้แน่ใจว่า Apache Tomcat ติดตั้งอยู่ใน C: \ Apache Tomcat-7.0.2-Directory และสภาพแวดล้อมการทำงานที่ได้รับการตั้งอย่างถูกต้อง
รหัสดังกล่าวจะถูกเก็บไว้ใน hello.jsp แล้ววางไว้ใน C: \ Apache Tomcat--7.0.2 \ webapps \ ไดเรกทอรีรากภายใต้การเปิดเบราว์เซอร์และพิมพ์ในแถบที่อยู่ http: // localhost: 8080 / สวัสดี .jsp หลังจากทำงานผลต่อไปนี้:
ปัญหาการเขียนโปรแกรมภาษาจีน
ถ้าหากเราจะแสดงหน้าเว็บในจีนเราต้องมุ่งหน้าไปในไฟล์ JSP เพิ่มรหัสต่อไปนี้: <>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
เราจะแก้ปัญหาในการปรับเปลี่ยนโปรแกรมดังกล่าวข้างต้น:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> Hello World!<br/> <% out.println("你的 IP 地址 " + request.getRemoteAddr()); %> </body> </html>
ดังนั้นจีนจะแสดงได้อย่างถูกต้อง
ประกาศ JSP
ประกาศสามารถประกาศอย่างใดอย่างหนึ่งหรือตัวแปรอื่น ๆ วิธีการ Java รหัสเพื่อใช้ในภายหลัง ในไฟล์ JSP คุณต้องประกาศตัวแปรเหล่านี้และวิธีการก่อนที่คุณจะใช้พวกเขา
JSP ประกาศไวยากรณ์:
<%! declaration; [ declaration; ]+ ... %>
หรือคุณยังสามารถเขียนคำสั่ง XML เทียบเท่าเช่นนี้ด้านล่าง:
<jsp:declaration> 代码片段 </jsp:declaration>
ตัวอย่างโปรแกรม:
<%! int i = 0; %> <%! int a, b, c; %> <%! Circle a = new Circle(2.0); %>
การแสดงออก JSP
สั่ง jsp การแสดงออกภาษาสคริปต์ที่มีอยู่ในการแสดงออกจะถูกแปลงแรกที่จะ String แล้วแทรกเข้าไปในการแสดงออกในท้องถิ่นเกิดขึ้น
ตั้งแต่ค่าของนิพจน์จะถูกแปลงเป็นสตริงเพื่อให้คุณสามารถใช้นิพจน์ในบรรทัดของข้อความได้โดยไม่ต้องไม่ว่าจะเป็นแท็ก HTML
องค์ประกอบการแสดงออกสามารถมีการแสดงออกใด ๆ ที่สอดคล้องกับข้อกำหนดภาษา Java แต่คุณไม่สามารถใช้อัฒภาคยังจุดสิ้นสุดของการแสดงออก
ไวยากรณ์ JSP แสดงออก:
<%= 表达式 %>
ในทำนองเดียวกันคุณยังสามารถเขียนคำสั่ง XML เทียบเท่า:
<jsp:expression> 表达式 </jsp:expression>
ตัวอย่างโปรแกรม:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <p> 今天的日期是: <%= (new java.util.Date()).toLocaleString()%> </p> </body> </html>
หลังจากทำงานผลต่อไปนี้:
今天的日期是: 2016-6-25 13:40:07
ความคิดเห็น JSP
ความคิดเห็น JSP มีสองหน้าที่หลัก: อธิบายรหัสและชิ้นส่วนของรหัสที่ออกความเห็น
JSP คิดเห็นไวยากรณ์:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <%-- 该部分注释在网页中不会被显示--%> <p> 今天的日期是: <%= (new java.util.Date()).toLocaleString()%> </p> </body> </html>
หลังจากทำงานผลต่อไปนี้:
今天的日期是: 2016-6-25 13:41:26
ภายใต้สถานการณ์ที่แตกต่างกันการใช้กฎไวยากรณ์คำอธิบายประกอบ:
ไวยากรณ์ | ลักษณะ |
---|---|
<% - Comment -%> | ความคิดเห็น JSP ข้อคิดเห็นที่จะไม่ถูกส่งไปยังเบราว์เซอร์จะไม่ได้มีการรวบรวม |
<! - แสดงความคิดเห็น -> | คุณสามารถดูความคิดเห็นในความคิดเห็น HTML ให้ดูที่มาของหน้าผ่านเบราว์เซอร์ |
<\% | คงแทน <% คงที่ |
% \> | ตัวแทน% คงที่> ค่าคงที่ |
\ ' | ใช้ราคาเดียวในสถานที่ |
\ " | ใช้คำพูดสองในสถานที่ |
สั่ง JSP
JSP สั่งการตั้งค่าแอตทริบิวต์ที่เกี่ยวข้องกับหน้า JSP ทั้งหมด
JSP ไวยากรณ์คำสั่ง:
<%@ directive attribute="value" %>
มีสามแท็กคำแนะนำคือ:
การเรียนการสอน | ลักษณะ |
---|---|
<% @ หน้า ... %> | หน้านิยามคุณสมบัติการพึ่งพาเช่นภาษาการเขียนสคริปต์หน้าข้อผิดพลาดที่ต้องการแคช ฯลฯ |
<% @ ... รวม%> | มันมีแฟ้มเพิ่มเติม |
<% @ taglib ... %> | แนะนำแท็กคำจำกัดความห้องสมุดสามารถกำหนดเองป้าย |
พฤติกรรม JSP
แท็ก JSP โดยใช้โครงสร้างไวยากรณ์ XML ทำหน้าที่ในการควบคุมเครื่องยนต์เซิร์ฟเล็ต มันแบบไดนามิกสามารถแทรกไฟล์นำมาใช้องค์ประกอบ JavaBean นำผู้ใช้ไปยังหน้าอื่นที่เกี่ยวข้อง HTML ที่สร้างขึ้นสำหรับ Java Plug-in และอื่น ๆ
พฤติกรรมเป็นเพียงไวยากรณ์ของชื่อหนึ่งที่ยึดมั่นในมาตรฐาน XML:
<jsp:action_name attribute="value" />
แท็บพฤติกรรมเป็นพื้นในฟังก์ชั่นที่กำหนดไว้ล่วงหน้าบางตารางต่อไปนี้แสดงรายการบางส่วนของพฤติกรรม JSP Luo ใช้ได้ฉลาก ::
ไวยากรณ์ | ลักษณะ |
---|---|
jsp: include | สำหรับที่มีทรัพยากรแบบคงที่หรือแบบไดนามิกในหน้าปัจจุบัน |
JSP: useBean | ค้นหาและการเตรียมส่วนประกอบ JavaBean |
JSP: setProperty | การตั้งค่าส่วนประกอบ JavaBean |
JSP: getProperty | ค่าของส่วนประกอบ JavaBean เข้าออกของ |
JSP: ไปข้างหน้า | วัตถุคำขอโอนที่มีคำขอของผู้ใช้จากไฟล์ JSP ไปยังแฟ้มอื่น |
JSP: ปลั๊กอิน | Applet ที่ใช้บรรจุและวัตถุ JavaBean ในหน้า html ที่สร้างขึ้น |
JSP: องค์ประกอบ | สร้างแบบไดนามิกองค์ประกอบ XML |
JSP: แอตทริบิวต์ | องค์ประกอบ XML กำหนดคุณลักษณะที่สร้างขึ้นแบบไดนามิก |
JSP: ร่างกาย | องค์ประกอบร่างกาย XML กำหนดสร้างแบบไดนามิก |
JSP: ข้อความ | แม่แบบที่ใช้ในการสรุปข้อมูล |
JSP วัตถุโดยปริยาย
ตัวแปรการสนับสนุน JSP เก้าที่กำหนดไว้โดยอัตโนมัติแม่น้ำและทะเลสาบที่รู้จักกันวัตถุที่ซ่อนอยู่ บทนำเก้าวัตถุนัยในตารางด้านล่าง:
วัตถุ | ลักษณะ |
---|---|
ขอร้อง | ตัวอย่างของการเรียน HttpServletRequest |
คำตอบ | ตัวอย่างชั้น HttpServletResponse |
ออก | ตัวอย่างระดับ PrintWriter จะใช้ในการส่งออกผลบนหน้าเว็บ |
เซสชั่น | ระดับตัวอย่าง HttpSession |
ใบสมัคร | เช่น ServletContext ของการเรียนและการประยุกต์ใช้ตามบริบท |
การตั้งค่า | ระดับตัวอย่าง ServletConfig |
pageContext | ตัวอย่างระดับ PageContext JSP หน้าให้การเข้าถึงวัตถุทั้งหมดและ namespaces |
หน้า | คล้ายกับชั้น Java ในคำหลักนี้ |
ข้อยกเว้น | วัตถุชั้นยกเว้นที่แสดงถึงข้อผิดพลาดที่เกิดขึ้นหน้า JSP ยกเว้นวัตถุที่สอดคล้องกัน |
งบการควบคุมการไหล
JSP ให้การสนับสนุนที่ครอบคลุมสำหรับภาษา Java คุณสามารถใช้โปรแกรมใน JSP Java API แม้กระทั่งการสร้างกลุ่มของรหัส Java รวมถึงงบผู้พิพากษาและลูปและอื่น ๆ
ประโยคที่ผู้พิพากษา
ถ้า ... บล็อกอื่นให้พิจารณาตัวอย่างต่อไปนี้:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int day = 3; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>IF...ELSE 实例</h3> <% if (day == 1 | day == 7) { %> <p>今天是周末</p> <% } else { %> <p>今天不是周末</p> <% } %> </body> </html>
หลังจากทำงานผลต่อไปนี้:
IF...ELSE 实例 今天不是周末
ตอนนี้ดูที่สวิทช์ ... กรณีบล็อกและถ้า ... อื่นบล็อกแตกต่างกันมากจะใช้ out.println () และแท็กสคริปต์ทั้งมีการติดตั้งในโปรแกรมเช่นนี้
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int day = 3; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>SWITCH...CASE 实例</h3> <% switch(day) { case 0: out.println("星期天"); break; case 1: out.println("星期一"); break; case 2: out.println("星期二"); break; case 3: out.println("星期三"); break; case 4: out.println("星期四"); break; case 5: out.println("星期五"); break; default: out.println("星期六"); } %> </body> </html>
เข้าถึงเบราว์เซอร์เรียกใช้ผลการดังต่อไปนี้:
SWITCH...CASE 实例 星期三
ลูป
สามประเภทพื้นฐานของการไหลเวียนในโครงการ JSP, คุณสามารถใช้ Java: สำหรับในขณะที่และทำ ... ในขณะที่
ลองดูที่ตัวอย่างของการวนผลผลิตต่อไปนี้ขนาดตัวอักษรที่แตกต่างกันของ "คู่มือ" ต่อไปนี้:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int fontSize; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>For 循环实例</h3> <%for ( fontSize = 1; fontSize <= 3; fontSize++){ %> <font color="green" size="<%= fontSize %>"> 本教程 </font><br /> <%}%> </body> </html>
หลังจากทำงานผลต่อไปนี้:
ตัวอย่างข้างต้นใช้ห่วงขณะที่จะเขียน:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int fontSize; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>While 循环实例</h3> <%while ( fontSize <= 3){ %> <font color="green" size="<%= fontSize %>"> 本教程 </font><br /> <%fontSize++;%> <%}%> </body> </html>เข้าถึงเบราว์เซอร์, เอาท์พุท (FontSize เริ่มต้นได้ที่ 0 เพื่อให้การส่งออกของหลายบรรทัด):
ผู้ประกอบการ JSP
JSP สนับสนุน Java ดำเนินการทางตรรกะและการคำนวณทั้งหมด
ตารางต่อไปนี้แสดง JSP Luo ผู้ประกอบการร่วมกันมีความสำคัญจากการสูงในท้ายที่สุด:
หมวดหมู่ | ผู้ประกอบการ | ผูกพัน |
---|---|---|
วิภัตติ | () []. (จุดดำเนินการ) | จากซ้ายไปขวา |
รวมกัน | + - -! ~ | ขวาไปซ้าย |
Multiplicativity | * /% | จากซ้ายไปขวา |
additivity | + - | จากซ้ายไปขวา |
การกำจัด | >> << >>> | จากซ้ายไปขวา |
ความสัมพันธ์ | >> << = = | จากซ้ายไปขวา |
เท่าเทียมกัน / ไม่เท่ากัน | ==! = | จากซ้ายไปขวา |
บิตและ | & | จากซ้ายไปขวา |
bit แฮคเกอร์ | ^ | จากซ้ายไปขวา |
บิตหรือ | | | จากซ้ายไปขวา |
และลอจิก | && | จากซ้ายไปขวา |
ตรรกะหรือ | || | จากซ้ายไปขวา |
เงื่อนไข | ?: | ขวาไปซ้าย |
การมอบหมาย | + = = - = * = / =% = = >> << = & = ^ = | = | ขวาไปซ้าย |
จุลภาค | , | จากซ้ายไปขวา |
JSP อักษร
JSP ภาษากำหนดคำต่อไปนี้ต้องเผชิญกับจำนวนเงิน:
- ค่าบูลีน (บูลีน): ความจริงและเท็จ;
- จำนวนเต็ม (int) เช่นเดียวกับผู้ที่อยู่ใน Java;
- ลอย (float): เช่นเดียวกับผู้ที่อยู่ใน Java;
- สตริง (String): คำพูดเดียวหรือสองครั้งเพื่อเริ่มต้นและจุดสิ้นสุด;
- null ที่: null