我正在尝试开始将我的(稍微有限的)PHP体验与我(更好)的Java体验相结合,在我需要允许将Java源文件上传到服务器的项目中,然后服务器执行Javac编译它。
然后,在设定的时间(例如在上传时指定)我需要在服务器上运行一次,这将生成一些数据库信息以供PHP站点显示。
为了描述我目前的编程能力 - 我已经制作了许多桌面Java程序,对'纯'Java有信心,但到目前为止只进行了几个PHP项目(包括使用CodeIgniter框架)。
我使用PHP作为前端的动机是因为我知道它非常快,重量轻,我将能够很容易地显示我需要的结果(简单的数据库读数)。理想情况下,所使用的技术应该能够在本地主机上开发(例如WAMP,Tomcat等)。
对于我应该考虑使用什么技术来弥补这一差距,以及哪些资源可以帮助使用该技术,是否有任何建议?我看了几个,但一直在努力找到有助于实现我需要的文档。
答案 0 :(得分:1)
有很多方法可以解决这个问题,你没有提供足够的细节来缩小到一种方式,所以我会提出一些...编译java源可能需要很长时间才能正常web请求,所以我的建议是让接受java源文件的PHP脚本运行后台命令,该命令编译源文件并将其进度记录到数据库或日志文件中。这样,您可以将用户重定向到一个页面,其中显示“请等待,您的源代码正在编译”,并使用Ajax每隔几秒检查一次以查看更新的进度。如果这是您要去的路线,请查看PHP exec command。
PHP可能更有利于在数据库中为每个上传的文件创建一个ID,并调用move_uploaded_file将源文件移动到“传入”目录。从那里开始,每隔一段时间运行一次的cron作业就可以扫描传入目录或数据库中的源文件,编译它们,并在完成后更新数据库。
在任何一种情况下,如果您愿意,编译程序可以用任何语言编写,甚至可以用Java编写。