国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

JSP服務(wù)端頁面表單驗(yàn)證分析

2014-04-21 04:35:54彭登云徐洪位
新媒體研究 2014年3期
關(guān)鍵詞:連接表單

彭登云+徐洪位

摘 要 JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。用JSP開發(fā)的Web應(yīng)用是跨平臺的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行,在網(wǎng)站設(shè)計(jì)中得到了廣泛的應(yīng)用。

關(guān)鍵詞 JSP;表單;連接

中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-7597(2014)03-0050-02

1 問題的提出

JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。

在網(wǎng)上,有關(guān)很多表單驗(yàn)證的實(shí)現(xiàn)方法,但JSP服務(wù)器端和客戶端對用戶提交的數(shù)據(jù)進(jìn)行驗(yàn)證時,它們處理的方法應(yīng)遵循各自的腳本語言的語法規(guī)則,下面說明如何在JSP程序設(shè)計(jì)中表單的驗(yàn)證實(shí)現(xiàn)方法。

2 客戶端表單驗(yàn)證的基本原理

2.1 客戶端表單驗(yàn)證的基本原理

表單是實(shí)現(xiàn)用戶和瀏覽器之間信息交換的重要工具,無論是登陸界面還是用戶注冊界面,都通過表單來提取用戶信息。客戶端的瀏覽器運(yùn)行時采用JavaScriPt作為腳本語言,主要實(shí)現(xiàn)用戶在客戶端輸入數(shù)據(jù)時,數(shù)據(jù)的合法性驗(yàn)證,即數(shù)據(jù)是否滿足常規(guī)要求,如是否輸入了數(shù)據(jù),電子郵件格式是否正確等。在進(jìn)行驗(yàn)證時主要通過在表單添加Onsubmit()事件函數(shù)和在“提交”按鈕上添加onclick動作驗(yàn)證函數(shù)實(shí)現(xiàn),當(dāng)函數(shù)的返回值為“True”時,通過驗(yàn)證,頁面轉(zhuǎn)移到提交程序執(zhí)行,當(dāng)函數(shù)返回值為“False”時,頁面中止提交程序的運(yùn)行。

2.2 客戶端表單驗(yàn)證時的主要過程

首先建立客戶端的表單,如下所示:

。

注意onsubmit事件的寫法,表示執(zhí)行提交程序前先進(jìn)行驗(yàn)證,并返回一個值,或下面的方法進(jìn)行:

…表單對象…

該方法通過添加onclick動作實(shí)現(xiàn)。

3 JSP服務(wù)器端表單數(shù)據(jù)驗(yàn)證的基本方法

3.1 通過瀏覽器端驗(yàn)證

表單數(shù)據(jù)通過瀏覽器端的Javascript函數(shù)進(jìn)行驗(yàn)證。由于驗(yàn)證數(shù)據(jù)不需要提交給服務(wù)器,瀏覽器端的驗(yàn)證速度快,若有不符合要求的輸入,響應(yīng)信息快速的返回給用戶。一個瀏覽器端驗(yàn)證的過程如圖1所示,表單提交,若通過驗(yàn)證則提交服務(wù)器處理,不成功則回饋給用戶。

圖1 瀏覽器端驗(yàn)證原理圖

以對用戶在客戶端輸入的用戶名和密碼進(jìn)行合法性驗(yàn)證,其主要代碼如下:

function check_form(thisForm)

{

error_string = “”;

if((message=checkusername(thisForm.username))!=””)

{

error_string=”UserName:”

error_string += message;

alert(error_string);

return false;

}

if((message = checkpassword(thisForm.pass))!=””)

{

error_string=”Password:”

error_string += message;

alert(error_string);

return false;

}

return true;

}

其中,返回true,表示輸入數(shù)據(jù)合法,通過驗(yàn)證;返回false,則數(shù)據(jù)為非法輸入,程序中斷運(yùn)行,返回重新輸入,驗(yàn)證未能通過。

3.2 服務(wù)器端驗(yàn)證

表單數(shù)據(jù)通過服務(wù)器端驗(yàn)證方法中,客戶端的數(shù)據(jù)需提交到服務(wù)器上的應(yīng)用程序進(jìn)行驗(yàn)證,其過程與圖1類似,只是驗(yàn)證的位置在服務(wù)器上,在進(jìn)行JSP服務(wù)器端表單數(shù)據(jù)驗(yàn)證的主要過程如下。

1)接受客戶端用戶提供的表單數(shù)據(jù),主要代碼如下:

<%

