这个应该是后台向前台web层推送消息,可以用dwr技术实现,dwr框架是开源的,网上有很多资料。大概步骤是:
为东兴等地区用户提供了全套网页设计制作服务,及东兴网站建设行业解决方案。主营业务为成都网站建设、网站建设、东兴网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
在java中定义一个thread线程类,在该线程的run方法中定时轮询生日信息,通过scriptsession将生日提醒信息推送到前台
定义dwr.xml配置文件(把js对象和java类对应起来)
在web层中使用js方法发布thread类的start方法(web页面可以在登陆的时候就执行该js方法),启动线程
我加的import java.util.Date;和你老师说的import java.util.*;一样,那我改成你那种把
我写的应该是最简单的了,里面还写了很多注释,你可以看看,其实你新学习,坑农是看这些东西有点眼晕,别晕,其实都是很简单的,JAVA的最大特点就是他有很多别人写好的东西,调用就可以了,你不认识的就当是调用了
import java.util.*;
import javax.swing.JOptionPane;
public class Test93 {
public static void main(String[] args) {
System.out.println("我行我素购物管理系统生日问候");
//这是一个死循环,需要后面的break跳出
while (true) {
Date dt = new Date();
//dt就是获得的当前系统信息,下面用date的分别取今天的月份和日子
//注意月份要加1
//这里用Calendar会更好,但是貌似你要用date
int month = dt.getMonth() + 1;
int date = dt.getDate();
//用对话框提示用户,并得到用户的输入
String id = JOptionPane.showInputDialog(null, "请输入您的会员编号:");
String str = JOptionPane.showInputDialog(null, "请输入您的生日:");
String month2 = str.substring(0, 2);
String date2 = str.substring(3, 5);
//转换得到的字符串,和月份,日子分别比较
if (month == (Integer.parseInt(month2))
date == (Integer.parseInt(date2))) {
//一致就通知获奖,并结束程序
System.out.println("第一个产生的寿星为:"+id+" 获赠一个三星手机");
break;
} else {
//不一致继续循环
System.out.println("今天不是您的生日");
String str2 = JOptionPane.showInputDialog(null, "继续Y/N?");
//如果用户输入N则系统结束,大写小写N都可以
if ("N".equals(str2) || "n".equals(str2)) {
break;
}
}
}
}
}
最后再不愁一句,你把这个格式给修修,比如缩进什么的会更清晰,可以用eclipse 的ctrl+shift+f的快捷键
呵呵加油
①可以考虑将每个人封装成一个类,该类包含name,birthday等属性。
②将每一个人的姓名和生日日期输入到程序中,获得了这个类的对象,将对象放进ArrayList里。
③提供修改每个人的姓名和生日日期功能。
④运用io流将每个人的信息输出到硬盘上,以便下次打开可以读取进来。
⑤假若已经拥有了这些人物信息。就取出每一个人的信息,将生日日期与今天的天数进行比较,获得剩余生日天数。可以用Map存储键值,键为名字,值为剩余天数。获得了这个数据结构,将值(剩余天数)进行按从小到大排序。
⑥输出这个数据结构的数据,按照天数从小到大输出,得到了:
姓名 生日剩余天数
张三 15天
李四 25天
... .. .....
最好设计图形界面。时间类可以考虑用Calendar和Date,具体操作你应该多去了解下这两个类哈!~!
哪里不懂可以追问一下哈