day45_maven_tomcat

今日内容

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选项

在这里插入图片描述

  1. 设置信息

在这里插入图片描述

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题

链图片转存中…(img-rtW6EHr3-1707135839652)]

[外链图片转存中…(img-LJ1YsQfy-1707135839652)]

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

[外链图片转存中…(img-OwNMtNsa-1707135839653)]

[外链图片转存中…(img-QR9AuIXA-1707135839654)]

[外链图片转存中…(img-j97yDFc5-1707135839654)]

[外链图片转存中…(img-FEZIvR1Z-1707135839655)]

[外链图片转存中…(img-tTjsEAvd-1707135839656)]

[外链图片转存中…(img-TDN2zK2C-1707135839656)]

7 总结

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

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

如何从 Windows 硬盘恢复丢失或删除的照片

您是否曾经不小心删除了无法再恢复的重要照片&#xff1f;如果这是您的商务或家庭照片、婚礼或童年回忆或者亲人的照片怎么办&#xff1f; 根据我们的经验&#xff0c;用户在清理计算机以提高存储/速度时通常会遇到此类事故&#xff0c;并最终删除包含重要图片的文件夹&#x…

VUE基础知识八 ElemrntUI使用

使用VUE脚手架以及在项目里引入ElementUI&#xff0c;上一章节讲过了&#xff0c;本章节就不赘述了。 ElementUI官网 所有使用ElementUI的组件&#xff0c;在使用时&#xff0c;都是以el-组件名开头的 一 按钮组件 ElementUI里的组件都是类似的&#xff0c;这里以按钮组件来…

AWD-Test2

1.已知账号密码&#xff0c;可SSH连接进行代码审计。2.登录可万能密码进入&#xff0c;也可注册后登录。3.修改url参数&#xff0c;发现报错。确定为Linux系统4.写入一句话&#xff0c;并提交。&#xff08;也可以文件上传&#xff0c;这里采用简洁的方法&#xff09; <?p…

macbookair怎么清理内存 ?如何利用 CleanMyMac X 进行系统清理

macbookair怎么清理内存 清理MacBook Air的内存可以通过以下几种方法&#xff1a; 优化储存空间。在MacBook Air上&#xff0c;可以通过“优化储存空间”来释放空间。这包括将文件储存在iCloud中&#xff0c;如桌面、文稿和iCloud信息&#xff0c;以及自动移除在iCloud中观看…

〖大前端 - ES6篇②〗- let和const

说明&#xff1a;该文属于 大前端全栈架构白宝书专栏&#xff0c;目前阶段免费&#xff0c;如需要项目实战或者是体系化资源&#xff0c;文末名片加V&#xff01;作者&#xff1a;哈哥撩编程&#xff0c;十余年工作经验, 从事过全栈研发、产品经理等工作&#xff0c;目前在公司…

一文讲透Python函数中的形式参数和实际参数

函数参数包括形式参数和实际参数&#xff0c;简称形参和实参。其中形式参数即是在定义函数时函数后面括号中的参数列表&#xff08;parameterlist&#xff09;&#xff0c;比如上一个帖子的示例中的width, length&#xff1b;实际参数则是调用函数时函数后面括号中的参数值&…

Qt PCL学习(三):点云滤波

注意事项 版本一览&#xff1a;Qt 5.15.2 PCL 1.12.1 VTK 9.1.0前置内容&#xff1a;Qt PCL学习&#xff08;一&#xff09;&#xff1a;环境搭建、Qt PCL学习&#xff08;二&#xff09;&#xff1a;点云读取与保存 0. 效果演示 1. pcl_open_save.pro QT core guigr…

Linux应用程序参数传递的深入探索

大家好&#xff0c;今天给大家介绍Linux应用程序参数传递的深入探索&#xff0c;文章末尾附有分享大家一个资料包&#xff0c;差不多150多G。里面学习内容、面经、项目都比较新也比较全&#xff01;可进群免费领取。 在Linux环境中&#xff0c;应用程序的参数传递是一个核心且灵…

【Linux】模块参数

&#x1f525;博客主页&#xff1a;PannLZ &#x1f38b;系列专栏&#xff1a;《Linux系统之路》 &#x1f94a;不要让自己再留有遗憾&#xff0c;加油吧&#xff01; 模块参数 像用户程序一样&#xff0c;内核模块也可以接受命令行参数。首先应该声明用于保存命令行参数值的变…

