Java Web编程

文章目录

  • Maven
    • 介绍
    • 安装
    • 坐标
    • 出错解决
    • 工程结构
  • Tomcat
    • 安装
    • 配置文件
    • 目录结构
    • 打包war
    • 整合eclipse

Maven

介绍

Maven: 翻译为"专家"、“内行”,是Apache下的一个纯Java开发的一个开源项目。
Maven是一个项目管理工具,使用Maven可以来管理企业级的Java项目开发及依赖的管理。
使用Maven开发,可以简化项目配置,统一项目结构。对项目中所有依赖的jar包进行规范化管理。

  • maven优势
    (1)Maven团队维护了一个非常全的Maven仓库(中央仓库),其中几乎包含了所有的jar包,使用Maven创建的工程可以自动到Maven仓库中下载jar包,方便且不易出错。
    另外, 在Maven构建的项目中,如果要使用到一些框架,我们只需要引入框架的核心jar包,框架所依赖的其他第三方jar包,Maven也会一并去下载。
    (2)在Maven构建的项目中,不会将项目所依赖的jar包拷贝到每一个项目中,而是将jar包统一放在仓库中管理,在项目中只需要引入jar包的位置(坐标)即可。这样实现了jar包的复用。
    (3)Maven采用坐标来管理仓库中的jar包,其中的目录结构为【公司名称+项目/产品名称+版本号】,可以根据坐标定位到具体的jar包。即使使用不同公司中同名的jar包,坐标不同(目录结构不同),文件名也不会冲突。
    (4)Maven构建的项目中,通过pom文件对项目中所依赖的jar包及版本进行统一管理,可避免版本冲突。
    (5)在Maven项目中,通过一个命令或者一键就可以实现项目的编译(mvn complie)、测试(mvn test)、打包部署(mvn deploy)、运行(mvn install)等。
    还有发布到tomcat服务器中运行: mvn tomcat7:run。如果想实现上面的所有过程,只需要记住一个命令:mvn install
    总之,使用Maven遵循规范开发有利于提高大型团队的开发效率,降低项目的维护成本,大公司都会优先使用Maven来构建项目.

安装

  • 下载:http://maven.apache.org/download.cgi
  • 相关配置
  1. 本地仓库配置:网络上下载下来的jar包也会存放在本地仓库中。因此本地仓库其实就是一个jar包的仓库
默认位置:C:\Users\{当前用户}\.m2\repository
修改位置:MAVEN_HOME]/conf/目录中的配置文件settings.xml第五十三行
  1. 镜像仓库配置:maven项目中需要依赖jar包时,只需要在项目的pom文件中添加jar对应的坐标,Maven就会到Maven的本地仓库中引用相应的jar包,如果本地仓库没有,就会到远程仓库去下载jar包。
默认连接的是国外中央仓库,效率低
修改:settings文件中mirror标签配置私服服务器

<mirror> #阿里镜像
    <id>nexus-aliyun</id>  
    <name>Nexus aliyun</name>  
    <mirrorOf>central</mirrorOf>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url> 
</mirror>
  1. Eclipse配置:将Maven工具配置到Eclipse中,就可以通过Eclipse和自己安装的Maven创建Maven项目了(windows)
window-preferences-Maven-Download Artifact Sources(一并下源码)
window-preferences-Maven-Installations-Add(本地maven主目录)//不要中文或者空格路径
window-preferences-Maven-Use Settings(上两个是settings.xml路径,下面是本地仓库地址)

检测:window---> show view ---> other中搜索 "maven"-->Maven Repositories

Java Web编程_第1张图片

坐标

Java Web编程_第2张图片

(1)Group Id -- 组的名称,通常填写公司名称(比如 com.tedu)或者组织名称(org.apache..)
(2)Artifact Id -- 项目名称或者模块名称
(3)Version -- 项目的版本,创建的项目默认是0.0.1-SNAPSHOT 快照,也叫非正式版,正式版是RELEASE)
(4)Package -- 项目的类型: jar表示创建的是Java工程,war表示创建的是web工程,pom表示创建的是父工程(当然相对的还有子工程)或者聚合工程,pom目前我们不讨论。
  • 依赖管理
    在Maven创建的项目中,如果需要引用jar包,只需要在项目的pom.xml文件中添加jar包的坐标(GroupID + ArtifactID + Version)即可将jar包引进项目中,之后就可以在项目中使用所引入的jar包了。
<dependency>
	<groupId>javax.servlet</groupId>
	<artifactId>servlet-api</artifactId>
	<version>2.5</version> 
	<scope>provided</scope>
</dependency>

出错解决

如果引入的jar包,在本地仓库中存在,但是还是提示找不到,可以将本地仓库中jar包或插件的所在目录整个删除(如果删除时提示文件正在被占用,关闭eclipse再删除即可),重新保存pom.xml文件,并更新工程,让maven再次下载上面的jar包即可!

工程结构

1)/src/main/java -- 主目录下的Java目录,用于存放项目中的.java文件
2)/src/main/resources – 主目下的资源目录,存放项目中的资源文件(如框架的配置文件)
3)/src/test/java -- 测试目录下的Java目录,用于存放所有单元测试类的.java文件,如Junit测试类
4)/src/test/resources – 测试目录下的资源目录,用于存放测试类所需资源文件(如框架的配置文件)
5)/target -- 项目输出目录,编译后的class文件、及项目打成的war包等会输出到此目录中
6)/pom.xml -- maven项目的核心配置文件,文件中通过坐标来管理项目中的所有jar包和插件。

