寫jsp導包的時候出了兩處錯誤(什么?特么兩處,總共就一句話啊...):
新建jsp文件會自動生成一句:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
然后我們需要導入我們自己想要的包的時候:
一個一個的導入:
<%@ page import="java.sql.*" %>
<%@ page import="java.util.regex.*"%>
一塊導入:
<%@ page import="java.sql.*,java.util.regex.*" %>中間用逗號隔開,后面不加逗號!
我自己犯的錯誤是:
第一處是:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.sql.*" pageEncoding="UTF-8"%>
是不是有種怪怪的感覺,果不其然,果斷 500 了 :
意思是不能出現兩次pageEncoding
好,再來:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.sql.*" %>
<%@ page language="java" import="java.util.regex.*;" %>
好,沒報錯,但感覺還是哪里怪怪的...
但是能正常運行啊?
好吧,發給別人試試,哎,500 ...
怎么回事?
分號,把分號去掉! 多個包是用逗號分隔的啊!(卧槽,明明在我電腦都能過的...河河)
那把分號換成逗號試一下:
是哦,后面沒有類怎么編譯啊?所以后面的逗號不能要!
但是,這樣:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.sql.*" %>
<%@ page language="java" import="java.util.regex.*" %>
怎么感覺還是怪怪的,導個包而已,為啥每句都加language="java",有毛線關系啊?
查一查:
%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
每一個都是什么意思啊?
language="java" 聲明腳本語言的種類,目前只支持JAVA語言。默認為JAVA。
import="java.util.* " 導包
pageEncoding="utf-8" 聲明jsp內容的編碼格式
<%@ page %> page指令
你可以在一個頁面中用上多個<% @ page %>指令,但是其中的屬性只能用一次,不過也有個例外,那就是import屬性。因為import屬性和Java中的import語句差不多(參照Java Language),所以你就能多用此屬性幾次了.
無論你把<% @ page %>指令放在JSP的文件的哪個地方,它的作用范圍都是整個JSP頁面。不過,為了JSP程序的可讀性,以及好的編程習慣,最好還是把它放在JSP文件的頂部.
哦,這樣就明白了,language="java"和pageEncoding="UTF-8"這兄弟倆和導包是沒有關系滴,而且在標准里整個頁面只能出現一次。導包多個中間用逗號分隔,注意最后面沒有!
雖然是細節問題(基礎問題),但是不容忽視,只是多一個逗號,整個頁面就會掛了(liao)...