String user_name=request.getParameter(“name”) //接受提交的用戶名;

String user_name=request.getParameter(“pass”) //接受提交的密碼;

%>

2)讀出保存在數(shù)據(jù)庫中的、系統(tǒng)設(shè)置的數(shù)據(jù):

①加載JDBC數(shù)據(jù)庫驅(qū)動程序;

②在JSP頁面中建立與數(shù)據(jù)庫中表相應(yīng)對應(yīng)的記錄集:

ResultSet rs=st.executeQuery(“SQL查詢字符串”);

Admin_name=rs.getString(“name”);

Admin_name=rs.getString(“pass”);

③將用戶提交的數(shù)據(jù)同記錄集中的數(shù)據(jù)進(jìn)行比較,以便驗(yàn)證數(shù)據(jù)的正確性;

If(admin_name.equals(user_name) && admin_pass.equals(user_pass)),當(dāng)值為True時,表示提交的數(shù)據(jù)正確,為“False”表示提交的數(shù)據(jù)不正確。

4 注意事項(xiàng)

在進(jìn)行數(shù)據(jù)比較時,要注意數(shù)據(jù)比較運(yùn)算符的選取,關(guān)系運(yùn)算符用于比較兩個數(shù)值之間的大小,不能用于兩個字符串變量的比較,兩個字符串變量的比較只能采用方法equals實(shí)現(xiàn),其原因在于值類型是存儲在內(nèi)存中的堆棧(以后簡稱棧),而引用類型的變量在棧中僅僅是存儲引用類型變量的地址,而其本身則存儲在堆中。==操作比較的是兩個變量的值是否相等,對于引用型變量表示的是兩個變量在堆中存儲的地址是否相同,即棧中的內(nèi)容是否相同。equals操作表示的兩個變量是否是對同一個對象的引用,即堆中的內(nèi)容是否相同。==比較的是2個對象的地址,而equals比較的是2個對象的內(nèi)容。顯然,當(dāng)equals為true時,==不一定為true。

參考文獻(xiàn)

[1]龔永罡.Java Web應(yīng)用開發(fā)實(shí)用教程[M].北京:機(jī)械工業(yè)出版社,2010.

作者簡介

彭登云(1971-),女,重慶銅梁人,本科,重慶財(cái)經(jīng)職業(yè)學(xué)院實(shí)踐教學(xué)中心實(shí)驗(yàn)師,研究方向:機(jī)房管理維護(hù)、網(wǎng)頁設(shè)計(jì)。

徐洪位(1971-),男,重慶永川人,本科,碩士,重慶財(cái)經(jīng)職業(yè)學(xué)院應(yīng)用設(shè)計(jì)系高級講師,研究方向:程序設(shè)計(jì)。endprint

摘 要 JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。用JSP開發(fā)的Web應(yīng)用是跨平臺的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行,在網(wǎng)站設(shè)計(jì)中得到了廣泛的應(yīng)用。

關(guān)鍵詞 JSP;表單;連接

中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-7597(2014)03-0050-02

1 問題的提出

JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。

在網(wǎng)上,有關(guān)很多表單驗(yàn)證的實(shí)現(xiàn)方法,但JSP服務(wù)器端和客戶端對用戶提交的數(shù)據(jù)進(jìn)行驗(yàn)證時,它們處理的方法應(yīng)遵循各自的腳本語言的語法規(guī)則,下面說明如何在JSP程序設(shè)計(jì)中表單的驗(yàn)證實(shí)現(xiàn)方法。

2 客戶端表單驗(yàn)證的基本原理

2.1 客戶端表單驗(yàn)證的基本原理

表單是實(shí)現(xiàn)用戶和瀏覽器之間信息交換的重要工具,無論是登陸界面還是用戶注冊界面,都通過表單來提取用戶信息??蛻舳说臑g覽器運(yùn)行時采用JavaScriPt作為腳本語言,主要實(shí)現(xiàn)用戶在客戶端輸入數(shù)據(jù)時,數(shù)據(jù)的合法性驗(yàn)證,即數(shù)據(jù)是否滿足常規(guī)要求,如是否輸入了數(shù)據(jù),電子郵件格式是否正確等。在進(jìn)行驗(yàn)證時主要通過在表單添加Onsubmit()事件函數(shù)和在“提交”按鈕上添加onclick動作驗(yàn)證函數(shù)實(shí)現(xiàn),當(dāng)函數(shù)的返回值為“True”時,通過驗(yàn)證,頁面轉(zhuǎn)移到提交程序執(zhí)行,當(dāng)函數(shù)返回值為“False”時,頁面中止提交程序的運(yùn)行。