Tomcat

  • tomcat是一个web服务器,是由apache组织提供的一款服务器软件,特点是小巧灵活,开源免费。
  1. Web服务器是指,运行在互联网上的计算机程序,专门用于接收客户端浏览器的请求,并对请求进行处理,最终做出响应给浏览器。
  2. Web服务器是指驻留于因特网上某种类型计算机的程序。当浏览器(客户端)连接到服务器,请求服务器上的文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。

安装

下载:http://tomcat.apache.org/
需JAVA环境,在tomcat主目录下启动

通过[tomcat_home]/bin/startup.bat启动tomcat
通过[tomcat_home]/bin/shutdown.bat关闭tomcat

测试: 通过访问 http://localhost:8080 如果能够看到tomcat的首页就证明tomcat安装配置成功

Java Web编程_第3张图片

配置文件

  • 端口号
默认端口号8080,在conf/server.xml中修改69行的port属性
虚拟主机:tomcat服务器中配置的一个站点,访问时感觉在访问一台独立主机一样。可配置多个,例如如下一图的localhost,它发布项目的base包为webapps
web应用:web应用简单理解就是一个目录(下图webapps),在这个目录中可以存放很多资源文件(比如:html/css/js/图片/jsp/servlet等。可在网页上输入资源路径访问到)

在这里插入图片描述

目录结构

Java Web编程_第4张图片

bin:存放的是tomcat服务器中可执行的批处理文件(Windows中是.bat文件)
conf:tomcat配置文件所在的目录,其中server.xml是tomcat的核心配置文件
lib:tomcat运行时所依赖的jar包存放的目录(例如servlet的jar包、JSP的jar包).
logs:tomcat日志文件所在的目录
temp:tomcat运行时产生的临时文件存放的目录,tomcat服务器会自己管理
webapps:是localhost虚拟主机管理的目录,放在这个目录下的web应用可以通过浏览器访问localhost主机来访问
-- 简单说,webapps目录就是服务器资源的存放目录,我们可以将一些网页(html,css,js)或图片等资源放在该目录下,让外界通过浏览器来访问(浏览器通过IP地址/该目录下的资源名来访问这些文件资源)
work:tomcat运行时产生的工作文件存放目录(JSP翻译后的servlet文件、session序列化后的文件等),是tomcat的工作目录
  • web应用目录结构(news这个web应用部署到虚拟主机管理的webapps目录下)
    Java Web编程_第5张图片
news -- Web应用(目录)
|
|-- WEB-INF以外的目录:静态web资源(htmlcssjs),jsp,图片、servlet等 直接放在WEB-INF以外的目录下,可以通过浏览器直接访问
|-- WEB-INF目录:放在这个目录中的资源将被保护起来,浏览器不能直接访问
		|--classes:用来存放动态web资源(Servlet/jsp)中编译后的class文件
		|--lib:用来存放动态web资源资源(Servlet/jsp)所依赖的一些jar包
		|--web.xml:当前web应用的核心的配置文件,web应用的很多配置操作都需要在这个文件中进行
  • 扩展:缺省路径
  1. 在访问服务器中的WEB应用下的资源时, 如果不想写WEB应用的虚拟目录的名称, 可以将当前WEB应用配置为缺省的WEB应用.配置方式是将WEB应用的虚拟目录名称改为ROOT(大写)即可!!
    Java Web编程_第6张图片
  2. 如果在访问WEB应用下某一个资源时(比如1.html),不想书写资源的路径,可以将这个资源页配置为WEB应用的主页,在访问时就可以省略该资源的路径。
    配置方式为: 在WEB应用的web.xml文件中, 添加如下配置:
    在这里插入图片描述
  3. 如果访问路径中不想写端口号,则在/conf/server.xml第69行将8080改为80
    在这里插入图片描述

打包war

所谓的war包其实就是一种压缩包, 就像jar包、zip包和rar包一样
可以将开发好的Web应用中的所有文件打成一个war包, 好处:

(1)war包也是压缩包, 压缩之后, 文件的整体体积会减少
(2)将整个Web应用中的所有文件打成一个war文件, 便于传输
(3)将war文件部署到虚拟主机中, 会自动解压发布

打war包的方式: 进入应用的目录,用压缩工具打成 xxx.zip包,然后把后缀名zip改为war即可;
(1)打包成war包的名字不能是中文的,且不能和已发布的资源重名!
(2)War包中不能包含中文的文件或者目录(如果出现这两点问题,打好的war包复制到web应用下不会自动解压)

整合eclipse

window-preferences-service-runtime environments(add 选择相应版本导入tomcat包)
2: 给单个项目添加tomcat运行环境(依赖中Apache Tomcat V8.0)
2.1在项目上右键:properties-targeted Runtimes(选中第一步配置好的tomcat)
2.2在项目上右键:build path--add Libraries--Server Runtime --选中第一步配置好的服务器
3: 部署并运行tomcat里发布的web应用
show View-other-Server(add tomcat)-add and remove(add项目)

你可能感兴趣的:(SSM)