按值传递定义和原理按值传递是最基本的参数传递方式。在这种方式下,函数会创建参数的副本,函数内部对参数的操作不会影响到原始的变量。例如:cppvoidincrement(intnum){num++;}intmain(){intvalue=5;increment(value);std::cout<
. 如何在 Vue 3 中使用组合式 API 进行代码的逻辑复用?
JJCTO袁龙
Vuevue.jsjavascript前端
如何在Vue3中使用组合式API进行代码的逻辑复用?在Vue3的生态中,组合式API(CompositionAPI)引入了全新的方式来构建组件,使得逻辑复用变得更加简单和灵活。在传统的选项API中,逻辑复用通常依赖于混入(mixins)和高阶组件(HOCs),并且这两者在某种程度上可能导致代码的复杂性及可读性问题。而组合式API通过函数的方式,使得逻辑复用变得更加明确且易于管理。本文将通过示例,带
STM32的USART串口通讯
我 淦
嵌入式stm32
文章目录一、寄存器与固件库1、基于寄存器方式的开发特点2、基于固态库方式的开发特点二、STM32的USART串口通讯程序STM32的USART简介1、实验要求2、实验环境3、实验准备4、实验代码5、程序烧录6、实验结果三、总结一、寄存器与固件库基于寄存器与基于固件库的stm32LED流水灯例子的编程方式差异比较:1、基于寄存器方式的开发特点(1)具体参数更直观(2)程序运行占用资源少(3)寄存器更
Linux 如何使用parted进行磁盘分区?
linux
简介Linux中的parted命令是一个用于创建、修改和管理磁盘分区的多功能工具。它支持传统的MBR(MasterBootRecord:主引导记录)和现代的GPT(GUIDPartitionTable:GUID分区表)分区方案。磁盘分区的主要原因最佳性能:正确管理分区可以提高系统的速度和响应性。例如,将操作系统文件从用户数据中分离出来,或者将频繁访问的数据放在磁盘上更快的部分上,都可以提高性能。数
软件工程的熵减:AI代码生成器如何降低系统复杂度
前端
软件开发的世界,如同一个不断膨胀的宇宙。随着项目规模的增长,代码库日益庞大,系统复杂度也随之水涨船高。维护、扩展和协作的难度成倍增加,这如同物理学中的熵增原理一样,系统朝着混乱无序的方向发展。为了对抗这种“熵增”,我们需要寻找有效的手段,而AI代码生成器的出现,为我们提供了一种强大的武器。在传统的软件开发模式下,开发者花费大量时间处理重复性工作,例如编写大量的样板代码,这不仅效率低下,而且容易引入
一枚程序猿对AI的看法
码畜sokach
人工智能
AI如何改变IT行业一、对软件开发的影响好的方面:对于程序员来说,AI可以帮你做一些简单重复的代码编写工作。比如,你要写一个功能,像登录页面的代码,以前你得一行一行敲,现在AI可以帮你写个大概,你只要修改修改,补充一些细节就行,能让你干活更快。这意味着你可以把更多时间花在设计软件更有趣、更复杂的部分,像做一个很酷炫的游戏功能,或者开发一个新的应用程序,让你能发挥更多创意,提升自己的技能。如果你是新
2024年AI浪潮:基础设施重构、模型演进与挑战并存
前端
2024年,人工智能领域呈现出蓬勃发展的景象,投资持续增长、基础设施发生变革,技术应用加速落地。各大科技公司和初创企业纷纷涌入,试图在这一充满机遇的领域分一杯羹。本文将深入探讨2024年AI发展的三大核心趋势:AI基础设施的重构、模型发展的新趋势以及AI发展带来的挑战,并重点关注企业如何从AI投资中获得回报,以及AI智能体技术的巨大潜力。选择合适的AI代码生成器将成为企业提升效率的关键。AI基础设
软件安全工程:AI代码生成的风险评估与防御
前端
随着软件开发需求的日益增长,提高开发效率成为重中之重。AI写代码工具的出现为软件开发带来了前所未有的机遇,它能够显著提高代码编写速度,降低开发成本。许多工具,例如ScriptEcho(轻微提及,避免过度广告),已经开始在软件开发领域发挥作用。然而,AI代码生成技术也带来了新的安全挑战,我们需要对这些风险进行全面的评估和防御,确保软件的安全性。本文将深入探讨AI代码生成的安全风险,并提出相应的防御策
小红书成立应用算法部:平衡生态与变现的战略之举
前端
小红书近期将商业化、社区、电商算法部门整合,成立了全新的“应用算法部”,这一举动引发了业界广泛关注。这不仅体现了小红书对算法驱动增长的高度重视,也标志着其在平衡内容生态和商业变现之间迈出了关键一步。本文将深入探讨小红书成立应用算法部的战略意义及其对未来发展的影响,并分析其扁平化管理模式在其中的作用。作为一款以内容创作和分享为核心的平台,小红书对高效的AI写代码工具的需求日益增长,而算法的优化则成为
淘宝店铺详情API接口的开发、应用与收益
前端后端运维数据挖掘api
淘宝作为中国最大的电商平台之一,拥有海量的商品和店铺数据。为了更好地利用这些数据,淘宝开放平台提供了丰富的API接口,允许开发者通过调用接口获取淘宝平台上的商品和店铺信息。本文将深入探讨淘宝店铺详情API接口的开发、应用及其带来的收益,并提供示例代码以供参考。一、淘宝店铺详情API接口的开发1.注册淘宝开放平台账号首先,开发者需要在淘宝开放平台注册一个开发者账号。注册过程涉及填写个人信息或企业信息
ofa.js:无需打包的MVVM框架,前端开发的轻量之选
前端
近年来,前端开发领域涌现了许多优秀的框架,如React、Vue和Angular,它们极大地提升了开发效率和代码可维护性。然而,随着项目复杂度的增加,这些框架的学习曲线和构建工具链的复杂性也让许多开发者感到头疼。在这样的背景下,ofa.js应运而生,它号称“无需打包的MVVM框架”,试图为前端开发带来一种全新的体验。那么,ofa.js究竟有何独特之处?它与其他MVVM框架相比又有哪些优势?本文将为你
AI生成前端页面:解放前端开发,拥抱AI时代的高效
前端
在数字时代,效率是企业和个人的核心竞争力。而对于前端开发人员来说,重复性工作和繁琐的代码编写常常成为效率提升的瓶颈。幸运的是,随着人工智能技术的飞速发展,一个新的时代已经到来——AI代码生成器(例如ScriptEcho)的出现,正以前所未有的方式改变着前端开发的格局。本文将探讨人工智能在日常应用中的广泛影响,并着重介绍如何利用AI技术,例如ScriptEcho,来提升前端开发效率,从而更好地应对当
技术选型指南:Web、原生、混合开发的对比
前端
随着移动互联网的飞速发展,开发者在选择应用开发方式时,经常面临纯Web开发、原生开发和混合开发的技术决策。每种开发方式都有其独特的优势和适用场景,开发者需根据项目需求、性能要求及跨平台能力做出合适的选择。本文将详细分析这三种开发方式的特点、实现原理及适用场景,同时推荐一些开源框架,并讲解微信小程序的实现方式。我们还将通过简单的代码示例,帮助大家更直观地理解这些技术。一、纯Web开发定义:纯Web开
【YOLOv8改进】 YOLOv8 更换骨干网络之 GhostNet :通过低成本操作获得更多特征 (论文笔记+引入代码)
YOLO大师
YOLO论文阅读
YOLO目标检测创新改进与实战案例专栏专栏目录:YOLO有效改进系列及项目实战目录包含卷积,主干注意力,检测头等创新机制以及各种目标检测分割项目实战案例专栏链接:YOLO基础解析+创新改进+实战案例介绍摘要在嵌入式设备上部署卷积神经网络(CNNs)由于有限的内存和计算资源而变得困难。特征图中的冗余是那些成功的CNNs的一个重要特性,但在神经架构设计中很少被研究。本文提出了一种新颖的Ghost模块,
传感器融合(UWB+IMU+超声波),使用卡尔曼滤波器和3种不同的多点定位算法(最小二乘、递归最小二乘和梯度下降)研究(Matlab代码实现)
科研_研学社
算法matlab开发语言
欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录⛳️赠与读者1概述一、引言二、传感器介绍(一)UWB(超宽带)(二)IMU(惯性测量单元)(三)超声波传感器三、定位算法(一)卡尔曼滤波器(二)多点定位算法1.最小二乘法2.递归最小二乘法3.梯度下降法四、系统架构五、实验设计六、结果与讨论七、结论2运行结果3参考文献
探索AI API版本管理与流式传输实现
qwe54165a4wd
人工智能java数据库python
在现代软件开发中,API版本管理是一个关键的主题,尤其是在涉及到AIAPI的场景。API版本的变更会影响到服务的稳定性和功能的兼容性。因此,理解API版本管理的基本原理和具体实现,对于开发者来说至关重要。技术背景介绍API版本管理涉及到如何在不破坏现有客户端代码的情况下,逐步引入新的功能和改进。这对于AI服务尤为重要,因为AI模型和算法的更新频率相对较高。本文将重点介绍AIAPI版本的管理原则,并
【Django DRF Apps】从零搭建一个Django SSE app应用
患得患失949
DjangoDRF封装功能类djangosqlitepythonSSEapp
一、从零开始搭建DjangoSSE应用(一)创建Django项目安装Django首先确保已经安装Django。如果没有安装,可以使用以下命令进行安装:pipinstalldjango创建Django项目创建一个新的Django项目:django-adminstartprojectsse_projectcdsse_project创建Django应用创建一个新的应用来处理SSE:pythonmanag
OpenBayes 一周速览|一键部署Qwen2.5-Coder,0编程经验实现代码生成自由!
公共资源速递5个数据集:Coil-100图像数据集Muharaf手写阿拉伯文数据集CollectiveActivity集体活动视频数据集MultimodalSpectroscopic化学多模光谱数据集CDFSOD-benchmark跨域小样本对象检测基准数据集3个教程:一键部署Qwen2.5-CoderInkSight将手写文字数字化DemoGLM-4-Voice端到端中英语音对话模型访问官网立即
如何一步步形成“代码屎山”——前端开发中的痛点与反思
前端
引言在一个大型项目中,随着功能不断扩展、需求不断变化、人员不断更替,代码的质量和可维护性可能会逐渐恶化,最终演变成所谓的“代码屎山”。你一定对代码屎山的形成和后果有深刻的体会。那么,究竟是什么原因导致了代码屎山的形成?如何在开发过程中避免掉进这一陷阱?本文将从多个角度剖析这一问题,并提出一些解决方案,希望能帮助大家减少开发中的痛苦,提升代码质量。第一章:什么是“代码屎山”?在正式探讨代码屎山的形成
6、ListView详解:构建可滚动的列表
piplab666
flutterui
在移动应用开发中,经常需要展示大量数据,如新闻列表、商品列表等。Flutter提供了丰富的滚动视图控件,其中最基础也是最常用的就是ListView。本篇博客将深入探讨ListView的各种属性、类型以及性能优化技巧,帮助您更好地利用这一重要工具。1.什么是ListView?ListView是Flutter中的滚动视图控件,用于展示一个可滚动的列表。它可以在垂直方向(默认)或水平方向滚动,内部包含一
Vue项目打包部署与路由配置深度解析
程序员
在Vue.js项目的开发和部署过程中,配置打包路径和路由模式是两个至关重要的环节。下面,我们将详细探讨如何根据需求将Vue项目打包部署到域名的根路径或二级路径,并深入解析hash路由与history路由的配置方法。一、Vue项目打包部署1.配置vue.config.jsvue.config.js是VueCLI项目的配置文件,用于定制项目构建过程中的各种选项。其中,publicPath属性决定了打包
Unity文件路径访问总结:从基础到高级的资源加载方法
Unity青子
Unity零基础系列课程unity
在Unity开发中,文件路径的访问和资源加载是开发者经常需要处理的任务。无论是加载纹理、模型、音频,还是读取配置文件,正确地处理路径和资源加载是确保项目顺利运行的关键。本文将以Unity文件路径访问为主线,详细介绍Unity中常见的路径访问方式,并结合代码示例、注意事项以及实际使用场景,帮助开发者更好地理解和使用这些方法。同时,本文还会延伸出更多相关知识,帮助用户举一反三,解决实际开发中的问题。1
使用vue-cli创建uni-app项目,vue3/vite模板
hy2356891299
vue3vue.jsuni-app
官网地址:https://uniapp.dcloud.net.cn/quickstart-cli.html1.首先,安装脚手架:npminstall-g@vue/cli注意:Vue3/Vite版要求node版本^14.18.0||>=16.0.0(我用的是nodev16.0.0)2.下载模板,因为我使用官网命令安装失败,所以直接下载的压缩包使用js下载地址https://gitee.com/dcl
华为OD机试 - 手机App防沉迷系统(Python/JS/C/C++ 2024 D卷 100分)
哪 吒
华为odpythonjavascript算法七日集训
华为OD机试2024E卷题库疯狂收录中,刷题点这里专栏导读本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。一、题目描述智能手机方便了我们生活的同时,也侵占了我们不少的时间。“手机Ap
AI Agent的技术选型:从个人项目到企业级应用
人工智能机器学习
说实话,每次有人问我"开发AIAgent应该用什么技术栈?",我都觉得挺难回答的。因为不同的场景,最佳的技术选择可能完全不同。今天就来聊聊我在不同项目中的技术选型经历,希望能给大家一些参考。从个人项目说起去年我开始研究AIAgent的时候,第一个练手项目是给自己做一个代码助手。需求很简单:能读懂我的项目代码,帮我重构和写测试。那时候,我的技术选型是这样的:模型选择:OpenAIGPT-3.5便宜,
关于旗正规则引擎下载页面需要弹窗保存到本地目录的问题
何必如此
jsp超链接文件下载窗口
生成下载页面是需要选择“录入提交页面”,生成之后默认的下载页面<a>标签超链接为:<a href="<%=root_stimage%>stimage/image.jsp?filename=<%=strfile234%>&attachname=<%=java.net.URLEncoder.encode(file234filesourc
【Spark九十八】Standalone Cluster Mode下的资源调度源代码分析
bit1129
cluster
在分析源代码之前,首先对Standalone Cluster Mode的资源调度有一个基本的认识:
首先,运行一个Application需要Driver进程和一组Executor进程。在Standalone Cluster Mode下,Driver和Executor都是在Master的监护下给Worker发消息创建(Driver进程和Executor进程都需要分配内存和CPU,这就需要Maste
linux上独立安装部署spark
daizj
linux安装spark1.4部署
下面讲一下linux上安装spark,以 Standalone Mode 安装
1)首先安装JDK
下载JDK:jdk-7u79-linux-x64.tar.gz ,版本是1.7以上都行,解压 tar -zxvf jdk-7u79-linux-x64.tar.gz
然后配置 ~/.bashrc&nb
Java 字节码之解析一
周凡杨
java字节码javap
一: Java 字节代码的组织形式
类文件 {
OxCAFEBABE ,小版本号,大版本号,常量池大小,常量池数组,访问控制标记,当前类信息,父类信息,实现的接口个数,实现的接口信息数组,域个数,域信息数组,方法个数,方法信息数组,属性个数,属性信息数组
}
&nbs
java各种小工具代码
g21121
java
1.数组转换成List
import java.util.Arrays;
Arrays.asList(Object[] obj); 2.判断一个String型是否有值
import org.springframework.util.StringUtils;
if (StringUtils.hasText(str)) 3.判断一个List是否有值
import org.spring
加快FineReport报表设计的几个心得体会
老A不折腾
finereport
一、从远程服务器大批量取数进行表样设计时,最好按“列顺序”取一个“空的SQL语句”,这样可提高设计速度。否则每次设计时模板均要从远程读取数据,速度相当慢!!
二、找一个富文本编辑软件(如NOTEPAD+)编辑SQL语句,这样会很好地检查语法。有时候带参数较多检查语法复杂时,结合FineReport中生成的日志,再找一个第三方数据库访问软件(如PL/SQL)进行数据检索,可以很快定位语法错误。
mysql linux启动与停止
墙头上一根草
如何启动/停止/重启MySQL一、启动方式1、使用 service 启动:service mysqld start2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start3、使用 safe_mysqld 启动:safe_mysqld&二、停止1、使用 service 启动:service mysqld stop2、使用 mysqld 脚本启动:/etc/inin
Spring中事务管理浅谈
aijuans
spring事务管理
Spring中事务管理浅谈
By Tony Jiang@2012-1-20 Spring中对事务的声明式管理
拿一个XML举例
[html]
view plain
copy
print
?
<?xml version="1.0" encoding="UTF-8"?>&nb
php中隐形字符65279(utf-8的BOM头)问题
alxw4616
php中隐形字符65279(utf-8的BOM头)问题
今天遇到一个问题. php输出JSON 前端在解析时发生问题:parsererror.
调试:
1.仔细对比字符串发现字符串拼写正确.怀疑是 非打印字符的问题.
2.逐一将字符串还原为unicode编码. 发现在字符串头的位置出现了一个 65279的非打印字符.
 
调用对象是否需要传递对象(初学者一定要注意这个问题)
百合不是茶
对象的传递与调用技巧
类和对象的简单的复习,在做项目的过程中有时候不知道怎样来调用类创建的对象,简单的几个类可以看清楚,一般在项目中创建十几个类往往就不知道怎么来看
为了以后能够看清楚,现在来回顾一下类和对象的创建,对象的调用和传递(前面写过一篇)
类和对象的基础概念:
JAVA中万事万物都是类 类有字段(属性),方法,嵌套类和嵌套接
JDK1.5 AtomicLong实例
bijian1013
javathreadjava多线程AtomicLong
JDK1.5 AtomicLong实例
类 AtomicLong
可以用原子方式更新的 long 值。有关原子变量属性的描述,请参阅 java.util.concurrent.atomic 包规范。AtomicLong 可用在应用程序中(如以原子方式增加的序列号),并且不能用于替换 Long。但是,此类确实扩展了 Number,允许那些处理基于数字类的工具和实用工具进行统一访问。
 
自定义的RPC的Java实现
bijian1013
javarpc
网上看到纯java实现的RPC,很不错。
RPC的全名Remote Process Call,即远程过程调用。使用RPC,可以像使用本地的程序一样使用远程服务器上的程序。下面是一个简单的RPC 调用实例,从中可以看到RPC如何
【RPC框架Hessian一】Hessian RPC Hello World
bit1129
Hello world
什么是Hessian
The Hessian binary web service protocol makes web services usable without requiring a large framework, and without learning yet another alphabet soup of protocols. Because it is a binary p
【Spark九十五】Spark Shell操作Spark SQL
bit1129
shell
在Spark Shell上,通过创建HiveContext可以直接进行Hive操作
1. 操作Hive中已存在的表
[hadoop@hadoop bin]$ ./spark-shell
Spark assembly has been built with Hive, including Datanucleus jars on classpath
Welcom
F5 往header加入客户端的ip
ronin47
when HTTP_RESPONSE {if {[HTTP::is_redirect]}{ HTTP::header replace Location [string map {:port/ /} [HTTP::header value Location]]HTTP::header replace Lo
java-61-在数组中,数字减去它右边(注意是右边)的数字得到一个数对之差. 求所有数对之差的最大值。例如在数组{2, 4, 1, 16, 7, 5,
bylijinnan
java
思路来自:
http://zhedahht.blog.163.com/blog/static/2541117420116135376632/
写了个java版的
public class GreatestLeftRightDiff {
/**
* Q61.在数组中,数字减去它右边(注意是右边)的数字得到一个数对之差。
* 求所有数对之差的最大值。例如在数组
mongoDB 索引
开窍的石头
mongoDB索引
在这一节中我们讲讲在mongo中如何创建索引
得到当前查询的索引信息
db.user.find(_id:12).explain();
cursor: basicCoursor 指的是没有索引
&
[硬件和系统]迎峰度夏
comsci
系统
从这几天的气温来看,今年夏天的高温天气可能会维持在一个比较长的时间内
所以,从现在开始准备渡过炎热的夏天。。。。
每间房屋要有一个落地电风扇,一个空调(空调的功率和房间的面积有密切的关系)
坐的,躺的地方要有凉垫,床上要有凉席
电脑的机箱
基于ThinkPHP开发的公司官网
cuiyadll
行业系统
后端基于ThinkPHP,前端基于jQuery和BootstrapCo.MZ 企业系统
轻量级企业网站管理系统
运行环境:PHP5.3+, MySQL5.0
系统预览
系统下载:http://www.tecmz.com
预览地址:http://co.tecmz.com
各种设备自适应
响应式的网站设计能够对用户产生友好度,并且对于
Transaction and redelivery in JMS (JMS的事务和失败消息重发机制)
darrenzhu
jms事务承认MQacknowledge
JMS Message Delivery Reliability and Acknowledgement Patterns
http://wso2.com/library/articles/2013/01/jms-message-delivery-reliability-acknowledgement-patterns/
Transaction and redelivery in
Centos添加硬盘完全教程
dcj3sjt126com
linuxcentoshardware
Linux的硬盘识别:
sda 表示第1块SCSI硬盘
hda 表示第1块IDE硬盘
scd0 表示第1个USB光驱
一般使用“fdisk -l”命
yii2 restful web服务路由
dcj3sjt126com
PHPyii2
路由
随着资源和控制器类准备,您可以使用URL如 http://localhost/index.php?r=user/create访问资源,类似于你可以用正常的Web应用程序做法。
在实践中,你通常要用美观的URL并采取有优势的HTTP动词。 例如,请求POST /users意味着访问user/create动作。 这可以很容易地通过配置urlManager应用程序组件来完成 如下所示
MongoDB查询(4)——游标和分页[八]
eksliang
mongodbMongoDB游标MongoDB深分页
转载请出自出处:http://eksliang.iteye.com/blog/2177567 一、游标
数据库使用游标返回find的执行结果。客户端对游标的实现通常能够对最终结果进行有效控制,从shell中定义一个游标非常简单,就是将查询结果分配给一个变量(用var声明的变量就是局部变量),便创建了一个游标,如下所示:
> var
Activity的四种启动模式和onNewIntent()
gundumw100
android
Android中Activity启动模式详解
在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作。在Android中Activity的启动模式决定了Activity的启动运行方式。
Android总Activity的启动模式分为四种:
Activity启动模式设置:
<acti
攻城狮送女友的CSS3生日蛋糕
ini
htmlWebhtml5csscss3
在线预览:http://keleyi.com/keleyi/phtml/html5/29.htm
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>攻城狮送女友的CSS3生日蛋糕-柯乐义<
读源码学Servlet(1)GenericServlet 源码分析
jzinfo
tomcatWebservlet网络应用网络协议
Servlet API的核心就是javax.servlet.Servlet接口,所有的Servlet 类(抽象的或者自己写的)都必须实现这个接口。在Servlet接口中定义了5个方法,其中有3个方法是由Servlet 容器在Servlet的生命周期的不同阶段来调用的特定方法。
先看javax.servlet.servlet接口源码:
package
JAVA进阶:VO(DTO)与PO(DAO)之间的转换
snoopy7713
javaVOHibernatepo
PO即 Persistence Object VO即 Value Object
VO和PO的主要区别在于: VO是独立的Java Object。 PO是由Hibernate纳入其实体容器(Entity Map)的对象,它代表了与数据库中某条记录对应的Hibernate实体,PO的变化在事务提交时将反应到实际数据库中。
实际上,这个VO被用作Data Transfer
mongodb group by date 聚合查询日期 统计每天数据(信息量)
qiaolevip
每天进步一点点学习永无止境mongodb纵观千象
/* 1 */
{
"_id" : ObjectId("557ac1e2153c43c320393d9d"),
"msgType" : "text",
"sendTime" : ISODate("2015-06-12T11:26:26.000Z")
java之18天 常用的类(一)
Luob.
MathDateSystemRuntimeRundom
System类
import java.util.Properties;
/**
* System:
* out:标准输出,默认是控制台
* in:标准输入,默认是键盘
*
* 描述系统的一些信息
* 获取系统的属性信息:Properties getProperties();
*
*
*
*/
public class Sy
maven
wuai
maven
1、安装maven:解压缩、添加M2_HOME、添加环境变量path
2、创建maven_home文件夹,创建项目mvn_ch01,在其下面建立src、pom.xml,在src下面简历main、test、main下面建立java文件夹
3、编写类,在java文件夹下面依照类的包逐层创建文件夹,将此类放入最后一级文件夹
4、进入mvn_ch01
4.1、mvn compile ,执行后会在