2.2 客戶端表單驗(yàn)證時的主要過程

首先建立客戶端的表單,如下所示:

注意onsubmit事件的寫法,表示執(zhí)行提交程序前先進(jìn)行驗(yàn)證,并返回一個值,或下面的方法進(jìn)行:

…表單對象…

該方法通過添加onclick動作實(shí)現(xiàn)。

3 JSP服務(wù)器端表單數(shù)據(jù)驗(yàn)證的基本方法

3.1 通過瀏覽器端驗(yàn)證

表單數(shù)據(jù)通過瀏覽器端的Javascript函數(shù)進(jìn)行驗(yàn)證。由于驗(yàn)證數(shù)據(jù)不需要提交給服務(wù)器,瀏覽器端的驗(yàn)證速度快,若有不符合要求的輸入,響應(yīng)信息快速的返回給用戶。一個瀏覽器端驗(yàn)證的過程如圖1所示,表單提交,若通過驗(yàn)證則提交服務(wù)器處理,不成功則回饋給用戶。

圖1 瀏覽器端驗(yàn)證原理圖

以對用戶在客戶端輸入的用戶名和密碼進(jìn)行合法性驗(yàn)證,其主要代碼如下:

function check_form(thisForm)

{

error_string = “”;

if((message=checkusername(thisForm.username))!=””)

{

error_string=”UserName:”

error_string += message;

alert(error_string);

return false;

}

if((message = checkpassword(thisForm.pass))!=””)

{

error_string=”Password:”

error_string += message;

alert(error_string);

return false;

}

return true;

}

其中,返回true,表示輸入數(shù)據(jù)合法,通過驗(yàn)證;返回false,則數(shù)據(jù)為非法輸入,程序中斷運(yùn)行,返回重新輸入,驗(yàn)證未能通過。

3.2 服務(wù)器端驗(yàn)證

表單數(shù)據(jù)通過服務(wù)器端驗(yàn)證方法中,客戶端的數(shù)據(jù)需提交到服務(wù)器上的應(yīng)用程序進(jìn)行驗(yàn)證,其過程與圖1類似,只是驗(yàn)證的位置在服務(wù)器上,在進(jìn)行JSP服務(wù)器端表單數(shù)據(jù)驗(yàn)證的主要過程如下。

1)接受客戶端用戶提供的表單數(shù)據(jù),主要代碼如下:

<%

String user_name=request.getParameter(“name”) //接受提交的用戶名;

String user_name=request.getParameter(“pass”) //接受提交的密碼;

%>

2)讀出保存在數(shù)據(jù)庫中的、系統(tǒng)設(shè)置的數(shù)據(jù):

①加載JDBC數(shù)據(jù)庫驅(qū)動程序;

②在JSP頁面中建立與數(shù)據(jù)庫中表相應(yīng)對應(yīng)的記錄集:

ResultSet rs=st.executeQuery(“SQL查詢字符串”);

Admin_name=rs.getString(“name”);

Admin_name=rs.getString(“pass”);

③將用戶提交的數(shù)據(jù)同記錄集中的數(shù)據(jù)進(jìn)行比較,以便驗(yàn)證數(shù)據(jù)的正確性;

If(admin_name.equals(user_name) && admin_pass.equals(user_pass)),當(dāng)值為True時,表示提交的數(shù)據(jù)正確,為“False”表示提交的數(shù)據(jù)不正確。

4 注意事項(xiàng)

在進(jìn)行數(shù)據(jù)比較時,要注意數(shù)據(jù)比較運(yùn)算符的選取,關(guān)系運(yùn)算符用于比較兩個數(shù)值之間的大小,不能用于兩個字符串變量的比較,兩個字符串變量的比較只能采用方法equals實(shí)現(xiàn),其原因在于值類型是存儲在內(nèi)存中的堆棧(以后簡稱棧),而引用類型的變量在棧中僅僅是存儲引用類型變量的地址,而其本身則存儲在堆中。==操作比較的是兩個變量的值是否相等,對于引用型變量表示的是兩個變量在堆中存儲的地址是否相同,即棧中的內(nèi)容是否相同。equals操作表示的兩個變量是否是對同一個對象的引用,即堆中的內(nèi)容是否相同。==比較的是2個對象的地址,而equals比較的是2個對象的內(nèi)容。顯然,當(dāng)equals為true時,==不一定為true。

參考文獻(xiàn)

