Day45

Day45

jQuery动画

显示和隐藏

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){
//				//方法一:切换事件
//				$("#btn01").toggle(
//					function(){
//						$("img").hide("slow");
//						$("img").hide(2000);
//					},
//					function(){
//						$("img").show("fast")
//						$("img").show(1000);
//					}
//				)//方法二:toggle()方法$("#btn01").click(function(){$("img").toggle(3000)})})</script></head><body><button id="btn01">显示和隐藏</button><img src="img/时间.jpg" /></body>
</html>

滑动

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){//方法一:切换事件$("#btn01").toggle(function(){
//						$("img").slideUp("slow");$("img").slideUp(2000);},function(){
//						$("img").slidedown("fast")$("img").slideDown(1000);})
//				//方法二:slideToggle()方法
//				$("#btn01").click(function(){
//					$("img").slideToggle(3000)
//				})})</script></head><body><button id="btn01">显示和隐藏</button><img src="img/时间.jpg " width="100px" height="100px" /></body>
</html>

淡入淡出

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){
//				方法一:切换事件
//				$("#btn01").toggle(
//					function(){
//						$("img").fadeOut("slow");
//						$("img").fadeOut(2000);
//					},
//					function(){
//						$("img").fadeIn("fast")
//						$("img").fadeIn(1000);
//					}
//				)//方法二:fadeToggle()方法$("#btn01").click(function(){$("img").fadeToggle(3000);})})</script></head><body><button id="btn01">显示和隐藏</button><img src="img/时间.jpg " width="100px" height="100px" /></body>
</html>
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><style type="text/css">.divFrame {border: solid 1px #666;width: 197px;text-align: center;}.divFrame .divTitle {background-color: #eee;padding: 5px 0px 5px 0px}.divFrame .divContent {padding: 5px 0px 5px 0px}.divFrame .divContent img {border: solid 1px #eee;padding: 2px;width: 120px;height: 120px;}</style><script type="text/javascript" src="../js/jquery-1.8.2.js"></script><script type="text/javascript">$(function() {$("#Select1").change(function(){var value = $(this).val();$("img").fadeTo(1000,value);})})</script></head><body><div class="divFrame"><div class="divTitle"><select id="Select1"><option value="0.2">0.2</option><option value="0.4">0.4</option><option value="0.6">0.6</option><option value="0.8">0.8</option><option value="1.0" selected="selected">1.0</option></select></div><div class="divContent"><img src="../img/石像.jpg" alt="" title="风景图片" /></div></div></body></html>

自定义动画

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><style type="text/css">.divFrame {border: solid 1px #ccc;background-color: #eee;width: 60px;height: 60px;font-size: 13px;padding: 5px}</style><script type="text/javascript" src="../js/jquery-1.8.2.js"></script><script type="text/javascript">$(function() {/** 需求:* 		当点击图层的时候,图层的宽度变为200px,高度为100px,共经历3秒完成* 		3秒后,字体大小为50px,*/$("div").click(function(){$(this).animate({"width":"200px","height":"100px"},3000,function(){$(this).css("font-size","50px");});})})</script></head><body><div class="divFrame">点击变大</div></body></html>

.animate({},3000,function(){})

jQuery的Ajax

加载文件

加载HTML

.load()

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="../js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){$("button").click(function(){$("div").load("index.html");})})</script></head><body><button>加载页面</button><div></div></body>
</html>

加载JSON数据

[{"name":"张三","age":18},{"name":"李四","age":23}
]
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){$("#btn01").click(function(){$.getJSON("jQuery的Ajax/new_file.json",function(data){$.each(data, function(index,stu) {
//							console.log(data[index].name+"--"+data[index].age);console.log(stu.name+"--"+stu.age);});})})})</script></head><body><button id="btn01">加载JSON数据</button></body>
</html>

加载JavaScript

$.getJSON("new_file.json",function(data){$.each(data,function(index,stu){console.log(stu.name + " -- " + stu.age);})
})
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="../js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){$("#btn01").click(function(){$.getScript("new_file.js");})})</script></head><body><button id="btn01">加载JS数据</button></body>
</html>

加载xml

<?xml version="1.0" encoding="UTF-8" ?>
<students><student><name>张三</name><age>18</age></student><student><name>李四</name><age>23</age></student>
</students>
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script src="../js/jquery-1.8.2.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){$("#btn01").click(function(){$.get("new_file.xml",function(data){$(data).find("student").each(function(){var name = $(this).find("name").text();var age = $(this).find("age").text();console.log(name+"--"+age);})})})})</script></head><body><button id="btn01">加载JS数据</button></body>
</html>

与服务器交互

<script type="text/javascript">function fun01(){window.location = "welcome.html";}$(function () {var bool = false;document.getElementById("registerForm").onsubmit = function (){return bool;//只有账号可以注册时才允许提交};$("#username").blur(function (){$.get("Student?action=isRegister",{"username":$(this).val()},function (data){console.log(data);if(data=="1"){$("#username+span").text("恭喜,账号可以注册");$("#username+span").css("color","green");bool = true;}else if(data=="-1"){$("#username+span").text("抱歉,该账号已被注册");$("#username+span").css("color","red");bool = false;}})})function  showProvince(){$.post("User",{"action":"getProvinces"},function (data){var pros = eval(data);for (let i = 0; i < pros.length; i++) {var option = $("<option></option>");$(option).val(pros[i].code);$(option).text(pros[i].name);$("#province").append($(option));}})}showProvince();$("#province").change(function (){$.post("User",{"action":"getCities","parentCode":$(this).val()},function (data){$("#city").text("");var cities = eval(data);for (let i = 0; i < cities.length; i++) {var option = $("<option></option>");$(option).val(cities[i].code);$(option).text(cities[i].name);$("#city").append($(option));}})})})</script>
serialize()-序列化表单

表单中带name属性的组件都会拼接成xxx=xxx&xxxx=xxxx…

$.ajax()

除了可以使用全局性函数load()、get()、post()实现页面的异步调用和与服务器交互数据外,在jQuery中,还有一个功能更为强悍的最底层的方法$.ajax(),该方法不仅可以方便地实现上述三个全局函数完成的功能,更多地关注实现过程中的细节

jQuery.ajax(url,[settings])

列举几个常用的回调函数

如果要处理$.ajax()得到的数据,则需要使用回调函数。beforeSend、error、success、complete。

· beforeSend 在发送请求之前调用,并且传入一个XMLHttpRequest作为参数。

· error 在请求出错时调用。传入XMLHttpRequest对象,描述错误类型的字符串以及一个异常对象(如果有的话)

· success 当请求之后调用。传入返回后的数据,以及包含成功代码的字符串。

complete 当请求完成之后调用这个函数,无论成功或失败。传入XMLHttpRequest对象,以及一个包含成功或错误代码的字符串。

利用$.ajax提交表单
$(function () {$("input[type='button']").click(function (){$.ajax({type:"post",url:"Student",data:$("#registerForm").serialize(),//序列化表单,表单中带name属性的组件都会拼接成xxx=xxx&xxx=xxx...async:true,success:function (data) {alert(data);}})})

Bootstrap

目前最受欢迎的前端框架

优势

移动设备优先,浏览器支持,容易上手,响应式设计。

使用

利用CDN:

加载链接地址即可使用,不用下载包(注意加载有先后顺序)。

提供了很多现成的样式可以直接使用。

标签 图片 列表组 表格 模态框
可视化布局

https://www.bootcss.com/p/layoutit

Maven

含义

Maven是一个构建项目的工具,也是一个管理项目的工具。

应用

1.构建项目

2.管理依赖

3.做项目的热部署

4.基于项目做多模块的构建

安装

注意:Maven不需要安装,下载解压就行。

1.配置环境变量

M2_HOME: 路径

path: %M2_HOME%\bin

2.验证是否配置成功

打开cmd,输入mvn -version

使用命令创建java项目

  1. 进入工作空间,取名(xxxMavenWorkspace)。
  2. cd C:\MavenWorkspace 进入到此目录。
  3. 输入命令来找模板 mvn archetype:generate
  4. 默认出现10个常见的模板 默认选择的是 7号模板(用来创建 java项目org.apache.maven.archetypes:maven-archetype-quickstart)
  5. 填写groupId – 组别(可以简单认为是包名)
  6. 填写 artifactId – 项目名
  7. 填写 version – 版本号(这个直接默认就好,一般情况下不改)
  8. 填写 package – 包名(默认是groupId,这里默认就好)
  9. 输入 Y (确定)
  10. 构建项目
项目目录解析

MavenWorkspace\JavaTest01\src

MavenWorkspace\JavaTest01\src\main

C:\MavenWorkspace\JavaTest01\src\main\java 存放java源文件

C:\MavenWorkspace\JavaTest01\src\test 存放测试文件MavenWorkspace\JavaTest01\pom.xml 插件管理、项目的依赖管理、整个项目自己的坐标

运行项目
  1. cd C:\MavenWorkspace\JavaTest01 进入此目录

  2. mvn package项目打包,此时会在项目根目录中生产target文件夹

  3. cd C:\MavenWorkspace\JavaTest01\target 进入此目录

  4. java -cp JavaTest01-1.0-SNAPSHOT.jar com.dream.test01.App 运行代码

注意:mvn clean-----清空target文件mvn install :打包并将这个jar文件放到本地仓库(管理jar文件的本地库)mvn test:运行所有的测试用例

使用命令创建web项目

  1. 进入工作空间,取名(xxxMavenWorkspace)。
  2. cd C:\MavenWorkspace 进入到此目录。
  3. 输入命令来找模板 mvn archetype:generate
  4. 默认出现10个常见的模板 默认选择的是 7号模板(用来创建 java项目org.apache.maven.archetypes:maven-archetype-quickstart),这里选择10号
  5. 填写groupId – 组别(可以简单认为是包名)
  6. 填写 artifactId – 项目名
  7. 填写 version – 版本号(这个直接默认就好,一般情况下不改)
  8. 填写 package – 包名(默认是groupId,这里默认就好)
  9. 输入 Y (确定)
  10. 构建项目
项目目录解析

MavenWorkspace\WebTest01\src

MavenWorkspace\WebTest01\src\main

MavenWorkspace\WebTest01\src\main\resources存放资源文件MavenWorkspace\WebTest01\src\main\webapp 存放前端资源和 web.xmlC:\MavenWorkspace\WebTest01\pom.xml 插件管理、项目的依赖管理、整个项目自己的坐标

注意:mvn package项目打包,此时会在项目根目录中生产target文件夹

IDEA中配置Maven

  1. 配置maven的国内仓库/中央仓库位置:C:\apache-maven-3.6.0\conf\settings.xml

    <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></mirrors>
    
    1. 配置maven的本地仓库位置:C:\apache-maven-3.6.0\conf\settings.xml

      <!--   localRepository    | The path to the local repository maven will use to store artifacts.    |    | Default: ${user.home}/.m2/repository   <localRepository>/path/to/local/repo</localRepository>-->  <localRepository>C:\.m2\repository</localRepository>
      

    3.在IDEA中配置Maven – File–> Setting
    在这里插入图片描述

在IDEA中操作Java项目

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

在IDEA中操作Web项目

在这里插入图片描述
其余步骤同上解析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 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <!--项目坐标--> <groupId>com.dream.test01</groupId> <artifactId>WebTest02</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <!--	<packaging>jar</packaging>打包的时候打包成jar文件 - Java项目	<packaging>war</packaging>打包的时候打包成war文件 - Web项目	<packaging>pom</packaging>不打包,表示聚合项目工程 -->  <name>WebTest02 Maven Webapp</name> <!-- FIXME change it to the project's website --> <url>http://www.example.com</url>  <properties>  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  <maven.compiler.source>1.8</maven.compiler.source>  <maven.compiler.target>1.8</maven.compiler.target> </properties>  <!--项目的jar依赖--> <dependencies>  <dependency>   <groupId>junit</groupId>   <artifactId>junit</artifactId>   <version>4.11</version>   <scope>test</scope><!--表示在测试的时候有效-->  </dependency>   <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->  <dependency>   <groupId>javax.servlet</groupId>   <artifactId>javax.servlet-api</artifactId>   <version>4.0.1</version>   <scope>provided</scope><!--表示在编译和测试过程中有效,最后生成的war包时不会加入-->  </dependency> </dependencies>  <!--项目的构建的时候使用的信息--> <build>  <finalName>WebTest02</finalName> </build></project>

****注意:编写java代码的位置问题****在web项目中对的src/main中创建java并设置成源码文件夹在这里插入图片描述

在IDEA中操作聚合项目**(父工程项目/**多模块构建)

在这里插入图片描述
其余步骤同上****目录解析**😗在这里插入图片描述
*创建子级工程*
*😗***右键父级工程 --> new --> moudle—后面的步骤和创建单个工程一样使用maven构建项目的时候 需要先找模板 通过模板来创建 项目

聚合项目中工程之间相互引用

含义:在一个子级工程中引用另一个子级工程中的资源在子级工程pom.xml中配置另一个子级工程的项目坐标

<dependencies> <dependency>  <artifactId>StudentManagerSystemPojo</artifactId>  <groupId>com.dream.test01</groupId>  <version>1.0-SNAPSHOT</version> </dependency><dependencies>

Maven管理项目依赖

含义:在Maven仓库中寻找Jar包仓库分类:本地仓库:本地的一个文件夹,用来存放所有的jar包,由自己维护 远程仓库(或私服):由公司或单位创建的一个仓库,由公司维护 中央仓库:互联网上的仓库,由Maven团队维护(国内一般设计阿里云为中央仓库,下载jar更快)寻找流程:本地仓库 --> 远程仓库(或私服) --> 中央仓库导包流程:1. https://mvnrepository.com查询jar包描述2. 在项目pom.xml中配置jar包描述,IDEA将jar包下载到本地仓库即可在这里插入图片描述

导包:https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload/1.5

问题一:IDEA创建新的maven项目时需要反复修改下载路径,以及创建项目后没有src。

解决方案:file中选择close project,退回到全局设置 ,在Customize中找到All settings,进去后在build里修改maven的runner,添加 “-DarchetypeCatalog=internal” ,并在maven中修改home_path,settings file和loacl repository分别指定自己maven的位置以及maven中的config下的setting.xml文件,和本地jar包存储仓库。设置完毕后点击ok保存。再次创建项目时就有src,并且不用修改下载路径了。

问题二:即使导入了el的相关jar包,但是仍然无法识别el表达式?

原因: 自动生成的web.xml文件的web-app版本是2.3的,导致EL表达式混乱,因为EL表达式是2.4以上版本才支持的。

解决方案:1.找到maven-archetype-webapp的jar包位置 ,如C:.m2\repository\org\apache\maven\archetypes\maven-archetype-webapp\1.0, Maven后边的路径应该是一样的 。

2.用压缩包的形式打开jar包,然后找到 archetype-resources\src\main\webapp\WEB-INF\web.xml ,用记事本打开,将里面的内容修改为(tomcat的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_4_0.xsd"version="4.0"><display-name>Archetype Created Web Application</display-name></web-app>

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

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

相关文章

云南省森林管理新篇章:可视化大屏引领绿色智慧革命

在云南省这片绿意盎然的土地上&#xff0c;森林不仅是自然的宝藏&#xff0c;更是生态的守护者。 想象一下&#xff0c;站在巨大的屏幕前&#xff0c;云南省的森林分布、生长状况、病虫害情况等信息一目了然&#xff0c;仿佛拥有了一双能够洞察森林奥秘的“智慧眼”。这正是森林…

输入/输出文字

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在海龟绘图中&#xff0c;也可以输入或者输出文字&#xff0c;下面分别进行介绍。 1 输出文字 输出文字可以使用write()方法来实现&#xff0c;语…

浊度传感器设备的监测控制和智慧运维

浊度传感器是一种用于测量液体中悬浮颗粒浓度从而反映液体浊度的设备。 其工作原理主要基于以下几种常见方式&#xff1a; 1. 散射光测量原理&#xff1a;当光线穿过含有悬浮颗粒的液体时&#xff0c;颗粒会使光线发生散射。传感器通过测量特定角度的散射光强度来确定浊度。散…

骑马与砍杀战团mod制作-基础-对话制作笔记(四)

骑马与砍杀战团mod制作-基础-对话制作笔记&#xff08;四&#xff09; 资料来源 学习的资料来源&#xff1a; b站【三啸解说】手把手教你做【骑砍】MOD&#xff0c;基础篇&#xff0c;链接为&#xff1a; https://www.bilibili.com/video/BV19x411Q7No?p4&vd_sourcea507…

免费领!系统学习上位机编程的流程与基础教程

上位机电气自动化plc编程全套入门教程工具 华山编程导师根据当前招聘需求的关键点&#xff0c;原创录制了一套系统的学习流程和基础教程&#xff0c;帮助你从快速入门到掌握上位机编程的技能。 二. 学习准备 为了更好地学习并实现80%以上的代码运行&#xff0c;建议准备一个工…

Android音频系统

最近在做UAC的项目&#xff0c;大概就是接收内核UAC的事件&#xff0c;也就是声音相关事件。然后就是pcm_read和AudioTrackr->write之间互传。感觉略微有点奇怪&#xff0c;所以简单总结一下。 1 UAC的简要流程 open_netlink_socket 打开内核窗口&#xff0c;类似于ioctl。…

[leetcode]valid-triangle-number. 有效三角形的个数

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int triangleNumber(vector<int>& nums) {int n nums.size();sort(nums.begin(), nums.end());int ans 0;for (int i 0; i < n; i) {for (int j i 1; j < n; j) {int left j 1, righ…

大模型RAG技术:构建高效、可信赖的知识检索系统

前言 LLM 问题 幻觉&#xff1a;在没有答案的情况下提供虚假信息。 过时&#xff1a;当用户需要特定的当前响应时&#xff0c;提供过时或通用的信息。 来源&#xff1a;从非权威来源创建响应。由于术语混淆&#xff0c;不同的培训来源使用相同的术语来谈论不同的事情&#…

制造业包括哪些?需要堡垒机吗?

制造业-国民经济的主体&#xff0c;是立国之本、兴国之器、强国之基&#xff0c;一个关系着大家吃穿住行的行业&#xff0c;一个与大家息息相关的行业。但大家对于制造业还有很多不了解&#xff0c;有小伙伴在问&#xff0c;制造业包括哪些&#xff1f;需要堡垒机吗&#xff1f…

k8s使用Endpoint将信息存储到集群外部数据库

https://mp.csdn.net/mp_blog/creation/editor/139864305 上一篇文章

引领AI新时代:深度学习与大模型的关键技术

文章目录 &#x1f4d1;前言一、内容概述二、作者简介三、书籍特色四、学习平台与资源 &#x1f4d1;前言 在数字化浪潮席卷全球的今天&#xff0c;人工智能&#xff08;AI&#xff09;和深度学习技术已经渗透到我们生活的方方面面。从智能手机中的智能语音助手&#xff0c;到…

20.流入门

学习知识&#xff1a;输入流和输出流读文件的简单使用 test.txt&#xff1a; iloveu是我爱你的意思。 Main.java import java.io.*;public class Main {public static void main(String[] args) {// 1.利用输入流读文件//读取test.txt并输出文件内容try{FileInputStream in…

分类预测 | Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测

分类预测 | Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测 目录 分类预测 | Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测&#xff0c;…

【Hadoop集群搭建】集群崩溃处理及启动时常见报错解决办法

目录 1. 集群崩溃处理 1.1 杀死进程 1.2 删除目录&#xff08;logs/和hadoopdata/&#xff09; 1.3 重新初始化集群 1.4 重新启动集群 2. 启动时常见报错 2.1 报错如下 2.2 在运行程序测试 MapReduce 计算框架时报错如下 2.3 报错如下 1. 集群崩溃处理 1.1 杀死进程 sbin/st…

SpringBoot优点达项目实战:项目基本配置(二)

SpringBoot优点达项目实战&#xff1a;项目基本配置&#xff08;二&#xff09; 文章目录 SpringBoot优点达项目实战&#xff1a;项目基本配置&#xff08;二&#xff09;1、项目初始化配置2、MyBatisPlus配置3、Knife配置4、定义统一返回数据结构 1、项目初始化配置 创建appli…

学习笔记——动态路由——RIP(RIP工作原理/防环机制)

三、RIP工作原理/防环机制 1、工作原理 配置好RIP的路由器会每隔30s,向邻居路由器自动发送RIP路由更新报文。报文里面携带了其所知道的所有路由。 通过发送数据包进行路由信息的交互&#xff0c;路由器启动RIP协议&#xff0c;向周围邻居路由器传递request(请求)response(响…

克隆网站的风险

克隆网站的风险 随着互联网的快速发展&#xff0c;克隆网站也变得越来越常见。克隆网站是指复制原始网站的外观和功能&#xff0c;并伪装成原始网站。虽然克隆网站可以提供与原始网站相似的服务和体验&#xff0c;但它们也带来了一系列风险。本文将探讨克隆网站的风险&#xff…

Docker 从入门到精通(大全)

一、概述 1.1 基本概念 Docker 是一个开源的应用容器引擎&#xff0c;基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现虚拟化。…

bigtop gradle 任务依赖关系

./gradlew deb 会编译ubuntu的所有deb包 任务deb会依赖17个任务&#xff0c;它们会按字母排序执行&#xff0c;如下&#xff1a; alluxio-deb bigtop-groovy-deb bigtop-jsvc-deb bigtop-utils-deb flink-deb hadoop-deb hbase-deb hive-deb kafka-deb livy-deb phoenix-deb …

这5款国内可用的宝藏AI视频工具,不允许有人还不知道!(建议收藏)

文章首发于公众号&#xff1a;X小鹿AI副业 大家好&#xff0c;我是程序员X小鹿&#xff0c;前互联网大厂程序员&#xff0c;自由职业2年&#xff0c;也一名 AIGC 爱好者&#xff0c;持续分享更多前沿的「AI 工具」和「AI副业玩法」&#xff0c;欢迎一起交流~ 前几天一位粉丝说给…