我想学习,至少在基本水平上,如何构建Java web应用程序(来自。net背景)。我希望能够构建,部署一个简单的CMS类型的应用程序从地面上。
我到底需要学什么?
Tomcat似乎是一个很好的Java web服务器。
网络有什么选择?我知道ORM有Hibernate。
Java有MVC吗?JSP呢?MVC和JSP可以结合在一起吗?NetBeans吗?
也许是一本涵盖所有这些内容的书?
我想学习,至少在基本水平上,如何构建Java web应用程序(来自。net背景)。我希望能够构建,部署一个简单的CMS类型的应用程序从地面上。
我到底需要学什么?
Tomcat似乎是一个很好的Java web服务器。
网络有什么选择?我知道ORM有Hibernate。
Java有MVC吗?JSP呢?MVC和JSP可以结合在一起吗?NetBeans吗?
也许是一本涵盖所有这些内容的书?
当前回答
java有MVC吗?
Java有不同的框架,比如Struts2, Spring MVC
JSP呢?
JSP是模板库。你可以尝试一些像FreeMarker和Velocity这样的替代品。AFAIK Freemarker是一个新兴的模板库。它比JSP轻量级。查看这个FreeMarker: JSP - JavaWorld的开放替代方案
MVC和JSP可以结合在一起吗?
我把MVC作为前面提到的一个框架。所有框架都支持JSP,但您需要在各自的框架文档中检查对其他模板库的支持。AFAIK Struts2对Freemarker有很好的支持。
豆?
我对它了解不多。但是使用bean,我们可以直接将表单数据映射到数据库。
也许是一本涵盖所有这些内容的书?
每个框架都有自己的书籍。Struts2 - Struts2在行动
字符串MVC——看看这些关于Spring和Spring MVC的推荐书籍的问题。Spring框架和Spring书籍的书籍建议:选择哪一本
Fremarker有一个非常好的文档——FreeMarker手册
对于开始使用Java进行web开发
http://www.amazon.com/SCWCD-Exam-Study-Kit-Certification/dp/1930110596
其他回答
我是一名PHP/C编程人员,我发现groovy使我能够在不学习Java编程中固有的所有类和范式的情况下跳入Java。Groovy使我能够快速提高效率,同时花时间学习更多关于java和所有可用的工具/框架/库的知识。
我认为大多数传统的Java web开发选项都是非常重量级的,有一些不错的替代方案:
Play is an MVC framework which is focused on being lightweight, straightforward, and enabling rapid development — while sticking with pure Java, as opposed to a more dynamic JVM-based language. It's fairly new but already impressive, and a good community has built up around it quickly. Grails is an MVC framework, inspired by Ruby on Rails, which is written in, and uses, Groovy, a Java-based scripting language. Grails is mature, robust, and widely respected, with a strong community. Groovy is basically a superset of Java, with better syntax and some great features such as closures, so learning it is a great way to learn Java. If you need/want to build RESTful web sites/services/applications, Restlet is a fantastic framework — I'm a big fan. It's simple, straightforward, and yet flexible. Great community too. Google's App Engine is an interesting option as well. It's hosted, which may or may not be of interest, but it has a fairly simple API, and a good SDK.
我相信还有其他的,但是这些是我能想到的。
祝你好运,玩得开心!
你最好去学java。然后学习servlet和JSP。然后去MVC,你去Struts或Spring或任何其他java/java支持的框架。
(2021年4月更新)
首先,“Java EE”自2019年9月起更名为“Jakarta EE”,从版本8开始。从历史上看,还有一个术语“J2EE”涵盖了1.2到1.4版本。“Java EE”涵盖了版本5到8。参见Java平台,企业版,维基百科上的历史。
我到底需要学什么?
我假设你已经熟悉了HTML、CSS和JS等客户端技术,所以我就不详细讲了。我还假设您已经熟悉基本的Java。参考Oracle的Java教程,如果可能的话,也买一本OCP的书或课程。
Then you can start with JSP/Servlet to learn the basic concepts of Java web development. Good tutorial can be found in Jakarta EE tutorial chapter 18 'Jakarta Servlet Technology'. Note that since Java EE 6, JSP is removed from the tutorial in favor of JSF and that JSP has basically not changed since then. That's why you could safely use the fairly old Java EE 5 tutorial for this. Most important thing with regard to JSP is the fact that writing plain Java code in JSP files using <% scriptlets %> is officially discouraged since 2003. See also How can I avoid Java code in JSP files, using JSP 2? So any tutorials which still cover scriptlets should be skipped as they will definitely take you into a downward spiral of learning bad practices.
在Stack Overflow上,您还可以找到关于JSP、servlet、JSTL和EL的wiki页面,在那里您可以了解基本知识并找到更多有用的链接。
Tomcat似乎是一个很好的Java web服务器。
It is. It is however limited in capabilities. It's basically a barebones servlet container, implementing only the JSP/Servlet parts of the huge Java EE API. If you ever want to go EJB or JPA, then you'd like to pick another, e.g. WildFly, TomEE, Payara, Liberty, WebLogic, etc. Otherwise you have to use Spring instead of Java EE. It's namely not possible to install EJB in a barebones servlet container without modifying the core engine, you'd in case of Tomcat basically be reinventing TomEE. See also What exactly is Java EE?, How to properly install and configure JSF libraries via Maven? and How to install and use CDI on Tomcat?
我知道ORM有Hibernate。
以前,在J2EE时代,JPA还不存在,EJB2很糟糕,Hibernate是一个独立的框架,经常与Spring结合使用来取代EJB。自从在Java EE 5(2006)中引入JPA以来,Hibernate已经成为JPA实现。您可以在Jakarta EE教程第VIII部分学习JPA。此外,EJB3在Spring的经验教训的基础上得到了很大的改进。什么时候使用Spring或EJB3或一起使用它们是必要的或方便的?
Java有MVC吗?JSP呢?MVC和JSP可以结合在一起吗?javabean吗?
You can, but that's a lot of reinvention of the wheel when it comes to tying the model with the view (conversion, validation, change listeners, etc). Jakarta EE's MVC framework is called JSF. Prior to Java EE 6 it used to run on JSP, which is a fairly legacy view technology. JSP is been replaced by Facelets. You can learn JSF at Jakarta EE tutorial part III chapters 7 - 17. You can by the way also use JSF on Tomcat, you only have to install it separately. Installation instructions can be found at Mojarra homepage. WildFly, TomEE, Payara, Liberty, WebLogic, etc as being a complete Jakarta EE implementation already provide JSF (and CDI, BV, JSONP, JAX-RS, EJB, JPA, etc) out the box, so you don't need to install it separately. See also How to properly install and configure JSF libraries via Maven?
也许是一本涵盖所有这些内容的书?
有几本书。我建议从一本一般关注Jakarta EE的书开始,一本更关注JSF的书,一本更关注JPA的书。确保你选择的是涉及该主题的最新书籍。首先调查最新的可用版本,然后确保所选的书涵盖了它。因此,在目前已经有Jakarta EE 8和JSF 2.3可用的情况下,绝对不要选择Java EE 5或JSF 1.0之类的旧书。
最后但并非最不重要的是,请忽略由业余人士维护的代码片段抓取网站,这些网站主要关注广告收入而不是教学,如roseindia、tutorialspoint、javabeat、journaldev、javatpoint、codejava等。它们很容易通过干扰广告链接/横幅和包含scriptlet的JSP代码片段来识别。
参见:
JSF、Servlet和JSP之间的区别是什么? servlet是如何工作的?实例化、会话、共享变量和多线程 当UI可以通过jQuery和AngularJS等JavaScript库实现时,JSF的需求是什么
java有MVC吗?
Java有不同的框架,比如Struts2, Spring MVC
JSP呢?
JSP是模板库。你可以尝试一些像FreeMarker和Velocity这样的替代品。AFAIK Freemarker是一个新兴的模板库。它比JSP轻量级。查看这个FreeMarker: JSP - JavaWorld的开放替代方案
MVC和JSP可以结合在一起吗?
我把MVC作为前面提到的一个框架。所有框架都支持JSP,但您需要在各自的框架文档中检查对其他模板库的支持。AFAIK Struts2对Freemarker有很好的支持。
豆?
我对它了解不多。但是使用bean,我们可以直接将表单数据映射到数据库。
也许是一本涵盖所有这些内容的书?
每个框架都有自己的书籍。Struts2 - Struts2在行动
字符串MVC——看看这些关于Spring和Spring MVC的推荐书籍的问题。Spring框架和Spring书籍的书籍建议:选择哪一本
Fremarker有一个非常好的文档——FreeMarker手册
对于开始使用Java进行web开发
http://www.amazon.com/SCWCD-Exam-Study-Kit-Certification/dp/1930110596