JAVA中怎样把后台的值传到前台 例如:
if(this.Request["type"]!=null)
{
aaa=this.Request["type"].ToString();
try
{
bbb=Convert.ToInt32(strType);
}
catch{}
}
现在想在前台的<script></script>中获得bbb的值? 请问该怎样做?
具体的方法哦!假如bbb是个list或者数组呢? 展开
以微信小程序为例,java后台与微信小程序前台页面,主要是通过restful接口进行交互,详细步骤:
1、之前已经探讨了如何快速创建springboot的项目,可以参考下面的地址,主要是修改pom.xml文件,之前引用了spring-boot-starter,这里因为是要创建restFul接口,所以需要引用spring-boot-starter-web。
2、当然在做web服务的时候,日志非常重要,lombok提供了非常优良的日志服务,这里引入lombok依赖的jar包。
3、之前创建了一个springboot项目,这里需要在项目中增加程序的入口,也就是main方法Application。
4、创建好了程序的入口后,这里创建一个接口,返回字符串,“restFul接口返回1111111”,@RequestMapping("/")表示拦截根目录的请求。
5、测试运行,启动项目,点击runas--javaapplication,然后检查日志,是否启动成功。
在目标JSP页面这样写<input type="hidden" id="info" value="<%=request.getAttribute("bbb")%>"/>,(或者${request.bbb})然后在Script中直接通过操作dom取得该值,var bbb=document.getElementById("info").value;不过这样获得的值已经是个字符串了,因为无论是<%=request.getAttribute("bbb")%>还是表达式,执行的对象的toString方法输出,如果是数组的时候可以考虑用C标签,循环输出每个数组元素,然后用document.getElementByName方法获取
假如我想用session把数组bbb的值从后台传到前台,后台的代码该怎样写了?到了前台的Script中怎样来获取?
好吧,本来懒得写代码的,那就写一下了,原理是这样的,希望能够抛砖引玉
后台:
public String getSeesionArrays() {
HttpSession session =ServletActionContext.getRequest().getSession();
String [] bbb={"第一个元素","第二个元素","第三个元素","第四个元素","第五个元素"};
try {
session.setAttribute("bbb", bbb);
} catch (Exception e) {
e.printStackTrace();
}
return "details";
}
当然不管怎么样,用servlet,struts,webwork,spring mvc还是纯JSP,只要能将数组bbb的值设置成session范围属性,然后能够跳转到目标JSP页面或是浏览器不关闭的情况下,到任何页面,可以通过如下方式获得
<%@ page language="java" pageEncoding="GBK"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>资源列表</title>
<style type="text/css">
</style>
<script language="javascript" type="text/javascript">
function initialJSP(){
var bbb=document.getElementsByName("array");
var info="";
for( i=0;i<bbb.length;i++){
info +=bbb[i].value+",";
}
alert(info);
}
</script>
</head>
<body onLoad="initialJSP()">
<h1>
资源列表
</h1>
<ul>
<%
String bbb[]=(String[])session.getAttribute("bbb");
for(String s:bbb){
%>
<li>
<input type="hidden" name="array" value="<%=s%>" />
<%=s %>
</li>
<%
}
%>
</ul>
</body>
</html>
当然,按照要求,JSP页面当中要不存在<%%>,也就是没有JAVA代码才是合格的,但是这里就勉强那这个做个事例!然后输出结果如下图,显然已经取到了bbb数组,不过都是String类型的,