JavaEE 的入门
1. 学习JavaEE
Java EE(Java Platform Enterprise Edition), Java 平台企业版. 是JavaSE的扩展, ⽤于解决企业级的开 发需求, 所以也可以称之为是⼀组⽤于企业开发的Java技术标准. 所以, 学习JavaEE主要是学习Java在 企业中如何应⽤.
前⾯学习的是Java基础, JavaEE 主要学习Java的应⽤, 也就是学习Java在企业中是如何应⽤ 的 Java更多场景是业务开发, 更狭义点可以理解为web开发. 所以我们的学习也是围绕着如何使⽤Java来 做web开发
1.1 什么是Web开发
web(World Wide Web)即全球⼴域⽹,也称为万维⽹. 简单来说, 就是可以通过浏览器来和我们的程序进⾏交互.⽐如京东, bilibili等⽹站项⽬.
1.2 Web⽹站的⼯作流程
⽬前用户对PC端应⽤的开发结构模式主要分为C/S和B/S结构.
CS即Client/Server(客户机/服务器)结构. 常⻅的C/S架构的应⽤⽐如QQ,CCTALK,各种⽹络游戏 等等,⼀般需要安装并且与服务器进⾏⽹络通信的都属于此类。
BS即Browser/Server(浏览器/服务器)结构.B/S架构全称是浏览器 / 服务器(Browser/Server)结构, 分为Web浏览器、服务器程序、数据库服务三部分,可以理解为是对C/S架构⼀种改进, 由于所有的业 务逻辑都由服务器程序处理, 所以客⼾端仅使⽤浏览器就可以完成所有操作,⼤⼤降低了客⼾端的维护 成本
下图是两个结构的比较:
我们以后学习的JavaEE项⽬都是基于 B/S架构的. 下图将简单说明一下b/s结构下,数据在浏览器显示,服务器程序,数据库三方之间的调动情况;
1. 通过浏览器访问前端程序. 前端程序返回前端代码.
2. 前端程序调⽤后端程序, 进⾏数据的获取(也可能由浏览器进⾏访问)
3. 后端返回数据后, 前端根据后端返回的数据进⾏⻚⾯渲染, 显示页面;
1.3 了解框架
在JavaEE课程中, 我们主要是对各种框架的学习, 以及如何把这些框架应⽤在企业中, 来实现⼀些web开 发.
随着技术的发展, 无论是后端开发还是前端开发, 开发的时候都很少使⽤原⽣的代码,⽐如:JDBC、JS 等. 取⽽代之的是各种开发框架. 如:后端框架:Spring, SpringBoot, Mybatis等,前端常⽤的框架: Vue、Node等.;
所谓框架,在计算机领 域, 可以看做是为应⽤开发者定制的应⽤骨架.通俗的来讲: 框架是实现某种功能的半成品, 他提供了⼀些常⽤的⼯具类, 我们在框架的基础上, 可以更 加⾼效的进⾏开发. 也就是⼀些程序员把之前你需要写的, ⼀些复杂的功能写好了, 并且封装了起来, 放在那⾥, 你只需要调 ⽤他提供的接⼝就可以实现⼀些之前你需要花费很⼤精力才能实现的功能
Java EE 共涉及4个框架的学习: Spring, Spring Boot, Spring MVC,Mybatis 其中Spring, SpringBoot, Spring MVC 可以看做是⼀家⼈, 属于Spring 家族的产品. Mybatis 是⼀个持久层框架, 主要是⽤来帮助我们更好的操作数据库.
2. Maven项目的管理和创建
学习这一部分前要先检查IDEA版本,社区办要求 2021.1~2022.1.4,专业版则无要求。
上图显示idea为专业版;
所谓maven,是⼀个项⽬管理⼯具。基于POM(Project Object Model,项⽬对象模型)的概念,Maven可以通 过⼀⼩段描述信息来管理项⽬的构建,报告和⽂档的项⽬管理⼯具软件。
即: Maven是⼀个项⽬管理⼯具, 通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包
q:为什么要学Maven?
a:简单、方便,能提高我们的开发效率,减少我们的开发BUG。
Maven提供的功能非常多,下面的体现主要是以下两个方面:1、项目构建 2、管理依赖。
2.1 创建一个maven项目
IDEA本⾝已经集成了Maven, 我们可以直接使⽤, ⽆需安装
以下截图的idea版本为: 2022.2.4, 不同版本的idea界⾯展⽰会有所不同
步骤如下:File -> New -> Project
点击create,就创建好了一个Maven项目,还会自动生成一个pom.xml文件,如图:
2.2 Maven 核心功能
2.2.1 项⽬构建
Maven 提供了标准的,跨平台(Linux, Windows, MacOS等)的⾃动化项⽬构建⽅式
当我们开发了⼀个项⽬之后, 代码需要经过编译, 测试, 打包, 发布等流程, 每次代码的修改, 都需要经过 这些流程, 如果代码反复调试修改, 这个流程就需要反复进⾏, 就显得特别麻烦,, ⽽Maven 给我们提供了 ⼀套简单的命令来完成项⽬的构建.
右侧maven命令:
点击package,进行打包,就可以完成项⽬的打包操作,打包成功如图所示:
打包就是把所有的class⽂件, 全部放在⼀起, 打成jar包或者war包
q&a:
q:jar包和war的使用区别?
a:jar包和war包都是⼀种压缩⽂件
1、jar包就是把开发⼈员已经写好的⼀些代码进⾏打包. 打好的jar包就可以引⼊到其他项⽬中, 也可以直 接使⽤这些jar包中的类和属性. 另外也可以打成可执⾏jar包, 这样的包就可以通过java -jar命令来执 ⾏
2、war包可以理解为是⼀个web项⽬,⾥⾯是项⽬的所有东西, 通常⽤于⽹站
2.2.2 依赖管理
Maven是⼀个项⽬管理⼯具, 通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包 获取的jar包, 其实就是依赖. pom.xml 就是maven 的配置⽂件,⽤以描述项⽬的各种信息
2.2.2.1 依赖说明
依赖: 指当前项⽬运⾏所需要的jar包,我们之前学习JDBC时, 我们需要⼿动下载mysql-connector-java的包.并且添加到项⽬中.
我们当前创建并使⽤Maven, 我们只需要在pom.xml中引⼊mysql-connector-java的依赖就可以了
2.2.2.2 添加依赖
1、在pom.xml文件李里面找到下图部分:
<properties><!--⾥⾯放置项⽬的依赖坐标, 可为多个 -->
</properties>
<dependencies>标签是.xml文件的,格式有点像html的标签;依赖可以理解为就是经纬度,给你经纬度,你就可以在找到相应的目标位置。
2、 在pom.xml文件内写入下面代码:
3、点击刷新按钮, 引⼊新加⼊的依赖jar包(后续有添加新的 jar包,或者修改 jar包 版本,都需要通过上述方式在项目中添加依赖)
刷新按钮的点击,有下面两种方式:
1、每次修改完依赖之后就会出现在页面的右上角,如下所示:
2、在maven指令界面:
添加成功如下所示:
2.2.2.3 查看所添加的依赖
刷新完成后,在左边这里的目录下就有对应的jar包了
2.2.3 依赖传递
早期没有使用Maven时,向项目中添加依赖的 jar包,需要把所有的 jar包 都复制到项目工程下。比如 A 依赖 B,B 依赖 C,那么A项目引入B的同时,也需要引入C,如果我们手动管理这个依赖,这个过程就会比较麻烦,我们需要知道每个库都依赖哪些库,以及这些依赖之间的版本是如何关联的;
但使⽤maven的话, 就可以避免管理所需依赖的关系。我们只需要在pom⽂件中, 定义直接依赖就可以 了, 由于maven的依赖具有传递性,所以会⾃动把所依赖的其他jar包也⼀起导⼊,如下图分析:
如上图, 项⽬A 通过Maven 引⼊ Jar A 时, 会⾃动引⼊ Jar B 和Jar C.
Jar A 和项⽬B就是项⽬A的直接依赖.
Jar B, Jar C是间接依赖.
直接依赖:在当前项目中 通过依赖配置建立的依赖关系。
间接依赖:被依赖的资源 如果依赖其他资源,当前项目间接依赖其他资源
2.2.4 依赖排除
排除依赖:指主动断开依赖的资源。(被排除的资源无需指定版本)
当前阶段我们需要依赖的库并不多,但随着项目的越来越来复杂,库之间的依赖关系也会变得越来越复杂。像上面图中,如果项目A不需要 Jar B,也可以通过排除依赖的方式来实现。
pom.xml文件配置如下:
<dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>6.0.6</version><!--排除依赖--><exclusions><exclusion><artifactId>spring-jcl</artifactId><groupId>org.springframework</groupId></exclusion></exclusions>
</dependency>
Maven还有一些功能,是依赖调解,可选依赖等。
当项目中的依赖存在依赖冲突,例如存在这样的依赖:
A->B->C->X(1.0)
A->D->X(2.0)
Maven会采用最短路径优先的原则去选择依赖,这里2的依赖路径更短,所以会选择X(2.0),当然也可以指定某个依赖的般般,指定X(1.0)。
2.3 Maven Help插件
当项⽬⽐较复杂时, 我们就会有Jar包冲突的问题, 这时候就需要去解决依赖冲突. 解决冲突之前, 需要先 找到冲突, 我们可以使⽤Maven Help插件来观察包和包之间的依赖关系.
像 IDEA 这样的程序虽然功能强⼤, 但是也⽆法⾯⾯俱到. 对于⼀些特殊场景的功能, 开发者就可以开 发⼀些 "插件". 如果需要这个插件, 就单独安装. 插件就是对程序的⼀些特定场景, 做出⼀些特定的功能的扩展
安装插件过程:File -> Setting -> Plugins -> 搜索 “Maven Help” -> 找到对应插件,点击 Install 安装即可,按照后要重启 IDEA,才能生效。如下图:
点击 Restart IDE,重启IDEA。
安装完后,打开 pom.xml 文件,就可以看到 Jar包 之间的依赖关系,如图:
也可以右键排除掉一些依赖,如图:
3. Maven 仓库
3.1 仓库的介绍
下面几行代码, 就把依赖jar包放在了项⽬⾥, 具体是如何做的呢?
<dependencies><!-- https://mvnrepository.com/artifact/com.mysql/mysql-connector-j --><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.33</version></dependency></dependencies>
这个代码, 我们称之为 "坐标", 也就是唯⼀的.
在Maven中, 根据 groupId、artifactId、version 的配置, 来唯⼀识别⼀个 jar 包, 缺⼀不可. 当我们在pom⽂件中配置完依赖之后, 点击刷新, Maven会根据坐标的配置, 去仓库⾥寻找Jar包, 并把他 下载下来, 添加到项⽬中. 这个Jar包下载的地⽅就称为仓库
仓库:⽤于存储资源,管理各种jar包
Maven仓库 的本质就是一个目录(文件夹),这个目录被用来存储开发中所有依赖(jar包、插件等)。
Maven仓库分为两⼤类: 本地仓库和远程仓库. 其中远程仓库⼜分为中央仓库, 私服 和其他公共库
3.1.1 本地仓库
本地仓库:自己计算机上的一个目录(用来存储 jar包)。
当项目中引入对应依赖 jar包 后,首先会查找本地仓库中是否有对应的 jar包。
1、如果有,则在项目中直接引用。
2、如果没有,则去中央仓库中下载对应的 jar包 到本地仓库。
项目中引入的依赖寻找本地仓库中的jar包的路线,如下图所示:
本地仓库地址可以通过 Maven 配置查看:File -> Settings,如图:
User settings file:Maven的配置文件。
Local repository:Maven的本地仓库地址。
查看该仓库⽬录, 可以看到该⽬录下有很多的jar(最开始是空的, 随着Maven的使⽤, 该仓库下⽂件会越 来越多)
3.1.2 中央仓库
中央仓库:Maven 软件中内置一个远程仓库地址,也就是中央仓库的地址,服务于整个互联网。由 Maven 团队维护,这是全球唯一的。我们也可以把自己写好的 Jar包 上传到中央仓库(需具备一定的要求),也可以从中央仓库下载 Jar包。
仓库地址:Central Repository:
查询Jar包在仓库的坐标(位置):https://mvnrepository.com/
如何查找 Jar 的坐标?
1、访问 https://mvnrepository.com/ 。
2、进行查找,比如要找的是 MySQL。
3、选择要添加的 jar包 版本
4、查看 jar包 对应的坐标
框出来的文本就是jar包对应的坐标,复制框出来的文本,粘贴进 IDEA 的 pom.xml 文件中。
3.1.2 私有服务器
私有服务器,简称为:私服,一般由公司团队搭建的私有仓库。私服属于某个公司,或者某个部门,往往需要一定权限;
当有了私服之后,Maven依赖下载顺序就会发生变化,如图:
当 pom.xml 写入一个依赖时,是先到本地仓库查找
1、如果本地仓库有,就直接从本地仓库拿。
2、如果本地仓库没有,就到私服中查找,私服中有,就从私服上下载这个依赖到本地仓库中。
3、如果私服没有,就会在中央仓库上查找,中央仓库有,私服就会从中央仓库中下载下来,然后再传给本地仓库。
4、如果中央仓库没有,也会从中央仓库下载,但中央仓库没有这个资源,就会报异常。
私服是很多⼈在使⽤的, 所以只需要第⼀个使⽤者下载⼀次就可以了
3.2 Maven 设置国内源
因为中央仓库在国外, 所以下载起来会⽐较慢, 所以咱们选择借助国内⼀些公开的远程仓库来下载资源 ,接下来介绍, 如何设置国内源
3.2.1 配置当前项⽬setting
步骤如上;File -> Settings
1、查看配置⽂件的地址, 如上图所⽰, Maven配置⽂件地址为: E:\Maven\.m2\settings.xml, 不同电脑设置的Maven路径不同 ,settings和repository 可以修改设置为其他路径, 两个路径不要有中⽂
2. 配置国内源
Maven 仓库默认在国外https://mvnrepository.com/, 国内使⽤时会⽐较慢,我们可以更换为阿⾥云的仓库 ;
也可以选择别的仓库, 参考: Maven 镜像地址⼤全https://zhuanlan.zhihu.com/p/627320558
打开settings.xml, 在 mirrors 节点上,添加内容如下下面内容是我的setting.xml文件中的配置:
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><mirrors><!-- mirror| Specifies a repository mirror site to use instead of a given repository. The repository that| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.|<mirror><id>mirrorId</id><mirrorOf>repositoryId</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://my.repository.com/repo/path</url></mirror>--><mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror><mirror><id>uk</id><mirrorOf>central</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://uk.maven.org/maven2/</url></mirror><mirror><id>CN</id><name>OSChina Central</name><url>http://maven.oschina.net/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror><mirror><id>nexus</id><name>internal nexus repository</name><!-- <url>http://192.168.1.100:8081/nexus/content/groups/public/</url>--><url>http://repo.maven.apache.org/maven2</url><mirrorOf>central</mirrorOf></mirror></mirrors> </settings>
3.2.2 设置新项目的setting:
上述配置的内容, 只对当前项⽬⽣效, 为了让后续新建的项⽬也⽣效, 需要重新设置⼀下新项⽬的 Settings
当前项⽬和新项⽬共⽤⼀个setttings⽂件即可, 所以新项⽬的设置, 只需要确认⼀下settings⽂件的路 径即可.
ps:本次的内容就到这里了,如果对你有所帮助的话,就请一键三连哦!!!
电子签名:上嘉路
相关文章:
JavaEE 的入门
1. 学习JavaEE Java EE(Java Platform Enterprise Edition), Java 平台企业版. 是JavaSE的扩展, ⽤于解决企业级的开 发需求, 所以也可以称之为是⼀组⽤于企业开发的Java技术标准. 所以, 学习JavaEE主要是学习Java在 企业中如何应⽤. 前⾯学习的是Java基础, JavaEE 主要学习Jav…...
vue3+ts 前端word文档下载文件时不预览直接下载方法(支持 doc / excel / ppt / pdf 等)
前端word文档下载文件时不预览直接下载方法支持 doc / excel / ppt / pdf 等 根据需要,要实现一个下载文档的需要 最简单的方法就是使用a标签 如果是相同域可以直接下载,但如果是不同域的,就会先打开一个预览页,在预览页再点下载…...
Java 空值与null 形参与实参学习
Java系列文章目录 文章目录 Java系列文章目录一、前言二、学习内容:三、问题描述四、解决方案:4.1 空值与null的区别4.1.1 空值(Empty Value)4.1.2 Null 4.2 形参与实参区别 五、总结:5.1 学习总结: 一、前…...
【QT常用技术讲解】QTableView添加QCheckBox、QPushButton
前言 QT展示列表信息的时候通常用到列表(比如用户信息、机构信息、设备信息等菜单),当需要对某列进行修改、删除操作时,就需要加入按钮(QPushButton),当需要对多列进行右键菜单操作时࿰…...
linux监控命令
在 Linux 中,有许多命令可以用于监控系统的性能和状态。以下是一些常用的监控命令及其用途: 1. top 和 htop top top 命令显示当前系统中运行的进程列表及其资源使用情况。 top htop htop 是 top 命令的增强版,提…...
SpringBoot入门笔记
本文是看黑马老师讲课视频学习笔记整理 目录 入门案例 基于IDEA联网 基于Springboot官网创建 基于阿里云创建项目 手工创建 隐藏文件 入门案例解析: parent编辑 starter 引导类 内嵌tomcat 入门案例 基于IDEA联网 RestController RequestMapping("/books&…...
python 华为od 单词接龙
sd[word,dd,da,dc,dword,d] # 计算出下一个接龙单词 def jl(sd,st):# sd.remove(st)sd list(set(sd))sends list(st)[-1]lg []sd.sort()for i in sd:if i.startswith(sends):lg.append((i, len(i)))if lg[]:return 0,0lg.sort(keylambda x: x[1],reverseTrue)maxlen lg[0][…...
Vue+Echart实现地图省市区三级下钻
采用在线地图数据,整体简约,扩展也方便 参考 <template><div><div ref"mapContainer" style"width: 100%; height: 600px;"></div><button click"goBack">返回上一级</button></…...
Apache Tomcat 信息泄露漏洞排查处理CVE-2024-21733)
一、漏洞描述 Apache Tomcat作为一个流行的开源Web服务器和Java Servlet容器并用于很多中小型项目的开发中。其中,Coyote作为Tomcat的连接器组件,是Tomcat服务器提供的供客户端访问的外部接口,客户端通过Coyote与服务器建立链接、发送请求并且接收响应。 近日发现Apache To…...
51单片机-LED实验
实现了按下独立按键,LED灯亮,松开独立按键,LED灯灭的功能 #include <8051.h>void delayms(unsigned char t){unsigned char i,j;i900;jt;do{jt;while (j--){/* code */}}while(i--); }void main(){// P2_01;while (1){if(P3_00){delay…...
无人机开启农林植保新篇章
嘿,小伙伴们,你们知道吗?无人机已经悄悄在农业领域大展拳脚,成为现代农业的“黑科技”新宠儿啦! 想象一下,广袤的田野上空,无人机如同勤劳的蜜蜂,精准高效地完成着各项任务ÿ…...
第N4周:NLP中的文本嵌入
本文为365天深度学习训练营 中的学习记录博客原作者:K同学啊 任务要求:加载第N1周的.txt文件,使用Embeddingbag与Embedding完成词嵌入 第N1周的.txt文件的名称为“任务文件.txt”,内容为: 比较直观的编码方式是采用上…...
C++高精度减法
高精度减法其实跟加法差不多,首先就是需要逆序存入整数数组,其次就是做运算,最后就是删除前导0逆序输出。 不过在做高精度减法需要考虑一下两个数的关系是有三种的,a>b,a<b ab;思考全面咱们的程序才能拿满分。 以下是完整…...
protobuf cmakelist,msvc utf-8设置
源字符集和执行字符集 源字符集指的是cpp文件中字符串的编码方式 执行字符集指的是exe文件中字符串的编码方式 msvc编译器设置的命令行参数 /source-charset:utf-8 /execution-charset:utf-8 cmake中设置 add_compile_options(“ < < <<CXX_COMPILER_ID:MSVC>…...
Haproxy讲解
Haproxy: haproxy是一个开源的高性能反向代理和负载均衡器,主要用于TCP和HTTP流量管理。 功能和特点:haproxy能够处理大量的并发连接,支持TCP和HTTP协议,具有高可用性和负载均衡功能。它特别适用于需要处理大量流量的网站&am…...
K8S系列——一、Ubuntu上安装Helm
在使用K8S搭建集群服务时,有时候需要用到Helm(一个用于Kubernetes应用管理的工具),下面是在Ubuntu上安装Helm的过程。 1.更新系统软件包列表 sudo apt-get update2.安装必要的依赖项 sudo apt-get install apt-transport-https…...
排序: 插入\希尔\选择\归并\冒泡\快速\堆排序实现
1.排序的概念及应用 1.1概念 排序:所谓排序,就是一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 1.2运用 购物筛选排序: 1.3常见排序算法 2.实现常见的排序算法 int a[ {5,3,9,6,2,4,7,1,8}; 2…...
OpenCV图像处理——按最小外接矩形剪切图像处理ROI后映射回原图像
引言 在图像处理过程中,提取感兴趣区域(ROI)并在其上进行处理后,往往需要将处理后的结果映射回原图像。这一步通常涉及以下几个步骤: 找到最小外接矩形:使用 cv::boundingRect 或 cv::minAreaRect 提取感兴…...
Linux中以单容器部署Nginx+ASP.NET Core
强烈推荐在生产环境中使用反向代理服务器转发请求到Kestrel Http服务器,本文将会实践将Nginx --->ASP.NET Core 部署架构容器化的过程。 Nginx->ASP.NET Coe部署架构容器化 在Docker中部署Nginx--->ASP.NETCore 有两种选择, 第一种是在单容器…...
【秋招笔试】8.11大疆秋招(第三套)-三语言题解
🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收…...
标题:打造编程学习的知识宝库:高效笔记记录与整理
标题:打造编程学习的知识宝库:高效笔记记录与整理 在编程学习的征途中,有效的笔记记录和整理技巧对于掌握和回顾知识点至关重要。本文将从笔记工具选择、笔记结构设计、以及实践与复习策略三个方面,探讨如何高效地记录并整理编程…...
【Rust光年纪】Rust 官方提供的关键工具概览:代码检查、格式化和依赖管理
提升 Rust 项目质量和安全性:掌握官方工具的核心功能和使用方法 前言 Rust 作为一种系统编程语言,拥有强大的性能和内存安全特性。然而,随着项目规模增长,代码检查、格式化和依赖管理等工作变得更加重要。因此,Rust …...
【Python学习-UI界面】PyQt5 小部件8-QSlider 数值滑动
样式如下: QSlider 类对象为用户提供一个沟槽,可以在其上移动一个手柄。 它是一个经典的小部件,用于控制有界值。 手柄在沟槽上的位置相当于控件的下限和上限之间的整数。 常用方法如下: 序号方法描述1setMinimum设置滑块的最小值2setMax…...
MapReduce入门教程
这可不是目录 入门定义与说明数据分析Map和Reduce阶段的任务<Kn,Vn>分析MapReduce的数据类型其他说明(持续更新) 开发案例(持续更新)自定义的wordcountcsv文件操作序列化操作 入门 定义与说明 数据分析 以下未数据分析示意图 Map和Reduce阶段的任务 Map阶段的任务&a…...
JDBC1 Mysql驱动,连接数据库
JDBC 一、JDBC Java Database Connectivity:Java访问数据库的解决方案 JDBC定义了一套标准接口,即访问数据库的通用API, 不同的数据库厂商根据各自数据库的特点去实现这些接口。 JDBC希望用相同的方式访问不同的数据库,让具体的…...
LeetCode 205 同构字符串
题目 给定两个字符串 s 和 t ,判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,…...
ARM高性能计算(HPC)处理器Neoverse介绍
思考: Neoverse系列中的N、V、E有什么区别? 这三个字母的缩写又是什么? ARM Neoverse架构是ARM专为服务器、数据中心、高性能计算(HPC)和网络基础设施设计的一系列处理器架构。Neoverse架构分为N系列、V系列和E系列,这些系列面向不同的应用场景,各自有不同的设计目标和…...
【每日力扣中医养生】力扣1298. 你能从盒子里获得的最大糖果数
1298. 你能从盒子里获得的最大糖果数 文章目录 【每日力扣&中医养生】力扣1298. 你能从盒子里获得的最大糖果数题目描述示例解析示例 1示例 2 算法思路算法步骤代码实现复杂度分析总结 【每日力扣&中医养生】力扣1298. 你能从盒子里获得的最大糖果数 《黄帝内经》的阴…...
大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...
C#创建一个自定义控件类
如果你希望在 TextBox 内部嵌入一个按钮,并且这个按钮用于打开文件选择对话框,可以创建一个自定义控件来实现这一功能。下面是一个示例,展示如何在 Windows 窗体应用程序中创建一个自定义控件,其中 Button 嵌入到 TextBox 内部。 …...
院校网站建设/新闻发布最新新闻
1. 类型别名:为已有类型另外命名 1.1) typedef 已有类型名 新类型名表 例: typedef double Area, Volume; typedef int Natural;Natural i1,i2; Area a; Volume v;1.2) using 新类型名 已有类型名; 例: using A…...
网站开发教程PDF微盘下载/淘数据官网
Visual Basic .NET 教程 模块五 菜单栏、工具栏、状态栏 能力目标:能够设计、创建和使用菜单、工具栏和状态栏 知识目标:掌握菜单控件、工具栏控件和状态栏控件常用的属性、方法和事件 一个典型的Windows应用程序必然包含菜单、工具栏和状态栏&#x…...
广东省医院建设协会网站首页/百度商家版下载
解决办法: window --> preferences --> Team --> SVN --> Client选项选择: SVNKit x.x.x.xxx 转载于:https://www.cnblogs.com/zheh/p/4199400.html...
建设银行指定网站/营销型网站和普通网站
作者: Jooyer, 时间: 2018.07.08 Github地址,欢迎点赞,fork 大家看到GIF,就知道,其自定义很是简单,为何还要说一说呢? 主要是 github 上有很多大佬写的很好的库,只是功能多了,文件就多了,很多时候引入一个第三方,还得考虑方法数,库的大小等,而且有些时候,我们不需要那么多功能…...
最火的服务器托管/名词解释seo
2.搭建双主双从 编号 角色 Ip地址 机器名 1 Master1 192.168.119.131 Hadoop2 2 Slave1 192.168.119.132 Hadoop3 3 Master2 192.168.119.133 Hadoop1 4 Slave2 192.168.119.134 Hadoop4 2.1修改配置文件 修改四台服务器的/etc/my.cnf文件 ①Master1 [mysqld] server-id1 #…...
美国建网站的价格/百度搜索
一、效果图:...