今日内容

一、Maven
二、Tomcat

一:Maven

1.1 引言

项目管理问题

项目中jar包资源越来越多,jar包的管理越来越沉重。

繁琐

要为每个项目手动导入所需的jar,需要搜集全部jar

复杂

项目中的jar如果需要版本升级,就需要再重新搜集jar

冗余

相同的jar在不同的项目中保存了多份

项目格式

没有统一

1.2 介绍

Maven这个单词来自于意第绪语(犹太语),意为知识的积累.

Maven是一个基于项目对象模型(POM)的概念的纯java开发的开源的项目管理工具。主要用来管理java项目,进行依赖管理(jar包依赖管理)和项目构建(项目编译、打包、测试、部署)。此外还能分模块开发,提高开发效率。

1.3 下载安装

网址 Maven – Download Apache Maven

下载地址 Index of /dist/maven/maven-3 (apache.org)

image-20230322172016815

1.3.1 解压

特别注意: 路径不要有中文路径

解压后有几个文件夹
- bin  运行maven命令的脚本
- boot 运行是需要类库
- conf 配置,有关于maven的配置文件
- lib  运行是需要的jar包

1.3.2 配置环境变量

系统变量创建: MAVEN_HOME 值是maven安装路径

系统变量path添加 %MAVEN_HOME%\bin

1.3.3 测试

打开cmd,输入mvn -v

1.4 仓库

maven项目管理工具,管理依赖(jar包),实现依赖的复用.


maven有仓库,将依赖放入仓库,每个项目都去复用

  • 本地仓库
    • 自己电脑上
    • 需要依赖的时候,会先从本地仓库中,如果找不到就会去中央仓库找,下载到本地仓库
  • 中央仓库
    • 位于国外服务器,包含绝大部分依赖
    • 可能有时候访问比较慢
  • 公共仓库
    • 私服(个人)
    • 阿里云,网易,等等

image-20230322172407495

1.5 Maven配置

1.5.1 修改仓库位置

maven安装好后,默认本地仓库在c盘,要修改为其他地方


修改maven的配置文件(conf\settings.xml)

<!-- 将53行注释内代码,复制出来,粘贴到55行,修改路径为自己本地仓库位置 -->
 <localRepository>D:\repository</localRepository>

ps: 记得保存,ctrl+s

1.5.2 设置镜像

依赖会先从本地仓库找,本地没有会从中央仓库下载到本地仓库,中央仓库访问很慢,所以需要设置国内镜像,访问就很快!

<!--setting.xml中添加如下配置 146行附近
 一定是在开闭标签 <mirrors> </mirrors>中间设置
-->
 <mirror>
        <id>aliyun</id>  
        <!-- 中心仓库的 mirror(镜像) -->
        <mirrorOf>central</mirrorOf>    
        <name>Nexus aliyun</name>
        <!-- aliyun仓库地址 以后所有要指向中心仓库的请求,都会指向aliyun仓库-->   
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>  
 </mirror>

二、IDEA - MAVEN

2.1 idea关联maven

  • 打开任何一个idea项目

  • file - setting fornew project

    image-20221124105909608

找到build

image-20221124110058057

image-20221124110417317

2.2 创建java项目

  1. 找到maven选项

image-20221124110734298

  1. 设置信息

image-20230322172605656

2.3 java项目结构

image-20230322172622607

|-项目名
|---src
|------main
|---------java
|---------resources
|------test
|---------java
|---------resources
|---pom.xml

2.4 pom

pom 项目对象模型,这是一个xml文件(ps: xml文件一种文件格式,类似HTML是标签形式的)

pom文件内定义

  • 项目信息
    • 项目名
    • 组织名
    • 版本
    • 打包方式
      • 默认是jar , 普通java项目
      • 可以指定为war, 即web项目
  • 项目依赖
    • 依赖就是jar包
    • 是以坐标的形式展现
  • 构建工具
    <!--  项目信息--> 
    <groupId>com.qf</groupId>
    <artifactId>day45_java</artifactId>
    <version>1.0-SNAPSHOT</version>
    <!-- 打包方式 ,默认是jar,如果是javaweb项目,打包方式是war-->
    <packaging>jar</packaging>
