package net.codejava.ws;
import java.util.Calendar;
import java.util.Date;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/datum")
public class DatumGeben {
// @GET
// @Produces(MediaType.TEXT_PLAIN)
// public String datumWrite() {
// return "schreiben Datum hier!";
// }
// @GET
// @Produces(MediaType.TEXT_HTML)
// public String sayHTMLHello() {
// return "<html><title>Hello REST</title><body>"
// +"<h1>Welcome</h1></body></html>
@GET
@Produces(MediaType.APPLICATION_JSON)
public Date sayJsonHello() {
Student st = new Student();
String date = "23.1.2014";
Date mydate = st.getValidDate(date);
if(mydate!=null) {
Calendar calendar=Calendar.getInstance();
//Converting Date to Calendar.
calendar.setTime(mydate);
int dayofWeek=calendar.get(Calendar.DAY_OF_WEEK);
String dayName=getDayName(dayofWeek);
}
// System.out.println("Day : "+dayName);
return mydate;
}
private static String getDayName(int dayofWeek) {
String dayName=null;
switch(dayofWeek)
{
case 1:
dayName="Sunday";
break;
case 2:
dayName="Monday";
break;
case 3:
dayName="Tuesday";
break;
case 4:
dayName="Wednesday";
break;
case 5:
dayName="Thursday";
break;
case 6:
dayName="Friday";
break;
case 7:
dayName="Saturday";
break;
}
return dayName;
}
}
//
package net.codejava.ws;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Student {
private int id;
private String name;
private String country;
// constructor
public Student() {
super();
}
public Student(int id, String name, String country) {
super();
this.id = id;
this.name = name;
this.country = country;
}
//get and set
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public Date getValidDate(String date) {
Date mydate=null;
if(isValidDateFormat(date))
{
/*
* d -> Day of month
* M -> Month of year
* y -> Year
*/
DateFormat dateFormat=new SimpleDateFormat("dd.MM.yyyy");
dateFormat.setLenient(false);
try {
mydate=dateFormat.parse(date);
} catch (ParseException e) {
mydate=null;
e.getStackTrace();
}
}
return mydate;
}
public boolean isValidDateFormat(String date) {
String pattern="(0?[1-9]|[12][0-9]|3[01])\\/(0?[1-9]|1[0-2])\\/([0-9]{4})";
boolean result=false;
if(date.matches(pattern))
{
result=true;
}
return result;
}
}
你在方法的最开始随便打印什么,或者你直接打断点看看,请求有没有进来。
在 getValidDate这个函数内部调试一下,日期格式一般用横杠分割吧
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y