XSS-Lab

1.关于20关的payload合集。 <script>alert(1)</script> "><script>alert(1)</script> onclickalert(1) " onclick"alert(1) "><a href"javascript:alert(1)"> "><a HrEf"javascript:alert…

sklearn中一些简单机器学习算法的使用

目录 前言 KNN算法 决策树算法 朴素贝叶斯算法 岭回归算法 线性优化算法 前言 本篇文章会介绍一些sklearn库中简单的机器学习算法如何使用&#xff0c;一些注释已经写在代码中&#xff0c;帮助一些小伙伴入门sklearn库的使用。 注意&#xff1a;本篇文章只涉及到如何使用…

Java实现快乐贩卖馆管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 搞笑视频模块2.3 视频收藏模块2.4 视频评分模块2.5 视频交易模块2.6 视频好友模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 搞笑视频表3.2.2 视频收藏表3.2.3 视频评分表3.2.4 视频交易表 四、系…

【iOS】——使用ZXingObjC库实现条形码识别并请求信息

文章目录 前言一、实现步骤二、扫描界面和扫描框的样式1.扫描界面2.扫描框 三、实现步骤 前言 ZXing库是一个专门用来解析多种二维码和条形码&#xff08;包括包括 QR Code、Aztec Code、UPC、EAN、Code 39、Code 128等&#xff09;的开源性质的处理库&#xff0c;而ZingObjC库…

蓝桥杯刷题day08——完全日期

1、题目描述 如果一个日期中年月日的各位数字之和是完全平方数&#xff0c;则称为一个完全日期。 例如&#xff1a;2021年6月5日的各位数字之和为20216516&#xff0c;而16是一个完全平方数&#xff0c;它是4的平方。所以2021年6月5日是一个完全日期。 请问&#xff0c;从200…

怎么加密电脑磁盘?磁盘加密软件哪个好?

磁盘是电脑储存数据的基础工具&#xff0c;可以存放大量数据。为了避免数据泄露&#xff0c;可以使用专业的磁盘加密软件加密保护电脑磁盘。那么&#xff0c;磁盘加密软件哪个好呢&#xff1f;下面我们就来了解一下。 磁盘加锁专家 磁盘加锁专家是一款专业的磁盘加锁软件&…

社区店选址要素揭秘:人流量与商业潜力的关键

开店五年&#xff0c;我深刻体会到选址对于社区店的重要性。 不管是哪个行业的实体店&#xff0c;选址更是决定成败的关键因素之一。今天&#xff0c;我就以一名资深鲜奶吧创业者的身份&#xff0c;来揭秘社区店选址的几大要素&#xff0c;帮助大家在创业的道路上少走弯路。 …

C#使用哈希表对XML文件进行查询

目录 一、使用的方法 1.Hashtable哈希表 2.Hashtable哈希表的Add方法 &#xff08;1&#xff09;定义 &#xff08;2&#xff09;示例 3.XML文件的使用 二、实例 1.源码 2.生成效果 可以通过使用哈希表可以对XML文件进行查询。 一、使用的方法 1.Hashtable哈希表…

spring上下文源码分析

请直接看原文: 原文链接: 一文搞懂Spring上下文生命周期 | spring系列第55篇-腾讯云开发者社区-腾讯云 (tencent.com) -------------------------------------------------------------------------------------------------------------------------------- 本文主要内容&a…

linux应用 进程间通信之信号量(System V)

1、定义 System V 信号量是一种用于进程间同步和互斥的机制&#xff0c;它是 System V IPC&#xff08;Inter-Process Communication&#xff0c;进程间通信&#xff09;机制的一部分。信号量通常用于控制对共享资源的访问&#xff0c;以避免竞争条件&#xff08;race conditi…

2024年【N1叉车司机】新版试题及N1叉车司机模拟考试题库

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 N1叉车司机新版试题参考答案及N1叉车司机考试试题解析是安全生产模拟考试一点通题库老师及N1叉车司机操作证已考过的学员汇总&#xff0c;相对有效帮助N1叉车司机模拟考试题库学员顺利通过考试。 1、【多选题】《中华…