Matlab 2024a 保姆级安装教程

一、下载地址(百度网盘) 百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间https://pan.baidu.com/s/1p-Hi_PE8VQV0niHkWezi3g?pwd=6789 提取码:6789 二、软件介绍 MATLAB是一款商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分,可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 三、安装步骤 1.解压安装包:①鼠标右击【MATLAB R2024a(64bit)】压缩包②选择电脑上安装的解压软件(如:360压缩)③点击【解压到MATLAB R2024a(64bit)】。 2.打开解压后的文件夹,双击打开【Setup】文件夹。 3.鼠标右击【setup】选择【以管理员身份运行】。 4.点击【高级选项】选择【我有文件安装密钥】。 5.选择【是】,点击【下一步】。 6.输入安装密钥【2147121471-07182-41807-00726-32378-34241-61866-60308-44209-03650-51035-****-63953】(由于开发平台不宜发布重要信息,安装秘钥请私信博主获取),点击【下一步】。 7.点击【浏览】。 8.选择解压后的【MATLAB R2024a(64bit)】文件夹中【Crack】文件夹下的【licese.lic】,点击【打开】。 9.点击【下一步】。 10.修改路径地址中的第一个字符C可更改安装位置(如:把C改为D软件将安装到D盘),点击【下一步】。 11.点击【下一步】。 12.勾选【添加桌面快捷方式】,点击【下一步】。 13.点击【开始安装】。 14.安装中…… 15.点击【关闭】。 16.打开解压后的【MATLAB R2024a(64bit)】文件夹,双击打开【Crack】文件夹。 17.鼠标右击【win64】文件夹选择【复制】。 18.鼠标右击桌面【【MATLAB R2024a】图标选择【打开文件所在的位置】。 19.鼠标右击空白处选择【粘贴】。 20.点击【替换目标中的文件】。 21.双击桌面【【MATLAB R2024a】图标启动软件。 22.安装成功! 【说明:图片均来自软件管家,如有侵权,请联系博主删除!】 更多软件安装教程更新中...... 关注博主不迷路

Flutter 中的 ElevatedButton 小部件:全面指南

