在jsp中插入JAVA代碼方法:
創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)公司,提供成都網(wǎng)站建設(shè)、網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);可快速的進(jìn)行網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,是專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
1.Scriptlet:腳本小程序
(1)%...%:可以插入一些語(yǔ)句。
舉例:% out.println("h2Hello world/h2"); %表明向網(wǎng)頁(yè)輸出一個(gè)Hello world語(yǔ)句。
(2)%! ... %:只能放置全局變量、全局常量、類、函數(shù)。
舉例:
%!
public static final String INFO="HELLO WORLD";
class Person{
.....
}
%
注意:%! %中不能使用內(nèi)置對(duì)象!
(3)%= ... %:只能放置一個(gè)變量、常量。
舉例:%="Hello world"%
2.jsp:scriptlet標(biāo)簽
在jsp:scriptlet/jsp:scriptlet中插入語(yǔ)句即可。
凡是使用到了java中的語(yǔ)言部分,一般都是在服務(wù)器端執(zhí)行,解析后返回客戶端形成標(biāo)準(zhǔn)的html
答:jsp中java代碼可以寫在js中。
示例如下:
script type="text/javascript"
function check(){
var username=document.getElementById("username");
var username=document.getElementById("password");
//java代碼塊
%
String sql="select * from Manger";
String user;
String pass;
ResultSet rs=DBHelper.query(sql);//sql代碼已經(jīng)寫好在被的類中,此處為直接調(diào)用!!
while(rs.next()){
user=rs.getString("username");
pass=rs.getString("password");%
if(username.value=="%=user %" passsword.value=="%=pass%")
{
return true;
}else if(username.value==""|| password.value==""){
username.setCustomValidity("賬號(hào)或密碼不能為空");
return false;
}else{
username.setCustomValidity("賬號(hào)或密碼錯(cuò)誤,請(qǐng)從新輸入");
return false;
}
%
}
%
}
/script
是% %
jsp最后會(huì)弄成servlet,應(yīng)該跟平時(shí)寫的java代碼一樣
jsp文件中存在一些java代碼是在所難免的,不然也不用使用jsp了,純html就好了嘛,但對(duì)于題目中的“一部分”是指多少并未可知,如果太多確實(shí)會(huì)有影響的,所以一般不建議這樣做,影響大致如下所列:
1、根據(jù)MVC思想,JSP屬于VIEW層,不宜存在太多java的代碼,view層應(yīng)該只有布局、樣式相關(guān)的代碼,jsp中包含太多java代碼就和MVC思想有出入了。
2、可讀性差,大多公司中,JSP是有專業(yè)的前臺(tái)人員進(jìn)行維護(hù)的,但這些前臺(tái)人員,只需要具備HTML、JS、CSS、JQUERY等前端技術(shù),一般都不懂得Java代碼,在jsp中寫太多java代碼,會(huì)使可讀性變差,不便于前臺(tái)人員維護(hù)。
3、不便于維護(hù)。把多數(shù)java代碼寫在jsp頁(yè)面中,而更多的代碼還是在后臺(tái)的java文件中的,這樣在開發(fā)過(guò)程中就需要多個(gè)文件一起看,出了問(wèn)題也要一起修改,這要造成了維護(hù)代碼的負(fù)擔(dān)。
4、不易于調(diào)試。其實(shí)更確切的說(shuō)是不能調(diào)試。jsp文件中是無(wú)法加斷點(diǎn)的,這樣寫出的代碼如果存在問(wèn)題卻編譯通過(guò)的話,想找起來(lái)會(huì)相當(dāng)麻煩。
也正因?yàn)闀?huì)有上述所說(shuō)的這些影響,但開發(fā)者又有時(shí)需要在jsp中輸入java代碼,所以才有jstl、el表達(dá)式等技術(shù)出現(xiàn)可以在jsp頁(yè)面替換掉那些復(fù)雜的java代碼。