java是处理一次可由多个线程访问的通用方法的最佳设计模式
我试图创建一个静态方法,一次可以被不同类的多个方法访问
由于它是静态的,它会被锁定,我会得到不同的结果和性能问题
有没有更好的方法使这些方法一次可供多个方法访问
在Spring框架中有更好的方法来处理这个问题吗
public class TestUtil {
public static SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
public static java.sql.Date getLastDayOfMonth(String month,intyear)
throws ParseException{
switch (month) {
case "jan":
return new java.sql.Date(f.parse(year+"-1-31").getTime());
case "feb": if(isLeapYear(year))
return new java.sql.Date(f.parse(year+"-2-29").getTime());
else
return new java.sql.Date(f.parse(year+"-2-28").getTime());
case "mar":
return new java.sql.Date(f.parse(year+"-3-31").getTime());
case "apr":
return new java.sql.Date(f.parse(year+"-4-30").getTime());
case "may":
return new java.sql.Date(f.parse(year+"-5-31").getTime());
case "jun":
return new java.sql.Date(f.parse(year+"-6-30").getTime());
case "jul":
return new java.sql.Date(f.parse(year+"-7-31").getTime());
case "aug":
return new java.sql.Date(f.parse(year+"-8-31").getTime());
case "sep":
return new java.sql.Date(f.parse(year+"-9-30").getTime());
case "oct":
return new java.sql.Date(f.parse(year+"-10-31").getTime());
case "nov":
return new java.sql.Date(f.parse(year+"-11-30").getTime());
case "dec":
return new java.sql.Date(f.parse(year+"-12-31").getTime());
default: month = "Invalid month";
return null;
}
}
}
共 (0) 个答案