用java做一个生日提醒,能只取出一个日期的月和日么?如:xxxx年xx月xx日 得出结果为xx月xx日
3个回答
展开全部
public static void main(String[] args) {
try {
String dbURL = "";//这里填入你的数据库的URL地址
String dbUser = "";//这里填入你的数据库的登陆用户名
String dbPsd = "";//这里填入你的数据库的登陆密码
String dbCS = "";//这里填入你的数据库的登陆连接语句
String dbName = "";//这里填入你的数据库表名
String dbSQL = "";//这里填入你的数据库的select语句
String birthStr = "";
Class.forName(dbCS);
Connection conn = DriverManager.getConnection(dbURL + "; DatabaseName= " + dbName, dbUser, dbPsd);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(dbSQL);
while (rs.next()) {
String dbBirthFielName = "";//这里填入你的数据库获取date的那个Field名字
birthStr = rs.getString("dbBirthFielName");
}
rs.close();
stmt.close();
conn.close();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date birthDate = df.parse(birthStr);
int birthMon = birthDate.getMonth();
int birthDay = birthDate.getDay();
int birthsum = birthMon + birthDay;
Date now = new Date();
int nowMon = now.getMonth();
int nowDay = now.getDay();
int nowhsum = nowMon + nowDay;
if ((birthsum - nowhsum) < 7) {
System.out.println("Happy birthday");
}
} catch (ParseException e) {
// TODO Auto-generated catch block
System.out.println("get parameter is not in conformity with the format ,Pls check the db ");
e.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
源代码在上面,看看合适不,不合适说声,我改code
try {
String dbURL = "";//这里填入你的数据库的URL地址
String dbUser = "";//这里填入你的数据库的登陆用户名
String dbPsd = "";//这里填入你的数据库的登陆密码
String dbCS = "";//这里填入你的数据库的登陆连接语句
String dbName = "";//这里填入你的数据库表名
String dbSQL = "";//这里填入你的数据库的select语句
String birthStr = "";
Class.forName(dbCS);
Connection conn = DriverManager.getConnection(dbURL + "; DatabaseName= " + dbName, dbUser, dbPsd);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(dbSQL);
while (rs.next()) {
String dbBirthFielName = "";//这里填入你的数据库获取date的那个Field名字
birthStr = rs.getString("dbBirthFielName");
}
rs.close();
stmt.close();
conn.close();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date birthDate = df.parse(birthStr);
int birthMon = birthDate.getMonth();
int birthDay = birthDate.getDay();
int birthsum = birthMon + birthDay;
Date now = new Date();
int nowMon = now.getMonth();
int nowDay = now.getDay();
int nowhsum = nowMon + nowDay;
if ((birthsum - nowhsum) < 7) {
System.out.println("Happy birthday");
}
} catch (ParseException e) {
// TODO Auto-generated catch block
System.out.println("get parameter is not in conformity with the format ,Pls check the db ");
e.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
源代码在上面,看看合适不,不合适说声,我改code
追问
谢谢您!我等晚上研究下,现在领导找我做别的事呢。。。呵呵
追答
好的,呵呵呵
展开全部
转换为Date格式的,在获取月份和天数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用字符串的截取方法substring
追问
但是数据库中的字段规格不是一样的,如:“1988-2-18 时:分:秒”,还有“1988-12-18 时:分:秒”,:“1988-2-8 时:分:秒”,没法统一定义开始和结束位置啊
追答
你可以更改数据库里字段规格,统一时间表示方式。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询