<!-- 依赖 -->
    <dependencies>
        <!-- 具体的jar包依赖坐标 -->
<!--        <dependency>-->
<!--            <groupId></groupId>-->
<!--            <artifactId></artifactId>-->
<!--            <version></version>-->
<!--        </dependency>-->
    </dependencies>
<!-- 构建信息 -->
<!--    <build>-->
<!--        <plugins>-->
<!--            <plugin>...</plugin>-->
<!--        </plugins>-->
<!--    </build>-->

2.5 导入依赖

2.5.1 查找依赖

官方提供一中央仓库网站,网站中有所有jar包的依赖信息,就可以搜索依赖

Maven Repository: Search/Browse/Explore (mvnrepository.com)

image-20221124113200709

image-20221124113256197

image-20221124113336192

2.5.2 使用依赖

将复制的依赖坐标,粘贴到pom文件

    <!-- 依赖,就是jar包 -->
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
    </dependencies>

image-20221124113618648

image-20221124113709676

还可以进入仓库中去查看,是否下载成功

image-20221124113901244

2.6 测试

使用之前jdbc测试

  • 使用maven创建java项目
  • 导入依赖
    • mysql驱动
    • druid.jar包
  • 编码
    • java文件夹写java代码
    • resources 文件夹写配置文件
  • 测试

image-20221124151111639

