javaweb---maventomcat使用教程

文章目录

  • 今日内容
  • 0 复习昨日
  • 1 Maven
    • 1.0 引言
    • 1.1 介绍
    • 1.2 下载
    • 1.3 安装
      • 1.3.1 解压
      • 1.3.2 配置环境变量
      • 1.3.3 测试
    • 1.4 仓库
    • 1.5 Maven配置
      • 1.5.1 修改仓库位置
      • 1.5.2 设置镜像
  • 2 IDEA - MAVEN
    • 2.1 idea关联maven
    • 2.2 创建java项目
    • 2.3 java项目结构
    • 2.4 pom
    • 2.5 导入依赖
      • 2.5.1 查找依赖
      • 2.5.2 使用依赖
    • 2.6 测试
  • 3 JavaWeb
  • 4 服务器
  • 5 Tomcat
    • 5.1 下载
    • 5.2 安装
    • 5.3 启动服务器
    • 5.4 访问服务器
    • 5.5 关闭服务器
    • 5.6 特别说明
  • 6 IDEA - Tomcat
    • 6.1 maven创建javaweb项目
      • 6.1.1 使用模板创建【推荐】
        • 模板创建并不完整
        • 手动补全目录
      • 6.1.2 不使用模板创建javaweb项目
      • 6.1.3 不使用模板,也不使用框架支持
    • 6.2 web项目设置Tomcat(部署项目)
  • 7 总结

今日内容

0 复习昨日

1 maven

2 tomcat

3 创建项目

0 复习昨日

1 单词写5遍
argument 参数 parameter 参数 access 访问 field 字段 invoke 调用 illegal 非法

invalid 无效 column 列 property 属性 DataSource 数据源

2 数据库连接池有啥好处

3 获得字节码文件的方式
Class.forName(“”)
Xxx.class
对象.getClass()

4 封装
隐藏实现的细节,对外提供访问的方法
方法的封装
类的封装
工具类的封装

继承

多态
方法的参数列表是父类
抽象
接口

1 Maven

1.0 引言

之前写项目时,会有不同的问题

  • jar包 管理(项目中有很多jar包)
    • 需要自己找jar包,下载
    • 手动导入项目中
    • jar包版本更新…
    • 占磁盘空间
    • 重复量大
  • 项目结构不规范
    • java代码和配置文件位置不规范

1.1 介绍

项目管理工具,统一项目结构,配置文件,依赖,部署,测试等等


Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目中共享JARs。

1.2 下载

网址 Maven – Download Apache Maven

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

1.3 安装

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有仓库,将依赖放入仓库,每个项目都去复用

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

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>

2 IDEA - MAVEN

2.1 idea关联maven

  • 打开任何一个idea项目

  • file - setting fornew project

在这里插入图片描述

找到build

在这里插入图片描述

在这里插入图片描述

2.2 创建java项目

  1. 找到maven选项
    在这里插入图片描述

  2. 设置信息

在这里插入图片描述

2.3 java项目结构

在这里插入图片描述

|-项目名
|---src
|------main
|---------java
|---------resources
|------test
|----------java
|---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)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.5.2 使用依赖

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

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

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述

2.6 测试

使用之前jdbc测试

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

3 JavaWeb

JavaWeb开发就是

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

项目开发的架构

  • C/S (Client / Server)
    • 必须要开发客户端软件(QQ,微信,钉钉,LOL…)
    • 优点: 性能好(画质,交互,流程度),安全度高
    • 一般用于游戏/音视频软件
    • 缺点: 软件更新维护升级很麻烦
  • B/S (Browser / Server)
    • 只需要一个浏览器
    • 一般用于功能不复杂,比如微博/淘宝/京东
    • 优点: 更新维护只需重启服务器
    • 缺点: 图形显示,流畅度,安全性相对比较低
    • 目前我们学习Java是为了开发B/S架构的项目

在这里插入图片描述

4 服务器

服务器也称为web服务器,是运行及发布web应用的容器.

只有将开发的项目放到服务器中,才可以通过http请求访问到数据.

常见的web服务器

  • Tomcat 主流,免费,并发量500左右
  • Jetty 效率会比Tomcat高,淘宝用的就这个
  • Resin 新浪在用
  • WebLogic
  • Apache

5 Tomcat

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

5.1 下载

官网 Apache Tomcat® - Welcome!

在这里插入图片描述

5.2 安装

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

在这里插入图片描述

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

5.3 启动服务器

进入安装路径的bin目录下,执行(双击)startup.bat命令
在这里插入图片描述

5.4 访问服务器

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

http://localhost:8080/index.jsp

在这里插入图片描述

5.5 关闭服务器

只需要关闭服务器黑窗口

5.6 特别说明

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

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

6 IDEA - Tomcat

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

6.1 maven创建javaweb项目

6.1.1 使用模板创建【推荐】

在这里插入图片描述
在这里插入图片描述

模板创建并不完整

在这里插入图片描述

手动补全目录

补上src/test目录

在这里插入图片描述

