java - 将 PHP 语句转换为 Java 语句

标签 java php jakarta-ee

我必须将以下 PHP 脚本转换为 JSP scriplet:

<?php
 $cache_expire = 60*60*24*365;
 header("Pragma: public");
 header("Cache-Control: max-age=".$cache_expire);
 header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$cache_expire) . ' GMT');
?>

我能够做到:

<%! long cacheExpire = 60*60*24*365; %>

<% 
 response.setHeader("Pragma", "public");
 response.setHeader("Cache-Control", "max-age=" + cacheExpire);
 response.setHeader("Expires", "....?..."); // what do I put in the second string ?
%>

但是我无法将 PHP 脚本中的最后一条语句转换为 JSP。我刚刚在 Java 中理解了这一点:

new GregorianCalendar().getTime() + cacheExpire

但这实现起来是不正确的。

如何将 PHP 的最后一条语句转换为 Java 语句?

最佳答案

这与上面的 PHP 代码完全相同:

<%! long cacheExpire = 60*60*24*365; %>

<% 
 response.setHeader("Pragma", "public");
 response.setHeader("Cache-Control", "max-age=" + cacheExpire);

 DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss");
 df.setTimeZone(TimeZone.getTimeZone("GMT"));
 long expire = (long) System.currentTimeMillis() + (cacheExpire * 1000);
 String expires = df.format(new Date(expire)) + " GMT";

 response.setHeader("Expires", expires);
%>

棘手的部分是在 java 和 php 的不同日期格式标记之间进行转换,并获取 GMT 时区的 java 日期,希望你发现它有用:-)

关于java - 将 PHP 语句转换为 Java 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12436769/

相关文章:

java - 非法参数异常 : Unsupported ciphersuite

java - 如何解决ElementNotInteractableException : Element is not visible in Selenium webdriver?

java - 使用一组有限值的 String 类属性的最有效方法

java - Jacoco:对于报告生成,必须使用与运行时相同的类文件

Java、 hibernate 、 Spring

PHP 多条目

php - Swift Mailer 不返回 smtp 邮件失败

php - 第一次如何创建mysql数据库?

java - Java 中是否需要任何类型的 'enterprise container'?

Java 和 .NET 应用程序通信