关于在jsp中写js嵌套java代码的用法?

<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代码已经写好在被的类中,此处为直接调用!!
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("账号或密码不能为空");
return false;
}else{
username.setCustomValidity("账号或密码错误,请从新输入");
return false;
}

<%
}
%>

}
</script>

执行:
<input type="submit" value="登录" onClick="check()">
在学javaee1,没接触过js,在做登录界面的时候,想在js代码中嵌套一些java代码做数据库操作,但是报空指针异常,sql代码是没错的,测试过了。但是不知道为什么一直报空指针,求指正改如何写。

第1个回答  2015-05-23
(1)给 username 赋了两次值,第二次应该是赋值给 passsword

(2)你这逻辑有问题,直接把用户名密码写到 js 文件返回给客户端了,等于给用户密码,让他自己去核对对不对。
(3)报空指针异常有提示哪一段么,没有的话,断点试试,看不出来哪有问题。追问

恩恩,那个username的地方写错了,没看见,但是代码改对之后依然不行额,但是我用mysql测试却可以,sqlserver2008报空指针额。我另外写了一个类测试sqlserver发现能用额,但是在jsp里写就报空指针,用的同样的sql代码!!

第2个回答  2015-05-23
具体的异常你要贴出来才能看出是什么问题,要看具体是在哪里报的空指针异常,确保你DBHelper里面连接数据库是正常的。追问

连接数据库的那部分写了个类测试过了,可以正常过读取。在jsp里这么写则报空指针!!请帮忙看看,或者给我个方案!!

追答

异常已经明显提示了,在DbHelper 的23行,打开statement的时候是空指定,这说明你的数据库没有连接成功,是空对象,你最好debug跟踪一下

追问

终于搞定了,不知道为什么用sqlserver2008就会空指针,而用mysql却不会。

本回答被提问者采纳

jsp页面嵌入java代码怎么写(jsp页面中java代码无效)
jsp页面中javascript嵌套java代码段关键是%pdao.delpinfo(sfzh);%这里。这句在页面加载成功就已经执行了,不受js代码段控制的。(java代码优先执行,并且输出动态内容,生成静态页面后,js才开始执行)如果要让js控制操作逻辑,去判断是否发送新的请求,可以用ajax、或用js去操作一个form提交,或者用js去...

怎么在 js 代码中使用 jsp 标签或 Java 代码
引申此话题的,其实不光是在 JS 中使用 JSP 标签,可用 JSP 标签的地方当然可以直接写 Java 代码,即 ScriptLet 代码。如果是在 JSP 中内嵌的 JS 代码,那当然好办,JSP 文件中能用什么标签,js 代码中也能随便用,因为 JSP 标签会先在服务端解释生成相应的 JS 代码,丢给客户端执行。那如果是...

jsp中怎样用js调用java代码,并返回结果用alert提示
要实现这个只能用dwr.你可以去网上找找相关的资料。学一学,不是很难的。java web project 结合dwr是很常见的.

请问如何在js中遍历jsp页面里的java代码(如List<xxx>),程序代码如下
} 然后js里面这样var list='<%=str %>';list=new Function("return "+ list)();这样后list就是个和java中list差不多的对象数组了 list[i].id等价于java的list2.get(i).getId()

js如何获取jsp页面中嵌入的java代码中的变量?
java运行在服务器端,在同一个jsp文件中,java先运行,js后运行,java可以生成一段js代码,保证js运行得到相应的结果,因此可以用java定义js变量的方式来传递数据,例如:var url="<%=url%>";alert(username);上面例子,<%%>中的内容会在服务器端运行,在“”中间输出网址,浏览器就会加载下面的结果...

为什么jsp中的javascript里面的java code被直接run了
这个要区分代码的执行范围,javascript是在前台执行的,而Java 代码是在服务器端执行的。

Java Web开发jsp注册页面怎样用javaScript代码直接在页面上注册内容后面...
可以实现的,如果你是要在注册文本框后面显示的话可以增加一个span,然后在javascript中获取到文本框的值,然后传给span,注册名: <javascrpt代码> function back(){ var username=document.f.username.value;document.getElementsbyId("s").innerHTML=username;} ...

如何在JavaScript中使用java类中的方法
{ var result = xmlHttp.responseText;document.getElementById("select_employees").innerHTML = result;} } 思想就是,通过HTML控件的事件调用JS的方法,在JS理通过httprequest对象的open方法调用服务器脚本--- 在服务器脚本里 你可以用javabean的方法,并且把计算结果传递给JS.曲线实现了你的思想 ...

jsp中不能出现java代码
并不是说一定不能出现java代码 因为JSP是一种视图技术,现在的视图技术有很多,JSTL算是一种,然后还有freemaker等 因为在JSP里面添加java代码为显的很混乱,后期维护不方便 如果一个项目比较小使用带java代码的JSP页面也可以,但是不推荐 这个具体的还是要看公司的要求和项目需求了~~...

spring 中如何实现jsp与java的交互
1:servlet,一个JSP页面经过编译后是一个servlet类,可以通过servlet进行交互。2:添加Struts框架,通过Struts进行交互。3:JS,Ajax或者DWR,不过用DWR的话似乎也用不到spring了。4:标签。有自定义标签,spring也有自己的标签,可以进行交互。5:与第一个办法类似,JSP本身可以嵌套java代码,当成是2个java类之间的交互就行。

相似回答