在这里插入图片描述

补上src/main/java目录

在这里插入图片描述

补上src/main/resources目录

图略

完整结构如下
在这里插入图片描述

6.1.2 不使用模板创建javaweb项目

像创建java项目一样,创建javaweb项目

在这里插入图片描述
在这里插入图片描述

这样创建出的是java项目,改造成javaweb项目

在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

但是这样创建的web文件夹位置跟maven规范的不一致

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这样不推荐

6.1.3 不使用模板,也不使用框架支持

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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传





手动创建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)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传





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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

7 总结

1 要会使用maven创建java项目javaweb项目
2 项目的目录结构要能手写
3 会导入依赖,检查依赖
4 会创建javaweb项目,并配置Tomcat,并启动
5 写之前布置SQL题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/180328.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

氢原子波函数等概率面的绘制

氢原子波函数等概率面的绘制 归一化后的氢原子波函数

c语言:如何打印杨辉三角形。

题目&#xff1a;打印杨辉三角形 如&#xff1a; 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 思路和代码&#xff1a; //由规律不难得出&#xff0c;每行首个数字和最后最后一个数字都为1&#xff0c;其余数字是这列的上一个数字和前一个数字的和组成&#xff0c;由此推出代码 #de…

Day31力扣打卡

打卡记录 由子序列构造的最长回文串的长度&#xff08;区间DP&#xff09; 先将两个字符串合并&#xff0c;再仿照 最长回文子序列 的做法&#xff0c;从中间开始往外进行遍历&#xff0c;由于是两个字符串&#xff0c;在 最长回文子序列 的做法上需要满足 len(word1) < j …

解决:java: 错误: 不支持发行版本 5 最有效方法

报错信息如图&#xff1a; 直接上终极方法&#xff1a; 修改配置文件 如图找到settings.xml文件 在标签中间插入如下代码&#xff08;jdk更改为自己电脑上的版本&#xff09; <profile><id>development</id><activation><jdk>11</jdk><…

MySQL表的增查(进阶)

目录 1.插入查询结果 2.查询 2.1聚合查询 2.1.1聚合函数 2.1.2GROUP BY子句 2.1.3HAVING 2.2联合查询 2.2.1内连接 2.2.2外连接 2.2.3自连接 2.3子查询 2.4合并查询 1.插入查询结果 在一张表中插入另一张表的查询结果。 语法为&#xff1a; insert into 表名 (列…

LMI相机配置步骤,使用Gocator2550相机

在此之前可以先浏览我编写的相机SDK通用类和LMISDK&#xff0c;进行配套观看 https://blog.csdn.net/m0_51559565/article/details/134404394 //LMI相机SDK https://blog.csdn.net/m0_51559565/article/details/134403745 //相机通用类1.启动LMI加速器 LMI加速器用于将相机…

Android studio配置Flutter开发环境报错问题解决

博主前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住也分享一下给大家 &#x1f449;点击跳转到教程 报错问题截图 报错原因已经给出&#xff1a; You need Java 11 or higher to build your app with this version of G…

rpmbuild 包名 version 操作系统信息部分来源 /etc/rpm/macros.dist

/etc/rpm/macros.dist openeuler bclinux src.rpm openssl-1.1.1f-13.oe1.src.rpm 打包名称结果 openeuler openssl-1.1.1f-13.aarch64.rpm bclinux openssl-1.1.1f-13.oe1.bclinux.aarch64.rpm 验证 修改openeuler配置文件macros.dist 重新在openeuler上执行rpmbuild…

基于XML的声明式事务

场景模拟 参考基于注解的声明式事务 修改Spring的配置文件 将Spring配置文件中去掉tx:annotation-driven标签&#xff0c;并添加配置&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org…

RK3588平台开发系列讲解(项目篇)嵌入式AI的学习步骤

文章目录 一、嵌入式AI的学习步骤1.1、入门Linux1.2、入门AI 二、瑞芯微嵌入式AI2.1、瑞芯微的嵌入式AI关键词2.2、AI模型部署流程 沉淀、分享、成长&#xff0c;让自己和他人都能有所收获&#xff01;&#x1f604; &#x1f4e2; 本篇将给大家介绍什么是嵌入式AI。 一、嵌入…

PasswordPusher:能通过URL安全传递密码

什么是 Password Pusher &#xff1f; Password Pusher 是一个开源应用程序&#xff0c;用于通过网络安全的传递密码。在经过一定数量的查看和/或时间后&#xff0c;指向密码的链接会过期。 从功能上说&#xff0c;类似于 Bitwarden Send&#xff0c;思路上与传统阅后即焚工具一…

四、Ribbon负载均衡

目录 一、负载均衡流程 1、我通过浏览器直接访问userservice/user/1&#xff0c;无法访问&#xff0c;说明是负载均衡做了相应的处理 2、我们来看一下代码中负载均衡的流程是怎样的 3、图像流程 二、负载均衡策略 1、修改负载均衡策略 &#xff08;方式一&#xff09; &a…