关于java:京淘项目Day01🚩★★★💎

1.1 互联网架构设计特点
1.1.1高并发

用户在同一时间内大量的拜访服务器.      tomcat服务器并发能力:  200-250 (JVM调优1000)    硬件条件: 物理服务器解决能力 网络带宽.

1.1.2.分布式

1).分布式计算
        由多个线程,独特来实现某项特定的工作.  拆合问题
2.分布式系统
        鸡蛋不要放到一个篮子里(分布式).
        tomcat服务器能够筹备多台,别离部署到不同的地位.避免断电...带来的影响

1.1.3.集群

    搭建tomcat服务器集群,是抗击高并发的无效的伎俩.

1.1.4.高可用性(HA)

 个别在集群中设置高可用. 当服务器产生异样时,能够由程序主动的实现故障的迁徙.而不要人为的参加.

1.1.5.数据安全性
个别的数据安全性 须要避免黑客.保障数据库安全性/数据备份/主动实现备份.
阿里巴巴: 技术型公司

1.2 京淘我的项目架构设计
在这里插入图片形容

  1. 数据库表设计
    2.1 数据库表关系
    外围: 站在一个角度思考问题.

2.1.1 一对一
用户与部门 一个用户只有一个部门 所以一对一
用户与用户详情 一个用户对应一个详情 一对一
一个详情对应一个用户 一对一
在这里插入图片形容

2.1.2 一对多
部门与用户 一个部门下边有多个用户 一对多
在这里插入图片形容

2.1.3 多对多
案例:

  1. 角色和权限 一个角色对应多个权限
    一个权限对应多个角色
    表的个数: 个别的多对多都是三张表 有两头表的参加
    在这里插入图片形容

2.2 京淘表设计
在这里插入图片形容

2.3 导入数据表
2.3.1 装置数据库工具
在这里插入图片形容

2.3.2 创立数据库链接
在这里插入图片形容

2.3.3 导入数据库
1).导入数据库
在这里插入图片形容
2).增加数据库文件
在这里插入图片形容
3).操作数据表
在这里插入图片形容

3.SpringBoot高级用法
3.1 对于maven温习
3.1.1 什么是maven
maven是一站式的项目管理工具. 包含我的项目的构建/我的项目运行/我的项目打包/我的项目公布等性能于一身.
在这里插入图片形容

3.1.2 查看本地仓库地位
1).maven配置文件地位 配置门路随便 然而地位须要固定
在这里插入图片形容

2).查看本地库地址
在这里插入图片形容

3).查看私服镜像地址

<mirror>

<id>aliyun</id>
<name>aliyun for maven</name>
<mirrorOf>*</mirrorOf>
<url>https://maven.aliyun.com/repository/public</url>

</mirror>
3.1 IDEA环境配置
3.1.1 装置lombok插件
在这里插入图片形容

3.1.2 装置Spring工具包
在这里插入图片形容

3.1.3 批改缩放
在这里插入图片形容

3.1.4 配置大小写提醒
在这里插入图片形容

3.1.5 参数提醒
在这里插入图片形容

3.1.6 增加主动编译
在这里插入图片形容

3.1.7 配置主动保留(版本差别)
在这里插入图片形容

3.1.8 配置maven环境
在这里插入图片形容

3.2 JDK查看
在这里插入图片形容

3.3 SpringBoot入门案例
3.3.1 创立我的项目
在这里插入图片形容

3.3.2 抉择jar包
因为入门案例,临时不须要其余包
在这里插入图片形容

3.3.3 maven命令阐明
1). install 命令
将我的项目依照坐标,生成jar/war包.
在这里插入图片形容
2).clean 删除我的项目中的target文件目录及内容.
3).compile 将.java文件 编译为.class文件 个别在开发中应用,如果须要打包部署 间接应用install.

3.3.4 我的项目公布
命令: java -jar xxx.jar
在这里插入图片形容
万能勾销组合键: CTRL + C

3.4 我的项目开发整体流程
甲方(爸爸)———> 招投标(不错公关部门)——->项目经理(指挥官)——->确定团队(产品部/设计部/研发部/测试部/施行部/运维部)——>产品经理负责出图(原型图–业务逻辑)——–>UI设计———–>WEB开发工程师——–>后端开发工程师—–>测试人——–>运维人员.

4.SpringBoot编辑项的阐明
4.1 对于POM.xml文件阐明
<?xml version=”1.0″ encoding=”UTF-8″?>
<project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<!--
    我的项目坐标: 未来生成的jar/war包在指定的目录中进行存储
    作用:  不便通过坐标的模式查找我的项目的jar包.
-->
<!--组ID定义 个别由公司域名倒写-->
<groupId>com.jt</groupId>
<!--我的项目ID: 个别定义项目名称 必须惟一-->
<artifactId>springboot_demo1</artifactId>
<!--版本号-->
<version>0.0.1-SNAPSHOT</version>
<name>springboot_demo1</name>
<description>Demo project for Spring Boot</description>

<!--
    PARENT标签定义了 springBoot2.4.1的大版本中所有的相干依赖的jar包的版本号
    的配置信息
    旧的工程: jar包特地的容易抵触
-->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.4.1</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>


<properties>
    <!--定义以后我的项目运行时jdk版本-->
    <java.version>1.8</java.version>
    <!--跳过测试类打包-->
    <skipTests>true</skipTests>
</properties>

<dependencies>
    <!--问题1: 当程序解析到dependency 程序加载jar包文件???
        阐明:依据依赖的坐标去本地仓库中依照指定的地位查找jar包文件
        之后进行依赖.
    -->

    <!--问题2: maven中的jar包具备依赖的传递的
        依赖传递性:  A依赖B,  B依赖C
        当依赖了A时,会主动的增加B/C

        实现原理:
            maven工具坐标首先加载jar包文件.然而jar包文件自身就是一个
            maven我的项目.所以maven程序又会去加载该jar包文件的xxx.pom
            进行解析 再次增加额定的包.至此实现了依赖的传递性.
    -->

    <!--问题3: 如何保障jar包文件的安全性 不被他人篡改.
        文件加密:  md5加密/sha1算法
        答: 采纳sha1算法动静生成文件的摘要,之后与原服务器数据进行比照
    -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

</project>
4.2 SHA1算法阐明
SHA-1(英语:Secure Hash Algorithm 1,中文名:平安散列算法1)是一种明码散列函数,美国国家安全局设计,并由美国国家标准技术研究所(NIST)公布为联邦数据处理规范(FIPS)。SHA-1能够生成一个被称为音讯摘要的160位(20字节)散列值,散列值通常的出现模式为40个十六进制数。
十六进制数: 0-9 A-F 全复式之后+1 后果是否反复???

常识:
1). 如果对雷同的数据进行hash计算,问值是否雷同? 雷同
2). 如果对不同数据进行hash计算 问值是否雷同? 可能雷同 hash碰撞!!!
3). 一个文件1M,一个文件1G 问hash计算的速度那个快? A. 一样快(理论值)
工夫复杂度O(1)
在这里插入图片形容

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理