三、JavaWeb开发

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TBpdtX2H-1679553850360)(https://qiushiju-tuchuang.oss-cn-hangzhou.aliyuncs.com/image/javaweb%E5%BC%80%E5%8F%91.png)]

JavaWeb开发就是

  • 前端页面发请求
  • 后台服务器接收请求,将请求中数据发送到数据库
  • 数据库处理CRUD
  • 数据库处理完再响应给服务器
  • 服务器根据结果再响应数据到浏览器
3.1 C/S架构和B/S架构

C/S和B/S是软件发展过程中出现的两种软件架构方式。

3.2 C/S架构(Client/Server 客户端/服务器)
  • 特点:必须在客户端安装特定软件

  • 优点:图形效果显示较好(如:3D游戏),安全性相对较高,对于图形、音视频之类的网站访问效果良好

  • 缺点:服务器的软件和功能进行升级,客户端也必须升级、不利于维护

  • 常见的C/S程序:QQ、微信等

C/S架构
image-20230322173150589
1.3 B/S架构(Browser/Server 浏览器/服务器)
  • 特点:无需安装客户端,任何浏览器都可直接访问
  • 优点:涉及到功能的升级,只需要升级服务器端
  • 缺点:图形显示效果不如C/S架构,安全性相对较低
  • 需要通过HTTP协议访问
B/S架构
image-20230322173556968

四、服务器

4.1 什么是Web

Web(World Wide Web) 称为万维网,简单理解就是网站,它用来表示Internet主机上供外界访问的资源。

Internet上供外界访问的资源分为两大类

  • 静态资源:指Web页面中供人们浏览的数据始终是不变的。(HTML、CSS)

  • 动态资源:指Web页面中供人们浏览的数据是由程序产生的,不同时间点,甚至不同设备访问Web页面看到的内容各不相同。(JSP/Servlet)

  • 在Java中,动态Web资源开发技术我们统称为Java Web。

4.2 什么是Web服务器

Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络中的所有用户通过浏览器进行访问。

4.3 常见服务器

  • 开源:OpenSource(1、开放源代码 2、免费)
    • Tomcat(主流Web服务器之一,适合初学者)
    • jetty(淘宝,运行效率比Tomcat高)
    • resin(新浪,所有开源服务器软件中,运行效率最高的)
    • 三者的用法从代码角度完全相同,只有在开启、关闭服务器软件时对应的命令稍有区别。掌握一个即掌握所有
  • 收费
    • WebLogic(Oracle)
    • WebSphere(IBM)
    • 提供相应的服务与支持,软件大,耗资源

五、Tomcat

Tomcat 是Apache 软件基金会(Apache Software Foundation)下的一个核心项目,免费开源、并支持Servlet 和JSP 规范。属于轻量级应用服务器,在中小型系统并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

5.1 下载

官网 Apache Tomcat® - Welcome!

image-20221124161014616

5.2 安装

解压即可使用,特别注意,解压路径中不要有中文路径!

image-20221124161312697

bin      放tomcat运行命令
conf     配置文件
lib      运行所需库,jar包等
logs     运行日志
temp     临时文件
webapps 【重要】存放web项目的路径
work     运行时产生文件此处

5.3 启动服务器

进入安装路径的bin目录下,执行(双击)startup.bat命令

image-20221124162030294

5.4 访问服务器

服务器是在本地,所以访问ip是localhost,tomcat端口默认是8080,即完整服务器路径

http://localhost:8080/index.jsp

image-20221124162304974

5.5 关闭服务器

只需要关闭服务器黑窗口

5.6 特别说明

现在进行的操作,只是证明tomcat装好可以使用,

等后续需要idea配置tomcat进行启动,访问,停止

六、IDEA - Tomcat

IDEA关联Tomcat是要为每个web项目关联服务器

6.1 maven创建javaweb项目

6.1.1 使用模板创建【推荐】

image-20221124163159728

image-20221124163256132

模板创建并不完整

image-20221124164022334

手动补全目录

补上src/test目录

image-20221124164149737

image-20221124164200066

补上src/main/java目录

image-20221124164304380

补上src/main/resources目录

图略

完整结构如下

image-20221124164424614

6.1.2 不使用模板

这种方式是纯手动改造java项目为javaweb项目

image-20221124165808463

image-20221124165845936





手动创建webapp目录,并在在webapp目录下创建WEB-INF目录,并在其下创建web.xml文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">

</web-app>

最后,在webapp目录下,创建一个index.jsp文件(jsp文件,理解为html)

image-20221124170408237





在项目结构(project structure)中配置该webapp路径

image-20221124170638574

image-20221124171006193

6.2 web项目设置Tomcat(部署项目)

image-20221124171433551

image-20221124171633043

image-20221124171901517

image-20221124171913608

image-20221124171958130

今日内容

一、Maven
二、Tomcat

一:Maven

1.1 引言

项目管理问题

项目中jar包资源越来越多,jar包的管理越来越沉重。

繁琐

要为每个项目手动导入所需的jar,需要搜集全部jar

复杂

项目中的jar如果需要版本升级,就需要再重新搜集jar

冗余

相同的jar在不同的项目中保存了多份

项目格式

没有统一

1.2 介绍

Maven这个单词来自于意第绪语(犹太语),意为知识的积累.

Maven是一个基于项目对象模型(POM)的概念的纯java开发的开源的项目管理工具。主要用来管理java项目,进行依赖管理(jar包依赖管理)和项目构建(项目编译、打包、测试、部署)。此外还能分模块开发,提高开发效率。

1.3 下载安装

网址 Maven – Download Apache Maven

下载地址 Index of /dist/maven/maven-3 (apache.org)

image-20230322172016815

1.3.1 解压

特别注意: 路径不要有中文路径

解压后有几个文件夹
- bin  运行maven命令的脚本
- boot 运行是需要类库
- conf 配置,有关于maven的配置文件
- lib  运行是需要的jar包

1.3.2 配置环境变量

系统变量创建: MAVEN_HOME 值是maven安装路径

系统变量path添加 %MAVEN_HOME%\bin

1.3.3 测试

打开cmd,输入mvn -v

1.4 仓库

maven项目管理工具,管理依赖(jar包),实现依赖的复用.


maven有仓库,将依赖放入仓库,每个项目都去复用

  • 本地仓库
    • 自己电脑上
    • 需要依赖的时候,会先从本地仓库中,如果找不到就会去中央仓库找,下载到本地仓库
  • 中央仓库
    • 位于国外服务器,包含绝大部分依赖
    • 可能有时候访问比较慢
  • 公共仓库
    • 私服(个人)
    • 阿里云,网易,等等

image-20230322172407495

1.5 Maven配置

1.5.1 修改仓库位置

maven安装好后,默认本地仓库在c盘,要修改为其他地方


修改maven的配置文件(conf\settings.xml)

<!-- 将53行注释内代码,复制出来,粘贴到55行,修改路径为自己本地仓库位置 -->
 <localRepository>D:\repository</localRepository>

ps: 记得保存,ctrl+s

1.5.2 设置镜像

依赖会先从本地仓库找,本地没有会从中央仓库下载到本地仓库,中央仓库访问很慢,所以需要设置国内镜像,访问就很快!

<!--setting.xml中添加如下配置 146行附近
 一定是在开闭标签 <mirrors> </mirrors>中间设置
-->
 <mirror>
        <id>aliyun</id>  
        <!-- 中心仓库的 mirror(镜像) -->
        <mirrorOf>central</mirrorOf>    
        <name>Nexus aliyun</name>
        <!-- aliyun仓库地址 以后所有要指向中心仓库的请求,都会指向aliyun仓库-->   
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>  
 </mirror>

二、IDEA - MAVEN

2.1 idea关联maven

  • 打开任何一个idea项目

  • file - setting fornew project

    image-20221124105909608

找到build

image-20221124110058057

image-20221124110417317

2.2 创建java项目

  1. 找到maven选项

image-20221124110734298

  1. 设置信息

image-20230322172605656

2.3 java项目结构

image-20230322172622607

|-项目名
|---src
|------main
|---------java
|---------resources
|------test
|---------java
|---------resources
|---pom.xml

2.4 pom

pom 项目对象模型,这是一个xml文件(ps: xml文件一种文件格式,类似HTML是标签形式的)

pom文件内定义

  • 项目信息
    • 项目名
    • 组织名
    • 版本
    • 打包方式
      • 默认是jar , 普通java项目
      • 可以指定为war, 即web项目
  • 项目依赖
    • 依赖就是jar包
    • 是以坐标的形式展现
  • 构建工具
    <!--  项目信息--> 
    <groupId>com.qf</groupId>
    <artifactId>day45_java</artifactId>
    <version>1.0-SNAPSHOT</version>
    <!-- 打包方式 ,默认是jar,如果是javaweb项目,打包方式是war-->
    <packaging>jar</packaging>
<!-- 依赖 -->
    <dependencies>
        <!-- 具体的jar包依赖坐标 -->
<!--        <dependency>-->
<!--            <groupId></groupId>-->
<!--            <artifactId></artifactId>-->
<!--            <version></version>-->
<!--        </dependency>-->
    </dependencies>
<!-- 构建信息 -->
<!--    <build>-->
<!--        <plugins>-->
<!--            <plugin>...</plugin>-->
<!--        </plugins>-->
<!--    </build>-->

2.5 导入依赖

2.5.1 查找依赖

官方提供一中央仓库网站,网站中有所有jar包的依赖信息,就可以搜索依赖

Maven Repository: Search/Browse/Explore (mvnrepository.com)

image-20221124113200709

image-20221124113256197

image-20221124113336192

2.5.2 使用依赖

将复制的依赖坐标,粘贴到pom文件

    <!-- 依赖,就是jar包 -->
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
    </dependencies>

image-20221124113618648

image-20221124113709676

还可以进入仓库中去查看,是否下载成功

image-20221124113901244

2.6 测试

使用之前jdbc测试

  • 使用maven创建java项目
  • 导入依赖
    • mysql驱动
    • druid.jar包
  • 编码
    • java文件夹写java代码
    • resources 文件夹写配置文件
  • 测试

image-20221124151111639

三、JavaWeb开发

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JC1WD2vK-1679553897202)(https://qiushiju-tuchuang.oss-cn-hangzhou.aliyuncs.com/image/javaweb%E5%BC%80%E5%8F%91.png)]

JavaWeb开发就是

  • 前端页面发请求
  • 后台服务器接收请求,将请求中数据发送到数据库
  • 数据库处理CRUD
  • 数据库处理完再响应给服务器
  • 服务器根据结果再响应数据到浏览器
3.1 C/S架构和B/S架构

C/S和B/S是软件发展过程中出现的两种软件架构方式。

3.2 C/S架构(Client/Server 客户端/服务器)
  • 特点:必须在客户端安装特定软件

  • 优点:图形效果显示较好(如:3D游戏),安全性相对较高,对于图形、音视频之类的网站访问效果良好

  • 缺点:服务器的软件和功能进行升级,客户端也必须升级、不利于维护

  • 常见的C/S程序:QQ、微信等

C/S架构
image-20230322173150589
1.3 B/S架构(Browser/Server 浏览器/服务器)
  • 特点:无需安装客户端,任何浏览器都可直接访问
  • 优点:涉及到功能的升级,只需要升级服务器端
  • 缺点:图形显示效果不如C/S架构,安全性相对较低
  • 需要通过HTTP协议访问
B/S架构
image-20230322173556968

四、服务器

4.1 什么是Web

Web(World Wide Web) 称为万维网,简单理解就是网站,它用来表示Internet主机上供外界访问的资源。

Internet上供外界访问的资源分为两大类

  • 静态资源:指Web页面中供人们浏览的数据始终是不变的。(HTML、CSS)

  • 动态资源:指Web页面中供人们浏览的数据是由程序产生的,不同时间点,甚至不同设备访问Web页面看到的内容各不相同。(JSP/Servlet)

  • 在Java中,动态Web资源开发技术我们统称为Java Web。

4.2 什么是Web服务器

Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络中的所有用户通过浏览器进行访问。

4.3 常见服务器

  • 开源:OpenSource(1、开放源代码 2、免费)
    • Tomcat(主流Web服务器之一,适合初学者)
    • jetty(淘宝,运行效率比Tomcat高)
    • resin(新浪,所有开源服务器软件中,运行效率最高的)
    • 三者的用法从代码角度完全相同,只有在开启、关闭服务器软件时对应的命令稍有区别。掌握一个即掌握所有
  • 收费
    • WebLogic(Oracle)
    • WebSphere(IBM)
    • 提供相应的服务与支持,软件大,耗资源

五、Tomcat

Tomcat 是Apache 软件基金会(Apache Software Foundation)下的一个核心项目,免费开源、并支持Servlet 和JSP 规范。属于轻量级应用服务器,在中小型系统并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

5.1 下载

官网 Apache Tomcat® - Welcome!

image-20221124161014616

5.2 安装

解压即可使用,特别注意,解压路径中不要有中文路径!

image-20221124161312697

bin      放tomcat运行命令
conf     配置文件
lib      运行所需库,jar包等
logs     运行日志
temp     临时文件
webapps 【重要】存放web项目的路径
work     运行时产生文件此处

5.3 启动服务器

进入安装路径的bin目录下,执行(双击)startup.bat命令

image-20221124162030294

5.4 访问服务器

服务器是在本地,所以访问ip是localhost,tomcat端口默认是8080,即完整服务器路径

http://localhost:8080/index.jsp

image-20221124162304974

5.5 关闭服务器

只需要关闭服务器黑窗口

5.6 特别说明

现在进行的操作,只是证明tomcat装好可以使用,

等后续需要idea配置tomcat进行启动,访问,停止

六、IDEA - Tomcat

IDEA关联Tomcat是要为每个web项目关联服务器

6.1 maven创建javaweb项目

6.1.1 使用模板创建【推荐】

image-20221124163159728

image-20221124163256132

模板创建并不完整

image-20221124164022334

手动补全目录

补上src/test目录

image-20221124164149737

image-20221124164200066

补上src/main/java目录

image-20221124164304380

补上src/main/resources目录

图略

完整结构如下

image-20221124164424614

6.1.2 不使用模板

这种方式是纯手动改造java项目为javaweb项目

image-20221124165808463

image-20221124165845936





手动创建webapp目录,并在在webapp目录下创建WEB-INF目录,并在其下创建web.xml文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">

</web-app>

最后,在webapp目录下,创建一个index.jsp文件(jsp文件,理解为html)

image-20221124170408237





在项目结构(project structure)中配置该webapp路径

image-20221124170638574

image-20221124171006193

6.2 web项目设置Tomcat(部署项目)

image-20221124171433551

image-20221124171633043

image-20221124171901517

image-20221124171913608

image-20221124171958130
请添加图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