急急急!!大家来帮个忙吧,明天交项目了! 我现在想在tomcat一启动以后进入第一个页面的时候就能往session中存个数据,因为我在第一个页面就要用!怎么办啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 tomcat 启动跟你在 session 中存数据有什么关系? 最方便的方法是建一个过滤器。url-pattern 设为 /*在 doFilter 中从 request 里得到 session,判断 session 的某个值是否为 null,为 null 的话就往里面塞东西。 在web。xml 配置一个执行的servlet 让它在启动服务器就执行,向session写输入 index页面直接写一个js 跳转到servlet或者跳转到javabean查出需要的数据,装入session然后通过分发器,或者跳转到需要数据的页面。OK! 通过在filter拦截 请求,然后在你拦截的方法里往session中存值。 用监听器也行。随服务器启动而运行,或者设置在什么时间运行。 <listener> <listener-class>xx.xx.test</listener-class> </listener>public class BirthdayListener implements ServletContextListener { private Timer timer = null; /** * 初始化 */ public void contextInitialized(ServletContextEvent event) { timer = new Timer(true); Calendar calendar = Calendar.getInstance(); /** * 设置每年的1月1日0:0:00进行更新 */ calendar.set(Calendar.MONTH, Enumeration.ONE); calendar.set(Calendar.DAY_OF_MONTH, Enumeration.ONE); calendar.set(Calendar.HOUR_OF_DAY, Enumeration.ZERO); calendar.set(Calendar.MINUTE, Enumeration.ZERO); calendar.set(Calendar.SECOND, Enumeration.ZERO); Date date = calendar.getTime(); timer.schedule(new BirthdayTask(), date , 366*24*60 * 60* 1000); //一年一次定时任务 } /** * 销毁 */ public void contextDestroyed(ServletContextEvent event) { timer.cancel(); }}public class BirthdayTask extends TimerTask{ public void run() { xxxxxx }} 就是,一启动的时候做一action跳传 ServletContextListener 监听器 能像Session里放东东?你第一个页面就要用的东东,不知是什么,不管如何,用过滤器是正招。 第一个页面? 是jsp吗? 你可以先通过别的页面绑定好再条过来如 forward.jsp(绑定session再重定向)---index.jsp(第一个页面) 我现在想在tomcat一启动以后进入第一个页面的时候就能往session中存个数据,因为我在第一个页面就要用!?????没道理,第一个页面就要用为什么还放在session里呢,session会话,你打开一个页面就会创建一个的,不知道你要实现什么功能,没办法出解决方案 增加filter 在启动的时候运行写入session javascript验证失败后如何阻止表单提交 求帮助啊!!!! 希望前辈们能给小弟一点建议,先谢谢了 myeclipse7.0+hibernate3.3问题 java Telnet 遇到控制符怎么处理 关于BufferedInputStream james使用mailet API处理收件人的问题 谁帮我解决了TUTORIAL1.4里面的BANK的问题我给他30元,,骗人是狗。 为什么我的机子装不了Java虚拟机,连Weblogic套装软件都装不上去?——急! 求做一个实体Bean的完整步骤 系统完成,如何如何打包配置到tomcat 截取字符数 new Date的问题
通过在filter拦截 请求,然后在你拦截的方法里往session中存值。
<listener-class>xx.xx.test</listener-class>
</listener>
public class BirthdayListener implements ServletContextListener { private Timer timer = null;
/**
* 初始化
*/
public void contextInitialized(ServletContextEvent event) {
timer = new Timer(true);
Calendar calendar = Calendar.getInstance();
/**
* 设置每年的1月1日0:0:00进行更新
*/
calendar.set(Calendar.MONTH, Enumeration.ONE);
calendar.set(Calendar.DAY_OF_MONTH, Enumeration.ONE);
calendar.set(Calendar.HOUR_OF_DAY, Enumeration.ZERO);
calendar.set(Calendar.MINUTE, Enumeration.ZERO);
calendar.set(Calendar.SECOND, Enumeration.ZERO);
Date date = calendar.getTime();
timer.schedule(new BirthdayTask(), date , 366*24*60 * 60* 1000); //一年一次定时任务
}
/**
* 销毁
*/
public void contextDestroyed(ServletContextEvent event) {
timer.cancel(); }}
public class BirthdayTask extends TimerTask
{
public void run()
{
xxxxxx
}
}
你第一个页面就要用的东东,不知是什么,不管如何,用过滤器是正招。
?????没道理,第一个页面就要用为什么还放在session里呢,session会话,你打开一个页面就会创建一个的,不知道你要实现什么功能,没办法出解决方案