- Spring Boot整合RabbitMQ
Java架构设计
Java程序员经验分享程序人生Java架构springboot
应用场景1.异步处理场景:用户注册完成后,需要发注册成功的邮件和短信,传统的做法有两种:串行的方式:将注册信息写入数据库后,发送注册成功的邮件,邮件发送成功后,再发送注册成功的短信。以上三个任务全部完成后才将注册成功的信息返回给客户端。存在的问题是:邮件和短信并不是必须的,它只是一个通知,串行的方式会让客户端等待没有必要等待的时间。并行的方式:将注册信息写入数据库后,同时发送注册成功的邮件和短信。
- vscode默认终端怎么设置成git bash
一个前端人
前端vscodegitbash
要将VSCode的默认终端设置为GitBash,可以按照以下步骤操作:打开VSCode并点击左侧菜单栏中的“视图”(View)选项。在下拉菜单中选择“命令面板”(CommandPalette)。在命令面板中输入“Terminal:SelectDefaultProfile”并选择该选项。在弹出的下拉菜单中选择“GitBash”作为默认终端。或者,你也可以通过以下方式进行设置:打开VSCode并点击左
- WebSocket协议解析 : 双向实时通信的利器
氦客
网络websocket网络协议HTTP全双工实时通信局域网工作原理
1.WebSocket是什么WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket允许客户端和服务器之间进行实时的双向通信。这意味着服务器可以主动推送数据到客户端,而不需要客户端每次都发送请求来获取数据。这种通信方式通过长连接实现,即连接建立后,可以持续进行数据传输,直到一方主动关闭连接。1.1什么是实时通信?传统的通信方式,比如电子邮件或者普通的网页浏览,通常都会存在
- 【LeetCode系列】【字符串专题】
烊萌
LeetCode经典题目讲解字符串专题
目录专题四:字符串专题LeetCode38报数1、分析2、代码LeetCode49字母异位词分组1、分析2、代码LeetCode151翻转字符串里的单词1、分析2、代码LeetCode165比较版本号1、分析2、代码LeetCode929独特的电子邮件地址1、分析2、代码LeetCode5最长回文子串1、分析2、代码LeetCode6Z字形变换1、分析2、代码LeetCode3无重复字符的最长子串
- 记录使用python smtplib邮件发送
Wiktok
python前端javascript
基于多源异构数据存储管理系统开发时遇到的邮件发送问题,这里做一下记录。importsmtplib#导入smtplib模块,用于发送邮件fromemail.mime.textimportMIMEText#从email.mime.text导入MIMEText类,用于构建文本邮件fromemail.headerimportHeader#从email.header导入Header类,用于设置邮件头部ema
- android-为手机设置全局代理
carden_coder
agentandroidandroid
有这么一个需求,需要给手机设置全局代理。百度到的结果都是设置后,如果需要清除代理的话,需要重启手机,这里使用的方式是不需要重启的方式后实现方式如下:设置代理:String[]strings={"settingsputglobalhttp_proxy"+ip+":"+port};ShellUtils.CommandResultcommandResult2=ShellUtils.execCmd(str
- yum-config-manager: command not found
yixian123.com
linux
错误信息:yum-config-manager:commandnotfound原因:系统默认没有安装这个命令,这个命令在yum-utils包里,可以通过命令yum-yinstallyum-utils安装解决方法:yum-yinstallyum-utils
- vscode实用快捷键_vscode 常用快捷键
一只鱿鱼
vscode实用快捷键
本文以macOS系统作为示例说明,键位对应关系如下:官方完整键位表常用快捷键编辑command+X剪切鼠标选择的内容或当前行command+C复制鼠标选择的内容或当前行command+V粘贴shift+command+K删除当前行或选择的内容command+Enter在当前行紧邻的下一行插入新行shift+command+Enter在当前行紧邻的上一行插入新行option+↓向下移动当前行或已选择
- 提示-bash: telnet: command not found的解决方法
廖俊才
LinuxCentOS
Linuxcentos运行telnet命令,出现下面的错误提示:[root@localhost~]#telnet127.0.0.1-bash:telnet:commandnotfound解决方法:安装telnet服务centos、ubuntu安装telnet命令的方法.yumlisttelnet*列出telnet相关的安装包yuminstalltelnet-server安装telnet服务yumi
- clang编译代码报错:`_start': (.text+0x24): undefined reference to `main'
PandaMohist
前端linuxjavascript运维服务器
1.说明使用clang++10.1编译报错:/usr/bin/ld:/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crt1.o:infunction`_start':(.text+0x24):undefinedreferenceto`main'clang-10:error:linkercommandfailedwithexitc
- android adb 查看系统主频,hp adb命令,查看内存,CPU主频等信息。
三木在Yummy
androidadb查看系统主频
Theadbcommandprovidesawaytogainusefulinformationaboutanumberofthesystemsconfigurationareas.Todeterminethephysicalmemory(RAM):forHP-UX10xexample:echophysmem/D|adb/stand/vmunix/dev/kmemphysmem:physmem:2
- jenkins自动化打包android,使用Jenkins+Pipline 持构建自动化部署之安卓源码打包、测试、邮件通知...
白汐牙
一、引言Jenkins2.x的精髓是PipelineasCode,那为什么要用Pipeline呢?jenkins1.0也能实现自动化构建,但Pipeline能够将以前project中的配置信息以steps的方式放在一个脚本里,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程,形成流水式发布,构建步骤视图化。简单来说,Pipeline适用的场景更广泛,能胜任更复杂的发布
- Python_IMAP自动收取邮件脚本
FM黎明之前
Pythonpython脚本语言
Python自动收取邮件脚本文献:https://cloud.tencent.com/developer/section/1368355功能:收取腾讯企业邮箱邮件写入CSV文件条件:筛选固定期限与固定发件人/收件人说明:1.此脚本采用imaplib协议;不支持授权码登陆方式(163imap授权码)等,有想法的可以重构,收取邮件脚本大同小异,只不过是获取之后编码问题有点棘手,读者花费点时间精力根据不
- 【python】用IMAP获取电子邮件
胡 亥
python入门与自动化操作pythonsslhttps
大家好,我是胡亥大魔王。今天介绍python中用IMAP获取电子邮件前面讲过了SMTP是用来发送邮件的协议,于此相对应的取回发送到你电子邮件地址的电子邮件也有一个协议,即因特网消息访问协议(IMAP)。python自带了一个imaplib模块,但实际上第三方的imapclient模块更好用,本文主要介绍如何使用IMAPClient,完整的文档在https://imapclient.readthed
- python基础语法22-IMAP接收邮件
春风抚微霞
pythonsslIMAP邮件接收python
一、简介IMAP是一种电子邮件检索协议,它不会下载电子邮件。它只是读取它们并显示它们。这在低带宽条件下非常有用。Python的客户端库称为imaplib用于通过imap协议访问电子邮件。IMAP代表InternetMailAccessProtocol.它于1986年首次提出。1、IMAP支持的功能:(1)多个邮件文件夹,不仅仅是用户的收件箱(2)在IMAP服务器上带有存储的标记(已读、已回复、已看
- RTOS 特性及其思考
TianYaKe-天涯客
arm开发
前言最近在研究FreeRTOS,觉得RTOS有些特性还是比较有趣的,有一些想法,问了一下AI,简单探讨一下。有纰漏请指出,转载请说明。学习交流请发邮件
[email protected]百问网《FreeRTOS入门与工程实践-基于STM32F103》教程-基于DShanMCU-103(STM32F103)|百问网为什么有些项目,裸机编程不再适用,需要RTOS一、任务调度与并发处理裸机编程:在裸机环境
- 使用python开发flsak_FlaskWeb开发:基于Python的Web应用开发实战
RoseofVersailles
使用python开发flsak
本书不仅适合初级Web开发人员学习阅读,更是Python程序员用来学习高级Web开发技术的优秀参考书。•学习Flask应用的基本结构,编写示例应用;•使用必备的组件,包括模板、数据库、Web表单和电子邮件支持;•使用包和模块构建可伸缩的大型应用;•实现用户认证、角色和个人资料;•在博客网站中重用模板、分页显示列表以及使用富文本;•使用基于Flask的REST式API,在智能手机、平板电脑和其他第三
- 【Vim Masterclass 笔记10】S06L23:Vim 核心操作训练之 —— 文本的搜索、查找与替换操作(第二部分)
安冬的码畜日常
VimMasterclassvim笔记vim查找与替换
文章目录S06L23Search,Find,andReplace-PartTwo1文本替换命令`:s/old/new/`2指定范围的文本替换3特例:路径的替换4文件行号的配置5要点总结(1)搜索当前行(SameLineSearching)(2)跨行搜索(Searching)(3)替换命令(SubstituteCommand)写在前面根据李笑来《自学是门手艺》的建议,梳理完知识要点后又对这章内容制作
- 外贸怎么找客户?用AI社媒引流王在Facebook精准获客!
AIsocial
AI社媒引流王facebook营销AI社媒引流王
在跨境电商和外贸行业,外贸怎么找客户是每个企业都关心的问题。传统的B2B平台、展会、邮件营销等方式虽有效,但竞争激烈、成本高昂,转化率也越来越低。那么,有没有更精准、高效、低成本的获客方式?答案是:社交媒体营销!Facebook作为全球最大的社交平台,聚集了大量企业决策者和终端买家,是外贸企业获客的关键渠道。而通过AI社媒引流,我们可以利用Facebook上的群组、关键词霸屏、发消息、公共主页等方
- Cursor前端开发提示词分享
前端程序猿i
前端
点击设置将提示词复制黏贴进输入框里即可Alwaysrespondin中文DONOTGIVEMEHIGHLEVELSTUFF,IFIASKFORFIXOREXPLANATION,IWANTACTUALCODEOREXPLANATION!!!IDON'TWANT"Here'showyoucanblablabla"-Youareaseniorfrontendengineer.-Ifcommandsnee
- Run-On-Arch GitHub Action:跨架构CI/CD的利器
怀创宪
Run-On-ArchGitHubAction:跨架构CI/CD的利器run-on-arch-actionAGithubActionthatexecutesjobs/commandsonnon-x86cpuarchitectures(ARMv6,ARMv7,aarch64,s390x,ppc64le,riscv64)viaQEMU项目地址:https://gitcode.com/gh_mirror
- 第二章:13.1 机器学习的迭代发展
望云山190
机器学习人工智能
目录机器学习模型开发流程构建电子邮件垃圾邮件分类器示例总结垃圾邮件分类示例构建垃圾邮件分类器机器学习模型开发流程确定系统架构:首先,需要决定机器学习系统的总体架构,这包括选择合适的模型、确定使用的数据集、可能还包括选择超参数等。实现和训练模型:根据上述决定,实现并训练一个模型。通常,第一次训练的模型不会立即达到预期的效果。诊断和调整:对模型进行诊断,查看算法的偏差、方差或进行错误分析。根据诊断结果
- Flink 安装阿里云docker compose部署及相关组件
vellerzheng
部署运维flinkdocker大数据
Flink安装脚本文件version:"2.2"services:jobmanager:image:flink:1.15.2-java11expose:-"6123"ports:-"8081:8081"command:jobmanagervolumes:-/home:/homeenvironment:-JOB_MANAGER_RPC_ADDRESS=jobmanagerprivileged:tru
- flutter doctor 报错—CocoaPods not installed
一码平川SHI
flutter
执行命令brewinstallcocoapodscommandnotfound:brew报错解决:添加链接描述
- conda在powershell7.5执行出现问题
0xdadream
报错修复conda
conda在powershell7.5执行出现问题问题描述执行命令结果如下,不能达到预期condausage:conda-script.py[-h][-v][--no-plugins][-V]COMMAND...conda-script.py:error:argumentCOMMAND:invalidchoice:''(choosefrom'activate','clean','commands'
- /etc/profile, ~/.bash_profile, ~/.bashrc, ~/.profile小结
美好的点滴瞬间
1024程序员节
一、概念理解【profile】从概念上来说,profile一般指"个人资料",这个一般是跟用户相关的,因此,/etc/profile,~/.profile,~/.bash_profile这三个都是跟登录相关的。【bashrc】我特意查了一下,这里的rc通常指runcommands,也有些是说runcontrol,我个人觉得runcontrol更准确。【~/】这个是指当前登录用户下的个人配置【/et
- 爬虫工具yt-dlp
港漂青铜康
爬虫dlp
yt-dlp是youtube-dlp的一个fork,youtube-dlp曾经也较为活跃,但后来被众多网站屏蔽,于是大家转而在其基础上开发yt-dlp。yt-dlp的github项目地址为:GitHub-yt-dlp/yt-dlp:Afeature-richcommand-lineaudio/videodownloaderAfeature-richcommand-lineaudio/videodo
- 计算机网络--网络安全测试
黑客K-ing
网络安全网络协议信号处理信息与通信
问题1以下关于网络安全威胁发展的趋势的描述中错误的是___A_____。答案:A云计算可以有效地防止网络攻击发生B网络攻击、病毒与垃圾邮件是网络安全的三大公害C网络攻击开始演变成某些国家或利益集团重要的政治、军事工具D趋利性是当前网络攻击的主要特点问题2得10分,满分10分以下关于网络安全的三大公害的描述中错误的是_____C___。答案:A网络攻击、病毒与垃圾邮件攻击方式相互融合,变种不断出现B
- VSCode - 快捷键美化 Json 代码
丽英y
实践笔记vscodeidejsonpretty美化代码格式
文章目录即使文件没有被保存为.json文件单独对一段代码,输入Command+J也可以美化
- nodejs第五天 npm yarn pnpm 包管理器
大盗夕落
笔记npmjavascript前端
文章目录npmpackage.json安装包全局安装配置镜像yarn安装使用镜像配置pnpm使用镜像npmnode中的包管理器叫做npm(nodepackagemanage),我们可以将自己开发的包上传到npm中共别人使用,也可以直接从npm中下载别人开发好的包npm由以下三个部分组成:npm网站https://www.npmjs.com/npmCLI(CommandLineInterface即命
- 关于旗正规则引擎下载页面需要弹窗保存到本地目录的问题
何必如此
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 ,执行后会在