页面开启根据初始化数据执行查询

背景:
1. 页面A跳转到页面B
2. A设定B参数,通过绑定的bean
3. B开启时根据绑定的bean获取参数进行查询

问题1:A如何传参数给B?
问题2:B获取参数如何自动执行查询?

1, 在A中把指定参数存放到session中
a,注意设定web.xml中的fifter不要过滤掉保存参数的session
b,在B页面绑定bean的类中通过构造函数在初始状态getSession.get对应的session值,并复制给对应的属性
c,设定一个特殊的session用作判断是否是初始化

2, 在B页面中
a,获取session中判断是否为初始化的参数,如果为空,则不执行查询,否则设定可执行查询,并在设定完后清空此session避免页面刷新后重复执行查询

以上动作代码:

A:public String login() {
message = loginService.login(customer);
if (message.equalsIgnoreCase("SUCCESSFUL")) {
General.setSession("userId", customer.getUser_id());
General.setCookie("user_id", customer.getUser_id());

General.setSession("modelId",customer.getModel());//B所需参数
General.setCookie("model_id", customer.getModel());

General.setSession("initFlag",customer.getInitFlag());//是否初始化判断
General.setCookie("init_flag",customer.getInitFlag());
}
return message;
}

B:
public YieldBean() {
workDateFrom = DateToString();
workDateTo = workDateFrom;
schemaName = (String) General.getSession("schemaName");
customerCode = (String) General.getSession("customerCode");
model = (String) General.getSession("modelId");
}

B页面:
<%
boolean firstInit = false;
if(session.getAttribute("initFlag")!=null){
firstInit = true;
session.setAttribute("initFlag",null);
}
%>

function loadFun(firstInit){
formatCss();
initQuery(firstInit);
}

function initQuery(firstInit){
var initQuery = document.getElementById('yield:initQuery');
initQuery.style.display = "none";

if(firstInit){
initQuery.click();
}
}

<body onload="loadFun(<%=firstInit%>);">

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值