我正在德国学习计算机科学,最近偶然发现了 Web服务和 Google Web Toolkit 。
我想:“很好,定义按钮,输入字段,面板,......只需点击编译就可以了”
然后我想:“为什么要点击编译?......”
问题: 是否有技术我可以动态定义按钮,面板,输入字段......?像GWT一样但没有编译过程。在服务器上运行整个业务逻辑(通过AJAX或其他东西),浏览器就是输入/输出接口。
希望我的问题清楚。
祝你好运, 安德烈
答案 0 :(得分:1)
GWT的要点是你可以用Java编写客户端浏览器代码。这是一个优点或缺点,取决于你喜欢Java的程度。
如果您只编写普通的Javascript(例如使用JSON或XML)与服务器通信,则无需编译步骤。
但是如果你想使用Java,则需要编译步骤,因为浏览器只能理解Javascript。 (除非您想使用Applet,但这是一种不同类型的解决方案..)
答案 1 :(得分:1)
是:在开发模式下运行GWT(它仍将编译为字节码 - 但与编译/转换为JavaScript相比,这非常快)。我不认为偶尔点击编译来获取真正的javascript代码是一个大问题,是吗?
答案 2 :(得分:0)
那会是HTML吗?好吧,它没有面板,但您可以使用div或(如果必须)表。如果您想要服务器上的所有逻辑,则不需要为客户端进行任何编程。 HTML将是完美的。是否有技术我可以动态定义按钮,面板,输入字段......
与GWT类似但没有编译过程。
这意味着浏览器必须能够执行您的代码:JavaScript。 (您确实知道Java和JavaScript有相似的名称,但是完全不同的语言?)
我认为我不理解你的问题,希望这会有所帮助。
答案 3 :(得分:0)
虽然我无法真正理解这个问题(我的意思是问题背后的真正的问题),但GWT的另一个选择是JSF,它完全符合您的要求,甚至更多。 查看JSF2实现:我推荐Primefaces(http://www.primefaces.org/showcase/ui/home.jsf)。
使用特殊标记(包含HTML和JSF标记的XML)创建页面,并且在服务器端,您有支持bean(顺便说一下,它们是带注释的POJO)。
我认为如果你在后台拥有复杂的业务逻辑,这是最好的方法,因为它集成在整个Java EE领域(但你也可以在一个像Tomcat这样的简单servlet容器中单独使用JSF)
您不必编译JSF页面,Faces servlet会动态处理它们,并在必要时生成相应的HTML + Javascript。这使得复合组件等高级功能成为可能(这是抛弃JSP IMHO的一个原因)。最好的部分是你仍然可以完全访问低级别的位,所以你可以做(但不要必须!)自定义Javascript,如果你愿意,覆盖CSS样式,如果您发现您选择的JSF库中缺少某些内容,您甚至可以开发自己的标记库。