[1]龔永罡.Java Web應(yīng)用開發(fā)實(shí)用教程[M].北京:機(jī)械工業(yè)出版社,2010.

作者簡介

彭登云(1971-),女,重慶銅梁人,本科,重慶財(cái)經(jīng)職業(yè)學(xué)院實(shí)踐教學(xué)中心實(shí)驗(yàn)師,研究方向:機(jī)房管理維護(hù)、網(wǎng)頁設(shè)計(jì)。

徐洪位(1971-),男,重慶永川人,本科,碩士,重慶財(cái)經(jīng)職業(yè)學(xué)院應(yīng)用設(shè)計(jì)系高級講師,研究方向:程序設(shè)計(jì)。endprint

摘 要 JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。用JSP開發(fā)的Web應(yīng)用是跨平臺的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行,在網(wǎng)站設(shè)計(jì)中得到了廣泛的應(yīng)用。

關(guān)鍵詞 JSP;表單;連接

中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-7597(2014)03-0050-02

1 問題的提出

JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。

在網(wǎng)上,有關(guān)很多表單驗(yàn)證的實(shí)現(xiàn)方法,但JSP服務(wù)器端和客戶端對用戶提交的數(shù)據(jù)進(jìn)行驗(yàn)證時,它們處理的方法應(yīng)遵循各自的腳本語言的語法規(guī)則,下面說明如何在JSP程序設(shè)計(jì)中表單的驗(yàn)證實(shí)現(xiàn)方法。

2 客戶端表單驗(yàn)證的基本原理

2.1 客戶端表單驗(yàn)證的基本原理

表單是實(shí)現(xiàn)用戶和瀏覽器之間信息交換的重要工具,無論是登陸界面還是用戶注冊界面,都通過表單來提取用戶信息??蛻舳说臑g覽器運(yùn)行時采用JavaScriPt作為腳本語言,主要實(shí)現(xiàn)用戶在客戶端輸入數(shù)據(jù)時,數(shù)據(jù)的合法性驗(yàn)證,即數(shù)據(jù)是否滿足常規(guī)要求,如是否輸入了數(shù)據(jù),電子郵件格式是否正確等。在進(jìn)行驗(yàn)證時主要通過在表單添加Onsubmit()事件函數(shù)和在“提交”按鈕上添加onclick動作驗(yàn)證函數(shù)實(shí)現(xiàn),當(dāng)函數(shù)的返回值為“True”時,通過驗(yàn)證,頁面轉(zhuǎn)移到提交程序執(zhí)行,當(dāng)函數(shù)返回值為“False”時,頁面中止提交程序的運(yùn)行。

2.2 客戶端表單驗(yàn)證時的主要過程

首先建立客戶端的表單,如下所示:

。

注意onsubmit事件的寫法,表示執(zhí)行提交程序前先進(jìn)行驗(yàn)證,并返回一個值,或下面的方法進(jìn)行:

…表單對象…

該方法通過添加onclick動作實(shí)現(xiàn)。

3 JSP服務(wù)器端表單數(shù)據(jù)驗(yàn)證的基本方法

3.1 通過瀏覽器端驗(yàn)證

表單數(shù)據(jù)通過瀏覽器端的Javascript函數(shù)進(jìn)行驗(yàn)證。由于驗(yàn)證數(shù)據(jù)不需要提交給服務(wù)器,瀏覽器端的驗(yàn)證速度快,若有不符合要求的輸入,響應(yīng)信息快速的返回給用戶。一個瀏覽器端驗(yàn)證的過程如圖1所示,表單提交,若通過驗(yàn)證則提交服務(wù)器處理,不成功則回饋給用戶。

圖1 瀏覽器端驗(yàn)證原理圖

以對用戶在客戶端輸入的用戶名和密碼進(jìn)行合法性驗(yàn)證,其主要代碼如下:

function check_form(thisForm)

{

error_string = “”;

if((message=checkusername(thisForm.username))!=””)

{

error_string=”UserName:”

error_string += message;

alert(error_string);

return false;

}

if((message = checkpassword(thisForm.pass))!=””)

{

error_string=”Password:”

error_string += message;

alert(error_string);

return false;

}

return true;

}

其中,返回true,表示輸入數(shù)據(jù)合法,通過驗(yàn)證;返回false,則數(shù)據(jù)為非法輸入,程序中斷運(yùn)行,返回重新輸入,驗(yàn)證未能通過。

3.2 服務(wù)器端驗(yàn)證

