Java Web Application开发

1 下载需要的软件

使用的软件并没有采用最新的版本,只是采用了次新版本。

1.1 下载Eclipse的jee版本

eclipse-jee-luna-SR2-macosx-cocoa-x86_64.tar.gz

http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/luna/SR2/eclipse-jee-luna-SR2-macosx-cocoa-x86_64.tar.gz

1.2 下载JDK 7.0

jdk-7u79-macosx-x64.dmg

http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7-downloads-1880260.html

1.3 下载Tomcat 7.0

apache-tomcat-7.0.63.zip

http://tomcat.apache.org/download-70.cgi

1.4 下载tomcatPluginV331.zip

http://www.eclipsetotale.com/tomcatPlugin.html

2 安装开发环境

2.1 安装JDK

双击 jdk-7u79-macosx-x64.dmg,然后step by step。

2.2 安装Tomcat

Ref[3.1]

A: 解压apache-tomcat-7.0.63.zip 到目录 ~/Downloads/apache-tomcat-7.0.63

B: 运行以下命令

sudo mkdir -p /usr/local
sudo mv ~/Downloads/apache-tomcat-7.0.63 /usr/local

C: 运行以下命令

sudo rm -f /Library/Tomcat
sudo ln -s /usr/local/apache-tomcat-7.0.63  /Library/Tomcat

D: 运行以下命令

sudo chown -R <your_username> /Library/Tomcat

