jsp里,request中的数据是填充到jsp页面是通过getAttribute方法实现的。
比如:在hello.jsp中通过getAttribute()方法获得用户名字:
<% String username=(String)request.getAttribute("username"); %>
Hello: <%=username %>
当两个Web组件之间为转发关系时,转发目标组件通过getAttribute()方法来和转发源组件共享request范围内的数据。
注意:request.getAttribute 返回的是Object,取值的时候需要强制转换。
如果你的数据放在attrabute中的在页面上直接用${name},那么是变量名,如果有通过地址栏传参的可以试试${param.name},后面的name也是变量名
jsp显示request,session的值都是通过el表达式来显示
如果 数据放在attrabute中的在页面上直接用${name},那么是变量名,如果有通过地址 栏传参的可以试试${param.name},后面的name也是变量名
,如图:
jsp在运行的时候会先编译成一个java类,比如说index.jsp运行时会被编译成index_jsp.java(本质上就是一个Servlet),最后再编译为index_jsp.class文件,换句话说,JSP最后都会被映射为对应的java类,如果在request(具体怎样传参由Tomcat实现)有参数或者是一些其它数据,并在对应JSP有读取操作,那么在对应的java类中就会相应的取值操作,最后由out对象写入输出流
request.getAttribute("name"),name为变量名。