表單數(shù)據(jù)通過服務(wù)器端驗(yàn)證方法中,客戶端的數(shù)據(jù)需提交到服務(wù)器上的應(yīng)用程序進(jìn)行驗(yàn)證,其過程與圖1類似,只是驗(yàn)證的位置在服務(wù)器上,在進(jìn)行JSP服務(wù)器端表單數(shù)據(jù)驗(yàn)證的主要過程如下。

1)接受客戶端用戶提供的表單數(shù)據(jù),主要代碼如下:

<%

String user_name=request.getParameter(“name”) //接受提交的用戶名;

String user_name=request.getParameter(“pass”) //接受提交的密碼;

%>

2)讀出保存在數(shù)據(jù)庫中的、系統(tǒng)設(shè)置的數(shù)據(jù):

①加載JDBC數(shù)據(jù)庫驅(qū)動程序;

②在JSP頁面中建立與數(shù)據(jù)庫中表相應(yīng)對應(yīng)的記錄集:

ResultSet rs=st.executeQuery(“SQL查詢字符串”);

Admin_name=rs.getString(“name”);

Admin_name=rs.getString(“pass”);

③將用戶提交的數(shù)據(jù)同記錄集中的數(shù)據(jù)進(jìn)行比較,以便驗(yàn)證數(shù)據(jù)的正確性;

If(admin_name.equals(user_name) && admin_pass.equals(user_pass)),當(dāng)值為True時,表示提交的數(shù)據(jù)正確,為“False”表示提交的數(shù)據(jù)不正確。

4 注意事項(xiàng)

在進(jìn)行數(shù)據(jù)比較時,要注意數(shù)據(jù)比較運(yùn)算符的選取,關(guān)系運(yùn)算符用于比較兩個數(shù)值之間的大小,不能用于兩個字符串變量的比較,兩個字符串變量的比較只能采用方法equals實(shí)現(xiàn),其原因在于值類型是存儲在內(nèi)存中的堆棧(以后簡稱棧),而引用類型的變量在棧中僅僅是存儲引用類型變量的地址,而其本身則存儲在堆中。==操作比較的是兩個變量的值是否相等,對于引用型變量表示的是兩個變量在堆中存儲的地址是否相同,即棧中的內(nèi)容是否相同。equals操作表示的兩個變量是否是對同一個對象的引用,即堆中的內(nèi)容是否相同。==比較的是2個對象的地址,而equals比較的是2個對象的內(nèi)容。顯然,當(dāng)equals為true時,==不一定為true。

參考文獻(xiàn)

[1]龔永罡.Java Web應(yīng)用開發(fā)實(shí)用教程[M].北京:機(jī)械工業(yè)出版社,2010.

作者簡介

彭登云(1971-),女,重慶銅梁人,本科,重慶財(cái)經(jīng)職業(yè)學(xué)院實(shí)踐教學(xué)中心實(shí)驗(yàn)師,研究方向:機(jī)房管理維護(hù)、網(wǎng)頁設(shè)計(jì)。

徐洪位(1971-),男,重慶永川人,本科,碩士,重慶財(cái)經(jīng)職業(yè)學(xué)院應(yīng)用設(shè)計(jì)系高級講師,研究方向:程序設(shè)計(jì)。endprint

猜你喜歡
連接表單
電子表單系統(tǒng)應(yīng)用分析
華東科技(2021年9期)2021-09-23 02:15:24
淺談網(wǎng)頁制作中表單的教學(xué)
公路與城市道路連接問題的研究探討
騰訊發(fā)揮“連接”優(yōu)勢助力區(qū)域品牌崛起
新營銷(2016年11期)2016-12-27 08:57:22
改進(jìn)主變低壓側(cè)套管與硬母排間的連接
陳春花:什么樣的公司最受90后歡迎?
基于Infopath實(shí)現(xiàn)WEB動態(tài)表單的研究
電子世界(2012年24期)2012-12-17 10:49:06
動態(tài)表單技術(shù)在教學(xué)管理中的應(yīng)用*
东乡县| 长海县| 隆德县| 尉氏县| 九龙城区| 闸北区| 黎城县| 吴桥县| 六枝特区| 泸州市| 海盐县| 双柏县| 铁岭市| 龙口市| 稷山县| 长兴县| 九龙坡区| 阳泉市| 泰宁县| 龙口市| 合山市| 沙坪坝区| 英吉沙县| 房产| 桑日县| 万山特区| 大关县| 阿合奇县| 黎平县| 正安县| 奉贤区| 军事| 祁阳县| 南宫市| 东阿县| 晋州市| 分宜县| 陇南市| 朔州市| 苍南县| 晋宁县|