Flutter 中的 ElevatedButton 小部件:全面指南 Flutter 提供了多种按钮小部件,每种都有其独特的用途和样式。ElevatedButton 是其中一种,它代表了具有凸起效果的按钮,通常用于 Material Design 风格的应用中。本文将为您提供一个全面的指南,帮助您了解如何使用 ElevatedButton 来增强用户界面的交互性。 什么是 ElevatedButton? ElevatedButton 是 Flutter 的 Material 组件库中的一个按钮小部件,它具有凸起的视觉效果,当用户按下按钮时,按钮会下沉,给人一种按钮被按下的感觉。这种按钮通常用于主行动的触发,如提交表单或打开新页面。 为什么使用 ElevatedButton? 使用 ElevatedButton 有以下几个好处: 视觉突出:凸起的按钮在界面上更为显眼,可以吸引用户的注意力。符合 Material Design:ElevatedButton 遵循 Material Design 的设计原则,确保了与 Material 风格的应用界面的一致性。反馈明显:按钮的按下和释放提供了明显的触觉和视觉反馈。 如何使用 ElevatedButton 基本用法 以下是 ElevatedButton 的基本用法示例: import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'ElevatedButton Demo', home: MyHomePage(), ); } } class MyHomePage extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('ElevatedButton Demo'), ), body: Center( child: ElevatedButton( onPressed: () { print('Button was pressed!

不同 Android Studio 版本的 SDK 及 NDK 选择

从 2020 年开始,Android Studio 每年都升级 3 个版本,某些版本甚至有 Patch,对于这些新的版本更新,还是很有必要的: 1. 新功能和改进:不同版本的 Android Studio 会引入新的功能和改进,例如性能优化、新的集成开发工具、新的 API 等。 2. 错误修复和安全补丁:每个新版本都会修复先前版本中的错误和漏洞,并提供安全补丁,以确保开发者和用户的数据安全。 3. 兼容性:每个新版本都会提供对最新 Android 操作系统版本的支持,以便开发者可以利用最新的功能和 API。 4. 支持新硬件:新版本的 Android Studio 会提供对最新硬件设备的支持,这意味着开发者可以在最新设备上进行开发和测试。 5. 开发生态系统更新:随着时间的推移,Android 生态系统不断发展和更新,每个新版本的Android Studio 都会跟进这些更新,以便开发者可以更好地适应和利用这些变化。 Android Studio 版本Koala | 2024.1.1 树袋熊Jellyfish | 2023.3.1水母Iguana | 2023.2.1鬣蜥Hedgehog | 2023.1.1刺猬Giraffe | 2022.3.1长颈鹿Flamingo | 2022.2.1火烈鸟Electric Eel | 2022.1.1电鳗Dolphin | 2021.3.1海豚Chipmunk | 2021.2.1花栗鼠Bumblebee | 2021.1.1大黄蜂Arctic Fox | 2020.3.1北极狐 不同版本的 Android Studio 通常都支持使用最新版本的 SDK 和 NDK,对于新的项目来说,没有问题,但对于一些老的项目,可能用到了一些特定的库,因此也需要某些特定的版本。 在 Android Studio 中,除了使用最新版本的 SDK 和 NDK,也可以使用旧版本的 SDK 和 NDK。

华为ensp中链路聚合两种(lacp-static)模式配置方法

作者主页:点击! ENSP专栏:点击! 创作时间:2024年4月26日11点54分 链路聚合(Link Aggregation),又称为端口聚合(Port Trunking),是一种将多条物理链路聚合成一条逻辑链路的技术。它可以提高网络带宽、增强网络冗余性和改善网络负载均衡。 💯趣站推荐💯 前些天发现了一个巨牛的🤖人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家,人工智能, 机器算法等...... 点击跳转网页!https://www.captainbed.cn/sis 链路聚合的作用 提高网络带宽 链路聚合可以将多条物理链路的带宽叠加起来,从而提供更高的带宽。例如,将两条 1 Gbps 的物理链路聚合在一起,可以提供 2 Gbps 的带宽。 增强网络冗余性 如果一条或多条物理链路出现故障,链路聚合可以将流量自动切换到其他正常的链路上,从而保证网络的正常运行。 改善网络负载均衡 链路聚合可以将流量在多条物理链路上进行均衡分配,从而提高网络的整体性能。 使用场景 需要高带宽的网络,例如服务器集群、数据中心等。需要高可靠性的网络,例如金融机构、医疗机构等。需要负载均衡的网络,例如大型企业网络、ISP 网络等。 手动模式配置 实验拓扑 LSW1基本配置 <Huawei>sys Enter system view, return user view with Ctrl+Z. [Huawei]un in en Info: Information center is disabled. [Huawei]int eth-trunk 10 [Huawei-Eth-Trunk10]trunk [Huawei-Eth-Trunk10]trunkport g 0/0/1 to 0/0/3 Info: This operation may take a few seconds. Please wait for a moment...done. [Huawei-Eth-Trunk10]port link-type trunk [Huawei-Eth-Trunk10]port trunk allow-pass vlan all [Huawei-Eth-Trunk10]q int eth-trunk 10 :进入Eth-Trunk 10的接口配置模式。

【二叉树】:LeetCode:100.相同的数(分治)

🎁个人主页:我们的五年 🔍系列专栏:初阶初阶结构刷题 🎉欢迎大家点赞👍评论📝收藏⭐文章 1.问题描述: 2.问题分析: 二叉树是区分结构的,即左右子树是不一样的。本题还是采用分治的思想,要让两棵子树相等,只要让根相等,左子树相等,右子树相等就可以了。 力扣官方给的函数模型: bool isSameTree(struct TreeNode* p, struct TreeNode* q) { } 能往下走的条件是根一样。能往下走的条件我们不管,要管的是不能往下走的时候,之间返回false。 if(p->val!=q->val) return false; 最小子问题是:根都一样,q和p要么都为空,要么有一个为空。 走到有一颗子树的根为NULL,就进行判断。 /** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ bool isSameTree(struct TreeNode* p, struct TreeNode* q) { if(p==NULL&&q==NULL) { return true; } if(p==NULL||q==NULL) { return false; } if(p->val!=q->val) return false; return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right); } if(p==NULL&&q==NULL)

基于springboot+vue+Mysql的休闲娱乐代理售票系统

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9 系统展示 系统首页 用户注册 折扣票界面 个人中心 后台登录 管理员功能 用户管理 折扣票管理 分类管理 订单管理 退票管理 出票管理 系统管理 用户功能界面 个人中心 我的收藏 摘要 休闲娱乐代理售票系统能够通过互联网得到广泛的、全面的宣传,让尽可能多的用户了解和熟知休闲娱乐代理售票系统的便捷高效,不仅为群众提供了服务,而且也推广了自己,让更多的群众了解自己。对于休闲娱乐代理售票而言,若拥有自己的系统,通过系统得到更好的管理,同时提升了形象。 本系统设计的现状和趋势,从需求、结构、数据库等方面的设计到系统的实现,分别为管理员和用户的实现。论文的内容从系统的设计、描述、实现、分析、测试方面来表明开发的过程。本系统根据现实情况来选择一种可行的开发方案,借助java编程语言和MySQL数据库等实现系统的全部功能,接下来对系统进行测试,测试系统是否有漏洞和测试用户权限来完善系统,最终系统完成达到相关标准。 研究背景 21世纪,我国早在上世纪就已普及互联网信息,互联网对人们生活中带来了无限的便利。像大部分的企事业单位都有自己的系统,由从今传统的管理模式向互联网发展,如今开发自己的系统是理所当然的。休闲娱乐代理售票系统能够通过互联网得到广泛的、全面的宣传,让尽可能多的用户了解和熟知休闲娱乐代理售票系统的便捷高效,不仅为群众提供了服务,而且也推广了自己,让更多的群众了解休闲娱乐代理售票管理系统。 关键技术 SpringBoot是一个全新开源的轻量级框架。基于Spring4.0设计,其不仅继承了Spring框架原来有的优秀特性,而且还通过简化配置文件来进一步简化了Spring应用的整个搭建以及开发过程。另外在原本的Spring中由于随着项目的扩大导入的jar包数量越来越大,随之出现了jar包版本之间的兼容性问题,而此时SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性问题得到了很好的解决。 JAVA语言是目前软件市场上应用最广泛的语言开发程序。可以在多种平台上运用的,兼容性比较强,适应市面上大多数操作系统,不会出现乱码的现像,其扩展性和维护性都更好,具有分析问题和解决问题的能力,是面向过程的程序设计方便我们编写的代码更强壮。 Vue是一款流行的开源JavaScript框架,用于构建用户界面和单页面应用程序。Vue的核心库只关注视图层,易于上手并且可以与其他库或现有项目轻松整合。 MYSQL数据库运行速度快,安全性能也很高,而且对使用的平台没有任何的限制,所以被广泛应运到系统的开发中。MySQL是一个开源和多线程的关系管理数据库系统,MySQL是开放源代码的数据库,具有跨平台性。 B/S(浏览器/服务器)结构是目前主流的网络化的结构模式,它能够把系统核心功能集中在服务器上面,可以帮助系统开发人员简化操作,便于维护和使用。 系统分析 对系统的可行性分析以及对所有功能需求进行详细的分析,来查看该系统是否具有开发的可能。 系统设计 功能模块设计和数据库设计这两部分内容都有专门的表格和图片表示。 系统实现 休闲娱乐代理售票系统,在系统首页可以查看首页、折扣票、公告信息、个人中心、后台管理等内容,并进行详细操作。用户登录进入系统前在登录页面根据要求填写用户名和密码,选择角色等信息,点击登录进行系统操作。管理员登录系统后,可以对首页、个人中心、用户管理、折扣票管理、分类管理、订单信息管理、退票信息管理、出票信息管理、系统管理等功能进行相应的操作管理。用户登录进入休闲娱乐代理售票系统可以对首页、个人中心、订单信息管理、退票信息管理、出票信息管理、我的收藏管理等功能进行相应操作。 系统测试 系统测试是软件开发过程中最后一步,但也是不可或缺的重要的一步,没有人可以保证一次性编写完成的系统不会出错,而系统测试就是将自己开发的系统成为成品前的最后一步。在测试过程中需要进行严谨细致的测试,要尽可能全面地在不同情况下运行该系统,排除一切出现错误的可能。 系统测试不仅仅是发现系统潜在的BUG或错误,而更为重要的是为用户提供一个良好的体验和安全可使用的产品服务。而通过发现错误或潜在的问题,将有助于提升产品的竞争力,这也是软件测试的其中的重要目的之一。 结论 通过完成该休闲娱乐代理售票系统和本论文的撰写让我更加明白了软件开发过程中软件工程思想的重要性。在项目的前期由于对需求分析做的不够谨慎和明确,导致了后面在设计甚至编码时候造成了许多不必要的麻烦。由此在今后的学习和工作开发之中必须要牢牢把握住软件工程的设计思想和方法,这样可以进一步保证项目开发的健壮性和准确性。 本网站所实现的是一个休闲娱乐代理售票系统,该系统严格按照需求分析制作相关模块,并利用所学知识尽力完成,但是本人由于学识浅薄,无法真正做到让该程序可以投入市场使用,仅仅简单实现部分功能,希望日后还能改善。 (可运行源码+sql文件+文档)

基于 Hive 数据仓库的教育大数据分析平台(伪分布式)

一、Hive 部署 (一)Linux 环境搭建 一、虚拟机的安装 VMware (Virtual Machine ware )是一个“虚拟 PC ”软件公司,提供服务器、桌 面虚拟化的解决方案。 使用的虚拟软件: VMware15 二、Linux 系统安装 1. 环境准备 VMware15.5 pro Centos7 镜像文件 (mini) 2. 虚拟机安装 2.1 新建虚拟机,选择自定义 2.2 选择下一步安装程序光盘映像文件( iso ) 2.3 选择稍后安装操作系统 2.4 选择Liunx(L)版本Centos7 2.5 选择虚拟机的名称和位置 2.6配置处理器的数量和每个处理器的内核数量 2.7配置虚拟机的内存 2.8配置网络类型 2.9选择 I/OK控制器类型 2.10选择 虚拟磁盘类型 2.11选择磁盘 2.12配置磁盘大小 2.13配置系统 2.14 完成配置开启虚拟机 三、Centos 系统安装 1. 开启虚拟机 2. 安装 CentOS7 3. 选择语言(默认为 English ) 4. 日期和时间亚洲 / 上海(这里默认为最小) 5. 安装位置 6. 系统网络 7.

【C++初阶】—— 类和对象 (上)

📝个人主页🌹:EterNity_TiMe_ ⏩收录专栏⏪:C++ “ 登神长阶 ” 🌹🌹期待您的关注 🌹🌹 类和对象 1. 初步认识C++2. 类的引入3. 类的定义声明和定义全部放在类体中声明和定义分开存放 4. 类的访问限定符5. 类的实例化6. 类对象模型如何计算类对象的大小类对象的存储方式 7. this指针this指针的特性 8. 总结 前言:在前面几节我们为正式进入C++做足了铺垫,现在我们有了足够的基础让我们进入C++,让我们来进入类和对象来真正了解C++! 本篇主要内容: 类的相关知识 this指针 1. 初步认识C++ 1. 我们知道之前学习的C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。 2. C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成 举个例子,就像我们洗衣服,在C语言中我们需要一步一步按过程操作来手洗,而C++则是有了很多对象,对象间相互交互来完成洗衣服! 2. 类的引入 C语言结构体中只能定义变量,不可以定义函数,但是在C++中,结构体内不仅可以定义变量,也可以定义函数。 struct pxt { char b[100] = { "hello world!" }; int a = 2024; void test() { cout << "hello world!" << endl; } }; int main() { pxt xyyj; xyyj.test(); cout << xyyj.b << endl; return 0; } 上面结构体的定义就是类,但在C++中更喜欢用class来代替

IPv4组播——组播IP,MAC地址,组播网络基本架构

目录 一.组播的好处 二.组播实现原理 1.组播IP地址 2.组播MAC地址 (1)前24位 (2)第25位 (3)低23位 三.组播网络基本架构 1.源端网络 2.组播转发网络 3.成员端网络 四.组播服务类型 根据组播源分 五.组播转发过程 (1).组播转发需要依赖IP路由表 (2).解决依赖路由表产生的问题 RPF——反向路径转发 六.组播分发树 1.路径无环,五次优路径,无重复包 2.组播转发查看信息 3.组播协议 我们之前对广播,单播都有一定的了解,广播可以理解为“大嘴巴”,把想传递的消息发给所有人,属于点到多点(点到所有)的业务,单播像是”小社恐“,只和人单独说话,私聊,属于点到单点的业务。那么组播其实也很好理解,也是点到多点的业务,但只是加入组中才能接收消息。那么组播是如何实现分组传递消息的呐? 一.组播的好处 点到多点业务使用单播或广播都有一定的限制性,那么组播的好处就非常明显了。 1.实现跨网段通信 2.单一信息流沿组播分发树(组播路由建立)被发给同一组用户 可实现按组发送信息 3.一个组播源同组客户间通信。 4.业务源压力小 5.安全,对网络,带宽利用率高 二.组播实现原理 我们要传输一个数据,需要知道目的IP或者说网段,下一跳,出接口。 组播实现其实就是把目的地址搞成组播组 1.组播IP地址 我们在学习IP v4时有学到,地址有A,B,C,D,E类 其中D类地址是组播地址,224..0.0.0-230.255.255.255 组播IP也有他的分类 244.0.0.0 ——224.0.0.255 ///永久组地址,为路由协议所用,例如OSPF其实是组播泛洪,224.0.0.5——所有OSPF接收,224.0.0.6为DR/BDR接收 224.0.2.0 ——231.255.255.255 ///any-source,任意源模型,不要求组播源,用户接收时荤素不忌,发个他他都收 233.0.0.0 ——238.255.255.255 ///any-source,这两个地址可以看作是一类 232.0.0.0——232.255.255.255 ///指定源地址,只接收指定源的信息 239.0.0.0——239.255.255.255 ///本地管理级,临时组播地址,目前不太使用 小Tips: 任意源地址不要求组播源,在一个域中要求任意源地址不能相同,所有任意源所拥有的IP地址也是最多的。 2.组播MAC地址 组播也是传递数据的一种形式,基于OSI七层,有IP,也有MAC地址 组播MAC有48bit (1)前24位 固定,0X01005e,属于16进制 (2)第25位 固定为0 (3)低23位 由组播IP地址映射 DMAC(目的MAC)与组播组向对应 但是IP地址映射会导致5位信息丢失 IP地址前4位是固定的 但是这个事影响不大,IEIT组织定义组播通位,他认为影响不大,多组播地址映射到一个组播MAC几率很小(一涅涅),后23位不重复即可。 三.组播网络基本架构 1.源端网络 从组播源到第一跳路由器

JavaFX+MySQL实现图书管理系统(包含完整代码)

目录 一、功能介绍 1.ER图 2.学生管理员登陆页面 3.图书馆首页 4.学生图书馆搜索界面 5.学生注册 6.管理员后台 增加书籍 查看借阅记录 ​编辑 修改图书 二、功能分解 1.界面展示 2.点击按钮切换页面 普通按钮点击 复杂按钮点击 3.登录注册 创建登陆注册的页面(图为登录) 设置两个输入框的id 带有sql语句的方法 写登录页面登录按钮的点击方法 在FXML文件里设置控件点击事件 注册功能的sql语句方法 4.表格控件的绑定 实体类 表格控件的Controller类 FXML文件 给整个表格设置id 给各列设置id 5.增、删、改 从表格选择图书并删除 修改 6.模糊查询 7.左外连接查询 三、总代码 页面类 控制器类 HelloController类 图书馆控制类 搜索页面控制类 管理员后台控制类 增加图书页面控制类 修改图书控制类 管理员查看图书借阅记录控制类 实体类 图书馆 管理员后台类 type对应type-name类 JDBC封装以及一个带有sql语句的方法的类 SQL语句方法类 JDBC封装类 FXML文件 登录 登陆失败 注册 注册失败 管理员登陆 图书馆 搜索 借书成功 借书失败 还书成功 还书失败 管理员后台 查询借阅记录 修改图书 增加图书 增加成功

Stable Diffusion 实操教程:轻松掌握图像生成技术

一、引言 Stable Diffusion 是一种强大的图像生成技术,通过利用扩散模型,能够生成高质量的图像。在当前的人工智能领域,Stable Diffusion 已被广泛应用于艺术创作、图像增强和生成等多个领域。本篇文章将详细介绍 Stable Diffusion 的基础知识、操作步骤和进阶技巧,并通过实际案例演示其强大的应用潜力。 二、基础知识 1. 什么是 Stable Diffusion Stable Diffusion 是一种基于扩散过程的生成模型,通过逐步减少噪声来生成清晰的图像。与传统的生成对抗网络(GAN)相比,Stable Diffusion 在生成质量和稳定性方面具有显著优势,尤其在细节和纹理的处理上表现出色。 2. 准备工作 在使用 Stable Diffusion 之前,首先需要准备好相应的硬件和软件环境。一般来说,强大的 GPU 是必要的,因为图像生成过程计算量较大。此外,还需要安装 Python 以及一些必要的库,如 TensorFlow 或 PyTorch。 三、Stable Diffusion 的操作步骤 1. 数据准备 数据准备是使用 Stable Diffusion 的第一步。需要从公开数据集或自行收集的图像中准备训练数据。这些数据需要经过预处理,包括调整大小、归一化等,以适应模型的输入要求。 2. 模型训练 训练 Stable Diffusion 模型需要一些时间和计算资源。在训练过程中,需要设置模型参数,如学习率、批量大小等,并监控训练过程中的损失值,以确保模型逐渐收敛。 3. 图像生成 当模型训练完成后,就可以使用它来生成图像了。通过输入一些初始数据(如噪声图像或部分图像),模型可以生成完整的图像。生成过程中可以调整一些参数,以得到不同风格或特性的图像。 四、进阶技巧 1. 提高生成图像质量的技巧 为了提高生成图像的质量,可以在训练时使用更多的训练数据、进行数据增强、优化模型结构等。此外,还可以通过微调已训练好的模型,针对特定的应用场景进行优化。 2. 模型优化与加速 为了加快模型的训练和生成速度,可以使用 GPU 进行计算加速。同时,可以通过模型剪枝、量化等技术来优化模型,使其在保证生成质量的前提下更高效。 五、实际使用演示 1. 实战案例 案例一:生成艺术风格图像 # 导入必要的库 from stable_diffusion import StableDiffusionModel, preprocess_image, save_image

Android network — 进程指定网络发包

Android network — 进程指定网络发包 0. 前言1. 进程绑定网络1.1 App进程绑定网络1.2 Native进程绑定网络 2. 源码原理分析2.1 申请网络requestNetwork2.2 绑定网络 BindProcessToNetwork 3. 总结 0. 前言 在android 中,一个app使用网络,需要在manifest 申请一下 <uses-permission android:name="android.permission.INTERNET"/> 这种方式将使用default网络,比如WIFI 和 数据网络,android 同一个时间点,只能有一个default网络,default网络由Android 网络评分机制选择。 那有没有一种方式可以不使用默认网络呢,比如某一个App只想使用WiFi或者别的某一个网络,而不受默认网络变化的影响,答案是有的 1. 进程绑定网络 1.1 App进程绑定网络 对于App进程,ConnectivityService中提供了bindProcessToNetwork 接口进行绑定,使用说明如下 通过 requestNetwork 申请一个网络在NetworkCallback中的onAvailable的方法去调用bindProcessToNetwork 去bind这个网络上两步后APP的网络流量将会走这个network,或者说走这个network 指定的 网卡 补充说明一下 :NetworkRequest 在CS对应一个NetworkRequestInfo ,一般情况下一个NetworkRequestInfo对应了一个client进程 使用示例: NetworkRequest request = new NetworkRequest.Builder() .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) .addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR) .build(); mNetworkCallback = new ConnectivityManager.NetworkCallback() { @Override public void onAvailable(final Network network) { runOnUiThread(new Runnable() { @Override public void run() { // requires android.

Oracle JSON 函数详解与实战

Oracle 数据库提供了丰富的 JSON 函数集,使得开发者可以高效地处理 JSON 数据。本文将详细介绍这些函数,包括它们的语法、使用场景、具体示例,以及在实际项目中的应用。 文章目录 JSON_VALUE语法参数说明示例 JSON_QUERY语法示例 JSON_TABLE语法示例 JSON_EXISTS语法示例 JSON_OBJECT语法示例 JSON_ARRAY语法示例 JSON_MERGEPATCH语法示例 JSON_OBJECTAGG语法示例 JSON_ARRAYAGG语法示例 JSON_SCALAR语法示例 JSON_DATAGUIDE语法示例 实战应用场景场景一:从复杂 JSON 结构中提取多层嵌套数据示例数据查询示例 场景二:合并和更新 JSON 文档示例数据合并示例 JSON_VALUE JSON_VALUE 函数用于从 JSON 文档中提取单个标量值(如字符串、数字、布尔值)。它特别适合用于提取具体的字段值。 语法 JSON_VALUE(expression, path RETURNING data_type DEFAULT default_value ON ERROR error_clause) 参数说明 expression: JSON 数据的列或文本。path: JSON 路径表达式,指向要提取的值。data_type: 返回的数据类型。default_value: 如果未找到值时的默认值。error_clause: 发生错误时的处理方式。 示例 从 JSON 文档中提取名称为 “name” 的值,并指定返回类型为 VARCHAR2: SELECT JSON_VALUE('{"name": "John", "age": 30}', '$.name' RETURNING VARCHAR2) AS name FROM dual; JSON_QUERY JSON_QUERY 函数用于从 JSON 文档中提取 JSON 对象或数组,而不是单个标量值。

2024 好用免费的 AI 工具介绍

背景 简介:在当今数字化时代,人工智能(AI)技术的得到了迅猛发展。各种 AI 工具层出不穷,最火、使用最多且最智能的 AI 工具当属 OpenAI 公司推出的 ChatGPT 4.0。人们对于使用AI工具的喜好和认可度也在不断演变。本文将探讨人们在使用AI工具时最喜欢的和认为最好用的工具,展示AI技术的实际应用和影响。 常用AI工具 ChatGPT (力荐,无敌于天下,目前国内无法比肩):ChatGPT (Chat Generative Pre-trained Transformer)是由 OpenAI 开发的一种聊天机器人程序,它能够基于现有模型和规律来生成回答,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流自然语言处理模型。可以用于自动生成文章、回复电子邮件、翻译、撰写代码、提供各种领域问题解决方案等。 官网链接:https://chat.openai.com ChatGPT 3.5官网使用是免费的,但需要梵蔷及注册账号,并且国内可能有封号风险 Sider(推荐):是一款基于ChatGPT的智能侧边栏插件,它为Edge和Chrome浏览器提供了与GPT-3.5和4进行智能聊天的功能。Sider的功能非常广泛,聊天只是其基础功能,它可以在任何网页上辅助阅读和写作,直接和图片、网页链接、PDF、GPTs等聊天,整合 ChatGPT 3.5/4、Claude 3 和 Gemini 1.5 Pro,最重要的是能够免费使用。而且产品终端丰富,支持 Chrome、Edge 和 Safari浏览器插件(推荐:插件功能很强大),支持 Windows/Mac 应用,支持安卓和 IOS。 官网链接:https://sider.ai/invited?c=a0aa053b3fafe457ab84c5b5d3524dde 通义千问:通义千问,是阿里云推出的一个超大规模的语言模型 ,其可以对海量数据进行自动分析和处理,它能够与人交互、回答问题及协作创作,精准、高效地为用户提供金融、医疗教育物流等各个行业和领域的问题解答服务。于2023年9月13日正式向公众开放。 官网链接:https://tongyi.aliyun.com/qianwen 文心一言:英文名:ERNIE Bot,是百度全新一代知识增强大语言模型,文心大模型家族的新成员,能够与人对话互动,回答问题,协助创作,高效便捷地帮助人们获取信息、知识和灵感。文心一言是知识增强的大语言模型,基于飞桨深度学习平台和文心知识增强大模型,持续从海量数据和大规模知识中融合学习具备知识增强、检索增强和对话增强的技术特色。 官网链接:https://yiyan.baidu.com/ 个人体验分享 下面介绍一下,本人在前端开发中,能帮助我提升开发效率的 AI 工具。最重要的是免费。 在众多前端开发工具中,Visual Studio Code (VSCode) 绝对是一款明星产品。它不仅拥有丰富的插件库,而且其本身强大的自定义能力和源代码控制功能使得它成为许多开发者的首选编辑器。 vscode AI 免费插件推荐: CodeGeeX CodeGeeX 是一款基于大模型的智能编程助手,它可以实现代码的生成与补全,自动为代码添加注释,不同编程语言的代码间实现互译,针对技术和代码问题的智能问答,当然还包括代码解释,生成单元测试,实现代码审查,修复代码bug等非常丰富的功能。 强大的行内代码续写功能: 按下 tab 键即可将 ai 智能预编写的代码填充进来,更多强大功能待您亲身实践,你会对它爱不释手,极大提升开发效率。 生成单元测试 Create unit tests 智能问答 Ask CodeGeeX TONGYI

【stable diffusion】如何在WebUI中给人物换发型:两种方法详解

大家好!今天,我们将探讨在WebUI中给人物换发型的两种有效方法。这个过程利用了Stable Diffusion的文生图和局部重绘。接下来,我将一步步带你了解每种方法的操作流程和关键细节。 方法一:使用文生图和ControlNet 首先,让我们从文生图开始。假设我们已经有了一张图片(这里使用的是Stable Diffusion生成的)。这使得我们可以轻松地发送提示词进行图像生成或局部重绘。 步骤概览 1️⃣ 模型和尺寸设置: 选择realisticVision模型,这是SD1.5版本的一部分,或者你也可以根据需要选择其他模型。将尺寸设置为512x512(因为原图是1024x1024),然后使用高清修复功能将图片放大两倍,得到所需的尺寸。种子设置可以选择为随机。 2️⃣ 使用ControlNet进行局部重绘: 上传需要换发型的图片。在模特的头发上进行涂抹,可以先估计换发后发型的大小或者先生成几张图来观察。 在控制类型中选择Inpaint(局部重绘),涂抹区域将被新生成的内容替换,而其他区域保持原样。预处理器选择"inpaint_only"。 3️⃣ 调整和生成: 修改提示词,包括想要的发型和其他涂抹区域的内容。 点击生成,查看换发型后的效果。如果效果不理想(如头部有秃区),可以重新涂抹额头区域并再次生成。 总结: ControlNet的优点是可以继续添加功能来增强控制效果,如结合OpenPose精确控制面部角度。缺点是SD1.5模型无法生成复杂细节,如果重绘区域细节复杂,还原度可能不高。 方法二:使用图生图和专门模型 第二种方法是使用专门为局部重绘训练的juggerxlinpaint模型,操作起来相对简单而且效果出众。 步骤概览 1️⃣ 准备和设置: 选择juggerxlinpaint模型,它特别适用于局部重绘。下载链接是: civitai.com/models/2454… 。度盘链接是:pan.baidu.com/s/1mFa78Shh… 。 2️⃣ 涂抹和输入提示词: 在发型区域进行涂抹。输入新发型的提示词,同时删除不需要的负面提示词。 3️⃣ 调整和生成: 设置蒙版模糊度,根据需要调整,以避免明显接缝。勾选Soft Inpainting,确保过渡自然。如果你没有这个功能的话,记得要更新一下WebUI的版本。设置重绘强度为1 提示词我们写上要换的发型和涂抹区域的内容生成图片 总结: juggerxlinpaint模型专门用于局部重绘,效果优于其他模型。虽然它无法与某些ControlNet功能结合,但可以通过第一种方法来补充。 以上就是在WebUI中给人物换发型的两种方法。希望这些信息对你有帮助!如果觉得有用,欢迎点赞支持。 关于AI绘画技术储备 学好 AI绘画 不论是就业还是做副业赚钱都不错,但要学会 AI绘画 还是要有一个学习规划。最后大家分享一份全套的 AI绘画 学习资料,给那些想学习 AI绘画 的小伙伴们一点帮助! 对于0基础小白入门: 如果你是零基础小白,想快速入门AI绘画是可以考虑的。 一方面是学习时间相对较短,学习内容更全面更集中。 二方面是可以找到适合自己的学习方案 包括:stable diffusion安装包、stable diffusion0基础入门全套PDF,视频学习教程。带你从零基础系统性的学好AI绘画! 零基础AI绘画学习资源介绍 👉stable diffusion新手0基础入门PDF👈 (全套教程文末领取哈) 👉AI绘画必备工具👈 温馨提示:篇幅有限,已打包文件夹,获取方式在:文末 👉AI绘画基础+速成+进阶使用教程👈 观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 温馨提示:篇幅有限,已打包文件夹,获取方式在:文末 👉12000+AI关键词大合集👈 这份完整版的AI绘画全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

Vue3解决“找不到模块“@/components/xxx.vue”或其相应的类型声明”

文章目录 前言背景问题描述解决方案总结 前言 在使用 Vue 3 开发项目时,遇到“找不到模块 ‘@/components/xxx.vue’ 或其相应的类型声明”的错误是一个常见问题。这通常与 TypeScript 和模块解析相关的配置不当有关。本文将详细介绍如何解决此问题,确保你的项目能够正确识别和导入 Vue 组件。 背景 在 Vue 项目中,@ 符号通常用作别名,指向项目的根目录(一般是 src 目录)。这使得模块导入路径更简洁和直观。然而,当使用 TypeScript 时,除了配置 Webpack 或 Vite 以支持别名外,还需要在 TypeScript 配置文件中同步更新别名设置,否则 TypeScript 编译器无法解析这些路径,导致无法找到模块或其相应的类型声明。 问题描述 先上问题截图。 出现这个问题如何解决。这个项目是通过Vite创建的Vue3项目。编辑器使用的是VS Code。 不仅仅代码显示报错,并且编译也报错。 解决方案 1、安装依赖(主要用于解决 Node.js 环境相关的类型定义问题) npm i @types/node -D 2、在 vite.config.ts 文件中配置别名: 在defineConfig配置项里面增加下面配置: resolve:{ alias:{ "@":path.resolve(__dirname,'./src') } } 完整的配置如下: import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import path from 'path' // https://vitejs.dev/config/ export default defineConfig({ plugins: [vue()], resolve:{ alias:{ "

前端上传heic图片转jpe格式并展示

各大浏览器对 HEIC 格式图片的支持情况,包括上传和显示的支持度 浏览器版本HEIC 上传HEIC 显示Chrome版本 85 及以上支持不支持Firefox所有版本支持不支持Safari版本 11 及以上支持支持Edge版本 18 及以上支持不支持Opera所有版本支持不支持IE不支持不支持不支持 安装 npm install heic2any 封装的方法 // 上传至阿里服务器 import heic2any from 'heic2any'; const uploadFile1 = function(file, fileImport) { const hide = Message({ iconClass: "el-icon-loading", duration: 0, dangerouslyUseHTMLString: true, message: '<span style="margin-left:10px">上传中...</span>' }); return new Promise((resolve, reject) => { let env = storage.get('env') || null; if (!env || !env.expiration || new Date().getTime() >= env.expiration) { request(aliyunUrl, 'get', {}).then(res => { const { accessKeyId, accessKeySecret, securityToken, expiration } = res.

[JAVASE] 类和对象(二) -- 封装(续篇)

目录 一. static 修饰成员方法 1.1 基本使用 1.2 注意事项 (重点) 1.2.1 1.2.1 二. 代码块 2.1 代码块的分类及使用 2.1.1 静态代码块 2.1.2 实例代码块 2.1.3 普通代码块 2.2 代码块的执行顺序 三. 对象的打印 3.1 打印对象的引用 3.2 重写 toString 方法 四. 总结 一. static 修饰成员方法 切记: static 修饰的成员不依赖于对象, 是属于类的, 不属于对象. 1.1 基本使用 static 修饰的成员方法是属于类的, 通过类名来访问. 1.2 注意事项 (重点) 1.2.1 类方法中,不能够使用this关键字. 解释: 因为类成员根本不依赖于对象, 而this代表的是当前对象的引用. 1.2.1 类方法中, 不能够直接访问普通成员. 解释: a. 类成员是属于类的,普通成员是属于对象的. b. 类成员可以直接通过类去访问, 而普通成员需要通过对象的引用去访问(在此之前还要实例化对象). 二. 代码块 2.1 代码块的分类及使用 2.1.1 静态代码块 静态代码块是用来初始化静态成员变量的.

【前端笔记】Vue项目报错Error: Cannot find module ‘webpack/lib/RuleSet‘

网上搜了下发现原因不止一种,这里仅记录本人遇到的原因和解决办法,仅供参考 原因:因为某种原因导致本地package.json中@vue/cli与全局@vue/cli版本不同导致冲突。再次提示,这是本人遇到的,可能和大家有所不同,勿杠。 解决: 1、查看@vue/cli的版本 vue -V 2、查看项目的Vue脚手架相关版本(package.json) 3、保持package.json的版本与全局的一致 比如vue -V后显示的是5.0.8,而项目package.json的依赖版本为4.5.12,这时最简单的方法就是把项目的版本统一成5.0.8就行。至于版本不同行不行。没试过,因为这样操作后项目就正常运作了至于版本换了后影响大不大。就实际使用来看不多,就配置的区别 最后特别PS + 免喷声明:保持版本相同,不一定要升,也可以把版本降到和项目的一样。并且这只是本人遇到的情况,仅供参考,欢迎讨论

亚马逊实时 AI 编程助手 CodeWhisperer使用体验

文章目录 1:什么是CodeWhisperer ?2:试用3:上手体验 1:什么是CodeWhisperer ? 最近ChatGPT展现出强大AI能力给我们带来了深刻的影响,AI现在不是一个概念,基于AI的产品一定在各行各业帮助工作人员更快更好的完成繁琐的复杂的任务,提升工作效率,而在AI技术的发源地也就是码农圈,也早已经出现了一些好用的AI驱动的编程助手,这些助手可以在IDE中为我们补全代码甚至按照注释自动编写代码,基于AI技术,这些编程助手吸收了Github公开代码库和一些可公开代码库的数据样本,提供自动补全,语法检查、错误修复、导航跳转、类型与范围提示、参数补全、自动注释、代码生成、代码质量分析,漏洞检测等等功能。 AWS 2023/4月已正式推出Amazon CodeWhisperer,是亚马逊的用几十亿行开源代码训练出来的 AI 工具,它可以根据你的代码注释和现有代码实时生成代码建议。其中CodeWhisperer个人套餐,所有开发人员均可免费使用。 Amazon CodeWhisperer目前支持多种语言(Python, Java, JavaScript, TypeScript, C#, Go, Rust, PHP, Ruby, Kotlin, C, C++, Shell scripting, SQL, and Scala);并同时支持多种IDE(JetBrains IDEs,Visual Studio (VS) Code,AWS Cloud9,AWS Lambda console) 点击链接即可免费使用亚马逊云科技 2:试用 我们以VS Code为例来做一个简单的体验 首先是安装VS Code插件,AWS Toolkit是AWS官方产品,现在集成了CodeWhisperer 安装好了后,我们直接点击AWS Toolkit,并找到下面的CodeWhisperer,这是我们接着点击run,启动CodeWhisperer 然后我们注册或者登录AWS Builder ID 当出现如图的绿色的提示就代表完成 3:上手体验 当我们写完后,我们简单的测试下,发现结果是正确的,此外我们还可以进行代码安全扫描和代码来源检查 当然无论你多么信任CodeWhisperer或者其他的AI辅助工具,你都需要人工检查代码正确性并做好单元测试,AI辅助工具主要是减少你在互联网上搜索或者查看文档的时间,至于代码的正确性和效率,需要你来核对 亚马逊还有好多好用的云服务,大家可以去探索 点击链接即可免费使用亚马逊云科技