【后端结合】新程序猿笔记Day1

1. 前期的知识回顾

1.1 数据库

知识点:

1. Sql语句 CURD 操作的核心. 单表操作

2. 多表关联操作 笛卡尔积(只显示2张表的共有数据) 左连接、右连接、内连接 

    关键字: like in and or order by asc/desc group by 数据库函数调用

端口号:默认端口号3306 、3307

权限: mysql数据库默认只允许自己本机进行连接。 必须开放数据库权限才可以。
版本: mysql: 至少5.5及以上的版本 mariadb: 10以上

1.2 前端知识 

核心知识:
1.html
2.javascript JS 
3.CSS 美化
4、Ajax
前端的内容属于静态页面。
动态页面: JSP html + java代码 tomcat负责解析。

 1.3 VUE.js

核心:

1. 双向数据绑定 vue中的属性与页面输入框之间进行绑定
2. VUE 设计思想:
MVVM思想 model模型(数据) view视图 VM(vue对象特有的结构)

2. 后台项目环境准备 

2.1 目录准备

说明:以后写后端代码都在2109目录中,要求目录不能耦合、路径不能有中文、空格等特殊字符。

 

2.2 IDEA管理工作目录 

2.2.1 IDEA 管理目录结构图

 2.2.2 IDEA环境配置 

 2.3 关于Maven说明

2.3.1 maven介绍

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

 2.3.2 maven 工作原理

角色划分:
1. 本地仓库 在本地存储项目中使用的jar包.
2. 镜像服务器 在国内可以快速的下载需要的jar包文件
3. 中央仓库 maven官网维护的仓库,几乎包含了所有的开源的jar包. 例如oracle.jar包没有

  Maven环境配置

配置本地仓库

		<!--定义本地仓库路径 如果pom.xml文件报错,则切换本地仓库-->
		<localRepository>D:/software/mvn_repo</localRepository>

配置私服镜像
说明:
如果私服镜像配置不完全,则导致下载jar包会去中央仓库.导致下载很慢可能出错. 

<!--阿里云镜像-->
<mirror>
	<id>nexus-aliyun</id>
	 <mirrorOf>*</mirrorOf>
	<name>Nexus aliyun</name>
	 <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

2.3.4 IDEA整合maven 

 优化:一劳永逸。就不用在设置了

2.4 关于SpringBoot项目环境调试

2.4.1 创建项目

指定私服镜像地址 路径: https://start.aliyun.com/

编辑项目信息

 勾选依赖项

2.4.2 项目测试 

检查jar包下载是否正常

 

 测试主启动方法是否正常

2.5 关于IDEA整合maven项目说明 

说明: 有时IDEA 不能正确的识别maven项目. 需要自己手动的添加该项目.

3 关于maven知识点讲解

3.1 关于依赖项与本地仓库的关系

3.1.1 maven jar包搜索

URL地址: https://mvnrepository.com/

3.1.2 maven 坐标的说明 

1.说明: maven的坐标是本地仓库中,查找jar包文件的唯一路径.
2.注意事项: maven的jar包下载 如果通过手机热点 可能下载不完全.
3.坐标说明:

	<dependency>
            <!--1.组ID: 公司域名倒写  www.tedu.cn-->
            <groupId>junit</groupId>
            <!--2.项目名称唯一-->
            <artifactId>junit</artifactId>
            <!--3.版本号 唯一的-->
            <version>4.12</version>
            <!--了解: 什么时候有效-->
            <scope>test</scope>
        </dependency>

4.本地仓库位置说明: 坐标与jar包的路径 一一对应. 

  5.如果出现jar包下载不完全的现象如何处理 将本地仓库中的jar包文件删除之后,刷新maven

3.1.3 如何解释maven jar包 具有依赖传递性? 

3.1.3.1 为什么需要依赖传递性

历史问题: 很早之前的开发 里边的jar包文件都是由程序员一个一个的手动添加!!!
致命问题: jar包文件之间可能会产生冲突!!! 一个class出现了多次!!
如何解决: maven工具诞生之后, 很大的程度上解决了 jar包依赖的版本冲突问题.
官网在开发时,已经将版本的问题进行了测试. 所以使用时一般不会错.
自动依赖的说明:
1. A.jar 依赖 B.jar B.jar 依赖 C.jar 当用户引入A.jar 包时. B/C自动添加依赖…

3.1.3.2 依赖传递性原理说明

说明:
1. 用户添加jar包时,maven工具会根据jar包的坐标,去本地仓库中查找指定的jar包文件.
2. 找到jar包并且实现了jar包文件的依赖.
3. 同时加载当前目录下的pom文件,通过标签 加载其它的依赖项.
4. 循环执行上述的操作 直到所有的jar包依赖完成为止.

jar包文件位置

 自动依赖项

 总结:
maven 为了解决jar包冲突问题,内部有一些依赖项,引入某些jar包可以自动的依赖其它的jar包.

3.1.4 maven 如何保证安全性(了解)

3.1.4.1 问题描述

jar包在网络中进行传输.可能会被篡改. 如何防止!!!

 3.1.4.2 sha1算法

SHA-1(英语:Secure Hash Algorithm 1,中文名:安全散列算法1)是一种密码散列函数,美国国家安全局设计,并由美国国家标准技术研究所(NIST)发布为联邦数据处理标准(FIPS)。SHA-1可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式为40个十六进制数。

3.1.4.3 关于hash常识(面试题)

1. 对相同数据,采用相同的hash算法, 问: 结果是否相同? 答:必定相同
2. 不同的数据,采用相同的hash算法, 问: 结果是否不同? 答: 可能相同

hash BUG: hash碰撞问题!!!

3. 关于hash碰撞说明:

 3.1.4.4 数据传输有效性说明

说明: 对数据采用算法进行计算生成摘要信息,当数据传递到本地也会生成摘要信息。 之后对比2个摘要数据。判断数据是否相同。

 

 4 关于框架阶段说明

4.1 三大框架基本结构

4.1.1 为什么需要框架

说明: 如果生产环境下的项目,都是从头(从底层写起)开发,难度太大了,并且开发的效率极其低下. 所以为了让项目快速的上线部署. 将某些特定的功能.进行了高级的封装. 那么我们如果需要使用封装后的API.,则必须按照人家的要求编码

 4.1.2框架的分类

Spring框架: 整个框架中负责"宏观调控"的(主导),负责整合其它的第三方的框架.
SpringMVC框架: 主要负责实现前后端数据的交互
Mybatis框架/MybatisPlus框架:持久层框架,简化了JDBC操作数据库的方式, 提高效率.
SpringBoot框架/工具: SpringBoot采用了一种更加简化的方式封装了之前的框架.让程序变得更加简单.

4.1.3 框架调用流程图 

 5 关于maven 指令说明

5.1 常用命令说明

  1. clean 清空target目录文件. target 中保存的是xxx.java文件编译后的xxx.class文件. 防止程序不能及时更新. 手动编译的一种方式.
  2. compile 手动让mvaen工具 将xxx.java文件 编译为xxx.java文件
  3. install 将项目打包部署

 

5.2 java项目 打包类型 

  1. jar包文件 适用于工具API/框架源码/SpringBoot程序 最常用的
  2. war包文件 动态web开发时常用的方式,可以直接tomcat服务器部署.(落后)
  3. pom类型 表示该项目是一个 “聚合工程”, 一个大项目里边包含了多个小项目的结构.

5.3 关于jar包文件说明 

通过maven install 会在target目录中生成 xxx.jar包文件

 

 有时个别的打包不会在target目录中生成xx.jar(IDEA的问题),可以在本地仓库中查找该jar包.

 

安装

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值