<%@ page import="java.util.HashMap" %>
以下是我给你的建议:
jsp是MVC2设计模式中的视图层,别往里面直接写java代码,java代码可以写到控制层或者模型层或者service层。
用el表达式、jstl代替java代码操作数据即可。
jsp要学的是JSP自身的指令+el表达式+jstl+html+js。
可以将JAVA变量在JSP头部定义成全局变量。然后可以分别在JS和JSP里调用。
因为可以将JS和JSP理解为两个相互独立的块。这2个块里面的变量都是局部变量。 而局部变量是不共享的。
首先很基础的:JS可以直接引用JAVA变量,但JAVA不能引用JS变量。因为页面是先编译JAVA再编译JS,代码如下:
String tbname="bd_bank"
out.write("<SCRIPT language="+"'"+"JavaScript"+"'"+">var tbname="+"'"+tbname+"'"+"</SCRIPT>")
%>
//下面的javascipt可以直接调用变量tbname
<script language="javascript">
alert(tbname)
</script>
//在js文件中的javascipt一样可以直接使用变量 tbname 啊。
<script language="JavaScript" src="../comm/dbgrid.js"></script>
反正两个原则记好:
1、jsp代码中可以构造javascipt语句,当然包括定义备用的javascipt的变量
2、理论上在整个页面中,任何一个地方定义的javascript代码都可以被正确使用。javascipt代码对位置不敏感。
可以通过Ajax请求Servlet,然后Servlet调用Java类中的方法并返回数据给JS。
用mvc框架访问java类方法,例如struts,springmvc
也可以在jsp中用<%Java代码%>