sudo chmod u+x /Library/Tomcat/bin/*.sh

E: 运行以下命令,启动和关闭Tomcat Server

/Library/Tomcat/bin/startup.sh

/Library/Tomcat/bin/shutdown.sh

2.3 安装Eclipse

将eclipse-jee-luna-SR2-macosx-cocoa-x86_64.tar.gz解压到 ~/your-dev-tools-path/eclipse-jee-luan

2.4 安装tomcatPluginV331.zip  (Sysdeo Eclipse Tomcat Launcher plugin)

解压tomcatPluginV331.zip得到com.sysdeo.eclipse.tomcat_3.3.1.jar,将该jar包复制到 ~/your-dev-tools-path/eclipse-jee-luan/dropins/ 目录下。

2.5 启动Eclipse,此时在其工具栏上会出现。 Figure-1: Tomcat Icon in Tool Bar

2.6 配置Eclipse,首先检查JRE是否设置好,如Figure-2:JRE for Eclipse

2.7 Web应用服务器的配置

Figure-3: Server Runtime Environments

2.8 为Tomcat进行配置

Figure-4: Tomcat Configuration

Q: Context declaration mode: Server.xml 和 Context files的区别是什么呢?

2.9 到此整个配置过程结束

点击工具条(Figure-1)中Tomcat Logo启动Tomcat Server。

在Eclpise中的Console中,会有下输出, Figure-5 Output in Console

在浏览器中输出:http://localhost:8080/, 来验证Tomcat Server是否已被正确启动。

3 创建Web Application Project

3.1 Tomcat Project

Ref[5]

Eclipse中,File->New->Project...->Java->Tomcat Project, 然后点击Next, Figure-6: New Tomcat Project

Demo:

3.2 Dynamic Web Project

4 导入Web Application Project

File->Import...->General->Existing Project into Workspace

Figure-7: Import Existing Project into Workspace

5. 如何调试 Web Application Project

Ref[7]

6. 打包部署Web Application Project

6.1 在Eclipse中打包Web Application Project 为war文件

Ref[10]

关于war文件的说明:

"In Java enterprise development, WAR (Web ARchive) is the standard container file format for

packaging Java EE applications as a single, deployable unit which can be deployed on Java EE-compliant

application servers like Tomcat, JBoss, Glassfish..." Ref[10]

6.2 部署war文件到tomcat server

Ref[12]

A): 将war文件拷贝到$CATALINA_HOME\webapps目录下。

B): 如果tomcat server在运行中, 将tomcat停下来。删除由原来war解压得到的目录。

C): 启动tomcat server。

7. 用配置项来替代Web Application中hardcode的路径等

Ref[11]

用配置文件中配置项来替代Web Application中JSP/Servlet中hardcode的路径等信息。


Reference

1. Java Web开发环境的搭建(JDK+Eclipse+Tomcat)(Windows版本)

http://blog.csdn.net/zhugexubin/article/details/41726587

2. Eclipse导出war包

3. 安装Tomcat for Mac OS X

3.1 https://wolfpaulus.com/jounal/mac/tomcat7/

3.2 https://wolfpaulus.com/jounal/mac/tomcat8/

4. Sysdeo Eclipse Tomcat Launcher plugin

http://www.eclipsetotale.com/tomcatPlugin.html

5. 整合Eclipse与Tomcat开发第一个WEB程序

http://lixiyu.blog.51cto.com/4136883/1346681

参考创建Web App部分。

6. myeclipse 和 eclipse ide for javaee 下的java web项目目录结构对比

创建Web Project的步骤:

File->New->Project...->Web->

Dynamic Web Project

Static Web Project

Web Fragment Project

7. 详解Eclipse Dynamic Web Project

http://blog.csdn.net/jbjwpzyl3611421/article/details/13297483

参考 "4. 如何建一个Server" 和 "5.如何建立一个Dynamic Web Project,以及如何调试"。

8. Creating a Dynamic Web Project in Eclipse

http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.stardust.docs.wst%2Fhtml%2Fwst-integration%2Fdynamic-web-proj.html

9. JNDI Datasource HOW-TO

https://tomcat.apache.org/tomcat-7.0-doc/jndi-datasource-examples-howto.html

关于"java:comp/env/jdbc/mysql"

Q: tomcat是如何通过"java:comp/env/jdbc/mysql"来链接上具体的MySQL Server Instance呢?

 import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource; ..... DataSource dataSource = null;
InitialContext ctx;
dataSource = (DataSource)ctx.lookup("java:comp/env/jdbc/mysql");

10. Eclipse: Create deployable WAR file for Java web application

http://www.codejava.net/ides/eclipse/eclipse-create-deployable-war-file-for-java-web-application

11. 解压war文件,修改其中的文件,然后再压缩为war文件

11.1 Where to place and how to read properties files in a JSP/Servlet web application?

http://stackoverflow.com/questions/2161054/where-to-place-and-how-to-read-properties-files-in-a-jsp-servlet-web-application

11.2 How to unpackage and repackage a WAR file

http://stackoverflow.com/questions/19269961/how-to-unpackage-and-repackage-a-war-file

11.3 "解压war文件,修改其中的文件,然后再压缩为war文件" 是否可行?

http://www.coderanch.com/t/565599/tools/Manually-adding-java-class-files

12. How to deploy a Java web application on Tomcat

http://www.codejava.net/servers/tomcat/how-to-deploy-a-java-web-application-on-tomcat

13. Dynamic Web projects and applications (AAAA+)

http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.wst.webtools.doc.user%2Ftopics%2Fccwebprj.html

讲解了 Dynamic Web Project的工程目录结构,以及目录各自的作用。

14. Java Util Logging Behaviour in Tomcat

http://app-inf.blogspot.tw/2012/10/java-util-logging-behaviour-in-tomcat.html


Todo

Q: Web Project vs. Tomcat Project的区别是什么呢?

Java.web-application-development-environments-for-macosx的更多相关文章

  1. ThreadLocal Memory Leak in Java web application - Tomcat

    ThreadLocal variables are infamous for creating memory leaks. A memory leak in Java is amount of mem ...

  2. Mastering Web Application Development with AngularJS 读书笔记-前记

    学习AngularJS的笔记,这个是英文版的,有些地方翻译的很随意,做的笔记不是很详细,用来自勉.觉得写下来要比看能理解的更深入点.有理解不对的地方还请前辈们纠正! 一.关于<Mastering ...

  3. WEB Application Development Integrator : 应用设置

    1.1.       系统安装 应用 Oracle EBS WEB Application Development Integrator WEB ADI在Oracle EBS 11.5.10.* 版本 ...

  4. Java Web Application使Session永不失效(利用cookie隐藏登录)

    在做 Web Application 时,因为 Web Project 有 session 自动失效的问题,所以如何让用户登录一次系统就能长时间运行三个月,就是个问题. 后来,看到 session 失 ...

  5. A candidate solution for Java Web Application - current session

    Motivation Do it once, resue for ever. Audience myself, Java Web developers Scope 应用案例 图书借阅系统 阶段1需求: ...

  6. Centos + nginx + JBOSS AS 7 搭建Java web application

    最近做了一个Java的web app,一直想在Centos环境中搭建一个完整的web服务器,现在开始动手. 先说说环境: 操作系统: Centos 6.3 WEB服务器: nginx-1.2.5 Ap ...

  7. Java web application——基础

    概述 一个WAR文件包含了构成一个Web应用程序所需要的文件.WAR文件作为一个单元部署在一个或多个WebLogic Server实例上. WebLogic Server上的Web存档始终包含以下文件 ...

  8. Java Web Application——servlet

    概述 是一个部署于web服务器中的实现了servlet接口的Java类,用于响应web请求 Web容器(也称为servlet容器)本质上是与servlet交互的Web服务器的组件.Web容器负责管理s ...

  9. Mastering Web Application Development with AngularJS 读书笔记(三)

    第一章笔记 (三) 一.Factories factory 方法是创建对象的另一种方式,与service相比更灵活,因为可以注册可任何任意对象创造功能.例如: myMod.factory('notif ...

  10. Java web application——Listener

    应用程序事件提供ServletContext和HttpSession以及ServletRequest对象状态更改的通知,用户编写响应状态更改的事件监听器类,并配置和部署他们.Servlet容器会调用事 ...

随机推荐

  1. 【solr】java整合solr5.0之solrj的使用

    1.首先导入solrj需要的的架包 2.需要注意的是低版本是solr是使用SolrServer进行URL实例的,5.0之后已经使用SolrClient替代这个类了,在添加之后首先我们需要根据schem ...

  2. Unity3D外包

    北京动点软件长年承接Unity3D(U3D外包)项目,我们制作各类型VR/AR游戏,虚拟现实,增强现实项目! 品质保证,售后完备. 联系请加QQ:372900288  电话:13911652504 我 ...

  3. javascript性能优化总结一(转载人家)

    一直在学习javascript,也有看过<犀利开发Jquery内核详解与实践>,对这本书的评价只有两个字犀利,可能是对javascript理解的还不够透彻异或是自己太笨,更多的是自己不擅于 ...

  4. ruby md5加签验签方法

    # md5签名def md5_sign(data,key) return OpenSSL::Digest::MD5.hexdigest(data+key)end # md5验签def md5_veri ...

  5. 【Linux】浅谈I/O模型

    关于I/O模型的引出 我们都知道,为了OS的安全性等的考虑,进程是无法直接操作I/O设备的,其必须通过系统调用请求内核来协助完成I/O动作,而内核会为每个I/O设备维护一个buffer. 如下图所示: ...

  6. Win32程序和控制台应用程序的项目互转设置

    一般情况下,如果是windows程序,那么WinMain是入口函数,在VS2010中新建项目为"win32项目" 如果是dos控制台程序,那么main是入口函数,在VS2010中新 ...

  7. C++中引用的本质

    一般的教材上讲到引用时,都是说"引用是对象的一个别名".我认为这种定义是不清晰的,不利于初学者理解引用.至少我自己曾经被这个定义困扰了一段时间.到底什么是"别名" ...

  8. ECSHOP通过改变模板路径制作手机站

    ECSHOP通过改变模板路径制作手机站 前提:不使用ECSHOP自带的mobile目录程序来制作手机站. 目的:手机站做成自动识别,通过改变模板路径来显示PC站或手机站. 待续

  9. 开源是一种态度、分享是一种精神 — FirApi发布、WeiXinApi更新

    在云计算盛行的年代,接触开发式的平台必不可少,因项目累积的代码也不少,之前本着"重复的事情自己做一次就够了,不需要其他人在重复为此工作."的想法发布了WeiXinApi.Boots ...

  10. string.Format之你不知道的事

    1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...