- JavaEE学习笔记(1)--------Web应用入门
咸鱼尾巴
前端java-ee学习
第一章Web应用入门学习目标:理解C/S和B/S架构的概念使用Tomcat部署静态网站使用Eclipse创建Web项目1.Web应用简介(1)程序架构1)C/S架构程序(应用程序软件JavaApp):用户通过客户端程序访问应用程序服务器2)B/S程序架构:用户通过浏览器访问应用程序服务器采用请求/响应模式进行交互:①用户:在浏览器输入ip+端口号或域名②浏览器:向应用服务器发送客户端的请求③应用程
- docker容器化技术
竺竺牧牧
java基础docker容器java
docker容器化技术1.docker概述docker简单的说就是一个沙盒技术,主要目的是为了将应用运行在其中与外界隔离,方便这个沙盒可以被转移到其它宿主机器。docker虚拟化的是javaapp、依赖包、环境信息、操作系统软件。先有docker后有容器化技术,docker基于linuxcontainers。2.docker优势docker体积小,启动速度快。一次构建处处运行。1.应用部署环境污染
- 使用docker-compose管理docker服务
彦楠
Dockerdocker容器docker-compose
使用docker-compose管理docker服务1,创建docker-compose.ymlversion:'3'services:javaapp:deploy:resources:limits:cpus:'1'#设置CPU限制为0.5核心memory:2048M#设置内存限制为512MBbuild:context:./javaappdockerfile:Dockerfileports:-"9
- alpine镜像中jvm工具不可用问题
getsu
问题在alpine镜像中使用诸如jstack,jinfo工具,有如下报错:1:UnabletogetpidofLinuxThreadsmanagerthread原因发现PID为1的时候,工具不可用。解决Dockerfile里使用如下命令启动:CMD["/bin/sh","-c","javaAPP","&&1"]或者使用--init参数来启动docker。
- Eclipse Java程序时序图
Lcap
今天的主角是:Eclipse插件:AmaterasUML中的时序图(Sequencediagram)--官网地址。安装过程请自行百度或者参见官网描述.重要的是SequenceAPIexample中的调用栈获取:在想分析的目标方法处打断点;2.启用调试模式;3.在命令行使用jps-l命令,查找当前JavaApp的进程号;4.使用jstack${java_app_process_number}>${f
- Android 11 修改Launcher3安装应用从第一页开始安装
最乱纷飞的code
Android系统android
sprd/packages/apps/Launcher3/src/com/android/launcher3/model/AddWorkspaceItemsTask.javaapp,screenItems.get(screenId),cordinates,spanX,spanY);}if(true||!found){//modaddtrue//Searchonanyofthescreensstar
- linux 关闭tomcat日志打印,linux下打开与关闭tomcat 实时查看tomcat运行日志
李创奇
linux关闭tomcat日志打印
摘要腾兴网为您分享:linux下打开与关闭tomcat实时查看tomcat运行日志,小米云盘,尚游戏,锐捷,卖萌相机等软件知识,以及360驱动大师,哔哩哔哩专栏,大力菠菜网,蹭饭网,bartender2016,专业计算器,人脸识别系统软件,yolanda体脂秤,闪乱神乐少女们的抉择,租房车app,javaapp,汇编语言编译器,分之道网校,巧遇卡,耳机大家坛等软件it资讯,欢迎关注腾兴网。一,li
- (2023年最新版)史上最全Python/Java自动化测试学习路线图!没有之一!
yoyo小小汐~
软件测试自动化测试测试开发测试工程师接口测试
废话少说,直接上干货!保证是你2023年看到最全最详细的自动化测试进阶学习路线全栈图!!赶紧保存!由于全图图片太大上传不了,这里就不展示了。需要的小伙伴们可以文末小卡片联系我下面展示部分截图,文末附免费下载方式。Python编程语言篇Java语言学习大全PythonWEB自动化测试JavaWEB自动化测试PythonAPP自动化测试JavaAPP自动化测试Python接口自动化测试Java接口自动
- Android NDK 开发Demo
天问chen
androidandroidstudiojava
文章目录1.准备环境2、编码2.1创建Project2.2创建javaapp2.3创建native-lib2.4androidapp增加native-lib依赖2.5编译运行AndroidNDKHelloWorld是一个简单的示例,它演示了如何使用AndroidNDK开发库。1.准备环境wingcc工具链安装:https://editor.csdn.net/md/?articleId=130095
- JMS Java消息服务(Java Message Service)
java高并发
JMS在一些场景下RPC的同步方式可能不太适合业务逻辑的处理,并且这种方式在某些场景下会导致业务的紧耦合。基于异步交互模型的JMS解决了RPC产生的紧耦合问题,它提供了一个可以通过网络访问的抽象消息队列。结构JMS应用由以下几个部分组成:AJMSprovider:AmessagingsystemthatimplementstheJMSspecification.JMSclients:Javaapp
- app-bot-java 简介
yummy觉一
app-bot-javaapp-bot-java概述之前用Python实现过一版,但由于对Python不熟,后期代码扩展时很棘手。由于一直用java做开发,所以抱着学习的心态,用java做了重构,考虑了一些设计模式,相对之前用Python实现的,好了很多。java面向对象设计的思想再结合设计模式,对应用后期的迭代、扩展都是很好的。主界面功能soul:灵魂匹配、机器人聊天、对瞬间点赞、对瞬间评论抖音
- android平台led开发之内核硬件驱动层
lvmengcool1
Android源码编译运行移植android平台硬件驱动android开发内核
手上有一个android开发平台,于是想在底层加个自己的硬件模块然后通过Android的HAL方式向上封装出底层驱动供JAVAAPP调用。既然是刚上手,那就用led灯来做为先导开发走走流程吧,至少得把从内核到应用层的流程走通才行。从底层到上层一共分成四个阶段。1:内核硬件驱动层2:HAL(硬件抽象层)3:框架层(framework,包含JNI和实现硬件服务的JAVA接口)4:JAVA应用层一,首先
- java历史
anqian1974
操作系统java运维
背景Java是由SunMicrosystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由JamesGosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。用Java实现的HotJava浏览器(支持Javaapp
- Android native应用开发简明教程 (2) - 本地应用的原理
Jtag特工
本地应用原理从NativeActivity说起本地App,本质上是一个JavaApp调用了一个JNI的库,而应用的逻辑通过native代码来实现。NativeActivity是继承自Activity的一个类,代码在:/frameworks/base/core/java/android/app/NativeActivity.java中:publicclassNativeActivityextends
- docker安装openjdk并运行jar包的操作方法
下载镜像dockerpullopenjdk创建数据卷创建一个java_app的数据卷dockervolumecreatejava_app将jar包上传到/var/lib/docker/volumes/java_app/_data/下,然后启动镜像启动镜像dockerrun--name=javaApp--restart=always--network=host\-vjava_app:/usr/src
- MyEclipse 6 + NetBeans 6 开发窗体程序
jackongxp
自从Netbeans6发布以来,很多原来使用Eclipse的程序员转到了NetBeans上来。存在即合理,这两大平台都有为数不少的支持者,可见他们各自都有其吸引人的优点。以下将介绍如何用MyEclipse+Netbeans来开发窗体程序。假设MyEclipse的工作空间在D:/javaApp/下。第一步:打开NetBeans6,点击File->NewProject,打开新建项目对话框,如下图:选择
- Mac系统开发之——Java
PGzxc
Macmacjava
一概述本文主要讲述在Mac系统下进行开发时,Java相关的操作:查看Java版本Java卸载Java安装Java配置二Java卸载2.1查看已安装的Java版本2.2卸载已安装的Java版本单击位于停靠栏中的Finder图标在Finder菜单中单击前往单击实用工具双击终端图标在“终端”窗口中,复制并粘贴以下命令:sudorm-fr/Library/Internet\Plug-Ins/JavaApp
- 在Java App中启动进程
hemingwang0902
Java
在JavaApp中启动进程Java1.5增加了非常实用的Process和ProcessBuilder类,能让我们非常方便地在Java应用程序中启动其他任何可执行文件和脚本。以下代码将运行一个记事本:如果传入参数,则参数将作为完整的命令传入新创建的Process(第一个参数为Process的文件路径)。Process类的start()方法将启动新的进程。此外,waitFor()方法能让当前线程等待直
- JavaApp自动化测试系列[v1.0.0][Appium数据驱动测试框架]
Davieyang.D.Y
数据驱动测试框架DP数据驱动DataProviderCVS
测试框架总体来说与应用开发的框架并无太大的差异,在设计的起始阶段初衷也都一样,满足测试绝大多数活动并提高测试代码的编写效率,然后兼顾易用、兼容、通用以及简单维护等几个维度是其存在的唯一意义,它是测试开发过程中提取特定领域测试方法共性部分而形成的体系结构,然而不同的测试领域有不同的测试框架,不同的软件公司也应有属于自己的测试框架框架设计前提已经熟练掌握了Appium环境的安装与配置,请参考JavaA
- JavaApp自动化测试系列[v1.0.0][PageFactory注解详解]
Davieyang.D.Y
PageFactoryPageFactory注解
packageorg.davieyang.testscripts;importio.appium.java_client.MobileElement;importio.appium.java_client.android.AndroidElement;importorg.openqa.selenium.Alert;importorg.openqa.selenium.WebElement;impor
- JavaApp自动化测试系列[v1.0.0][Page Factory模式]
Davieyang.D.Y
PageFactoryPF模式PageFactory模式
PageFactory模式PageFactory模式的概念和PO类似,或者说是它的一种扩展,通过注解的方式定位元素对象,需要在构建函数里调用PageFactory.initElements(driver,this)来初始化PO对象,修改页面对象类文件,代码示例如下packageorg.davieyang.pages;importio.appium.java_client.android.Andro
- JavaApp自动化测试系列[v1.0.0][Appium使用详解]
Davieyang.D.Y
AppiumGUIAppiumInspector
启动AppiumServer通过StartServer按钮启动Appium服务点击StartServerv1.18.0按钮,使用默认Host和Port启动AppiumServer通过Advanced标签页启动Appium服务单击配置好Appium服务器参数后,点击StartServerv1.18.0按钮启动服务点击SaveAsPreset...可以保存预设的Advanced选项,方便以后使用,已经
- JavaApp自动化测试系列[v1.0.1][Appium开发环境搭建]
Davieyang.D.Y
DesiredCapsAppiumJava
JavaAppium实例代码我们先看一段真实的java代码,我将他放在了TestNG框架的@BeforeTest里,执行这段即可启动安卓手机上的APP“com.tencent.Q108”后边一一详述1@BeforeTest2publicvoidsetUp()throwsMalformedURLException{3DesiredCapabilitiescaps=newDesiredCapabili
- JavaApp自动化测试系列[v1.0.0][Desired Capabilities]
Davieyang.D.Y
DesiredCapAndroidONLYUIAutomatorEspressoOnlyiOSOnly
AppiumDesiredCapabilitiesGeneralCapabilitiesCapabilityDescriptionValuesautomationNameWhichautomationenginetouseAppium(default),orUiAutomator2,Espresso,orUiAutomator1forAndroid,orXCUITestorInstrumentsf
- JavaApp自动化测试系列[v1.0.0][uiautomatorviewer元素定位]
Davieyang.D.Y
uiautomatorApp元素定位安卓App元素定位
在WIndows系统上进行元素定位,建议使用这个工具,在Mac上建议用AppiumInspector启动uiautomatorviewer.bat链接移动设备确认连接手机状态正常-》打开手机qq页面,让屏幕处于点亮状态点左上角安卓机器人按钮DevicesScreenshot按钮刷新页面定位元素点击登录按钮代码实例如上图所示,定位了登陆按钮,代码实例如下12packagetestscript;/*3
- JavaApp自动化测试系列[v1.0.0][adb命令]
Davieyang.D.Y
adb是PC端控制移动端的桥梁,也是移动端自动化测试包括Appium自动化测试的基础,所谓自动化就是以程序测试程序,以代码代替思维,以脚本的运行代替手动操作adb的全称是AndroidDebugBridge,它其实就是一种集成在安卓SDK中的命令行工具,我们平时用到的PC端控制移动端的工具几乎都是依赖它来完成对移动端的操作的AndroidDebugBridge结构adb主要有3个部分组成运行在PC
- JavaApp自动化测试系列[v1.0.0][Appium Inspector元素定位]
Davieyang.D.Y
AppiumInspectorIOS元素定位
FindingelementsbyxpathWebElementdigit_9=driver.findElement(By.xpath("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.support.v4.view.viewPager[1]/
- JavaApp自动化测试系列[v1.0.0][MacAppium开发环境搭建]
Davieyang.D.Y
玩转环境配置MacAppiumMacSDK
安装包工具准备:jdk1.8.0(64位)android-sdk_r24.4.1-macosx.zipJDK的安装及配置官方下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html选中“AcceptLicenseAgreement”,下载所需版本即可,这里下载的是“MacOSX
- Java Web Start实例
一生有你527
JWS让用户可以下载服务器端的JavaApplication到本机运行,并且没有安装、配置等繁琐的操作JWS的运行原理:浏览器运行JavaApplication的链接指向的不是程序本身,而是一个*.jnlp(JavaNetworkLaunchingProtocol,java网络加载协议),该文件包含了JavaApplication的一些配置信息。浏览器解读这个文件的信息,将服务器端的JavaApp
- Windows下的java启动脚本
jason5186
windows
最近部分项目的子系统由linux转向windows,根据实际情况的需求结合网络资源整理了一份Bat脚本,用于在Windows下启动javaapp。脚本:@echooffREMProjectname:Windows下的java启动脚本REMAuthor:JasonREMDate:2013-4-16REMVersion:1.0IF"%CLASSPATH%"EQU""(echoCLASSPATHPARA
- 关于旗正规则引擎下载页面需要弹窗保存到本地目录的问题
何必如此
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 ,执行后会在