因为jsp本质上就是servlet,提供了访问request、session、context三大域对象,用来对java(姑且认为你说的是controller层)与jsp(页面)之间的数据交互。
成都创新互联致力于互联网网站建设与网站营销,提供网站设计制作、成都网站制作、网站开发、seo优化、网站排名、互联网营销、重庆小程序开发公司、公众号商城、等建站开发,成都创新互联网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。
reqest:
在jsp页面中,在java脚本片段中可以用request.getattribute("xx")获取servlet转发时候传过来的参数。因为转发属于同一次请求。一次请求的参数会存在request域中。你可以这样去取。
如果是重复定向,你可以拼接参数,jsp页面用request.getparameter()可以去取。
session:
只要你在java程序中声明,在jsp页面中,java脚本片段中可以用request.getsession("xx"),就可以获取取。无论是转发还是重定向。因为session的作用在本次会话
context
即applicationContext作用域,作用于整个网站。一般不用
你使用el表达式${xx},其实就是request.getattribute("xx")或request.getsession("xx"),只是jsp给你封装了。不用你这么麻烦的去写
JSP显示Java代码?这个问题…
这样告诉你把,JSP本质就是一个servlet,输出的就是一张HTML网页,能显示任何HTML能显示的东西。你要显示Java代码的话,直接把Java代码粘贴到JSP中就可以了。
但是,如果你的意思是在JSP中使用Java代码,那么可以用% 这里填Java代码 %的方式。如果是要显示Java变量中的值,可以用%=变量名%。如果是访问request、session等 内置对象中的对象的值,可以用el表达式,如${对象名.属性}
希望可以帮到你,有疑问可以随时追问
jsp中查看java代码变量的值是通过打印的方式来查看的,最常用的是用c:out标签输出。
在Servlet文件中:
// 放入String类型,用c:out输出 String c_out_simple_string = "hello beijing 2008"; request.setAttribute("c_out_simple_string", c_out_simple_string);
在JSP文件中:
c_out_simple_string的值是: "${c_out_simple_string}"
c:out标签是JSTL的核心标签库中的一员,使用非常普遍且非常简单。在本示例中只使用c:out标签的value属性,value属性值的来源是EL表达式,通过EL表达式取出变量c_out_simple_string的值赋给c:out标签的value属性,然后通过c:out标签显示出来。
首先,在服务端定义了一个类和静态方法:
public class Test {
public static String sayHello(String name){
return "hello, " + name;
}
}
注意:必须是公开的静态方法。
ajax分为同步、异步调用,如果没有传递回调函数,则是同步调用;
如果传递回调函数,则是异步调用。
同步调用
script type="text/javascript"
......
try{
var obj = Test.sayHello('world!');
......
}catch(e){
//e.error 错误码
//e.message 错误描述
}
......
/script
不传递回调函数,以try…catch来处理错误。
在同步调用模式下,如果有网络错误、业务逻辑错误等,会抛出一个异常。
异步调用
script type="text/javascript"
......
Test.sayHello('world!',
function(obj){ //success callback function
......
},
function(error, message){ //fail callback function
}
);
......
/script
传递回调函数作为参数。如果只有一个回调函数, 则默认是成功的回调函数。
应该是用struts作的吧,a.java是一个action类,在action类中将获得值保存到request或session中,也就是request.setAttribute("xxx",xxxx);在c.jsp中获得request或session中的值,%=request.getAttribute(xxx);% 这样就把后面的xxxx的值获得了。