jdk1 6(就职的公司居然还在用Java 1.6,该不该换公司)

2024-04-24 21:50:01 3

jdk1 6(就职的公司居然还在用Java 1.6,该不该换公司)

大家好,今天小编来为大家解答以下的问题,关于jdk1 6,就职的公司居然还在用Java 1.6,该不该换公司这个很多人还不知道,现在让我们一起来看看吧!

本文目录

就职的公司居然还在用Java 1.6,该不该换公司

谢邀~

公司还在使用JDK6,不应该是你跳槽的直接原因。

为什么有些公司还在使用JDK6

别说1.6了,还在用1.5的我都见过。

很多企业级的应用,都会运行个三五年,甚至更长的时间,才会有新的系统替代他。如果题主公司的项目都是运行五年以上的话,现在还使用JDK6是有情可原的。(JDK7好像是11年发布的)。

对于大多数企业级应用来说,当系统上线后,“稳定”是最重要的,所以当业务需求可以满足、系统效率也能跟得上的时候,企业是不会轻易升级JDK版本的。

版本高,不一定使用到新特性

  • 首先,Java常用的内容,比如集合、IO、多线程(并发框架)、JVM的内部原理,这些基础的东西是一直都有的,你依然可以从JDK6中学到很多知识;

  • 另外一方面,例如我们单位使用的是JDK8,但是据我观察,大部分程序员都没有用到高版本的新特性,比如很多程序员是不会写lambda表达式的;

  • 我估计我们单位在几年内,也不会升级JDK版本的;若干年后,可能也会被问到“公司还在使用JDK8,要不要跳槽”。

顺着JDK,看看公司的技术栈

这里的技术栈是指:公司项目用到的框架、软件、架构等。(业务经验的积累,在这里不讨论,只谈技术)

  • 有些公司使用SSH框架,单台关系型数据库;

  • 有些公司除了常规的框架,开始使用Spring Boot;系统和系统之间除了接口调用之外,也用到消息队列进行解耦;除了关系型数据库,也引入了非关系型数据库;

  • 有些公司用到了Dubbo、Spring Cloud,开始使用Docker,引入Devops,分库分表...

这时,公司之间技术的差距就显现出来了;同时也会影响到程序员的技术发展;这才是你考虑是否需要跳槽的因素之一。

总之,平台和个人的努力,都很重要。

我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。

java jdk1.6平台的安装及应用

呵呵,楼上说的够详细的啦,不过我补充一句:环境变量的设置(教人要教最关键的)。 jdk的东西,初学不需要精通,知道它是用来做java开发的就可以了。 设置环境变量: 1.首先,我们要安装jdk,呵呵,注意你的安装目录,最好自定义一下,以后好找,别到最后了,连安装到哪里都不知道。好像它会自动先安装jdk,安装好后,提示你安装jre。都安装上,同一个目录下就可以。如:我的安装目录是:D:\programer\Java。在这个目录下会有你刚才安装的jdk和jre,并且都标示有版本号,我的是:1.5的。不过,道理一样。 2.配置你的环境变量:有3个值需要配置。右键点击“我的电脑”—》“属性”—》“高级”—》“环境变量”—》单击“系统变量”下的“新建”按钮,依次新建“classpath”“java_home”“path”环境变量,他们的值分别为: java_home=D:\programer\Java\jdk1.5.0_06 classpath=.\;D:\programer\Java\jdk1.5.0_06lib\tools.jar;D:\programer\Java\jdk1.5.0_06\lib\dt.jar;D:\programer\Java\jdk1.5.0_06\jre\lib path=D:\programer\Java\jdk1.5.0_06\bin (如果你的电脑已经有了path系统变量,则直接在后面加上这个值即可) 以上3值的设定,请注意比较我的安装路径。千万不要直接照抄! 3、测试jdk的安装: “开始”—》“运行”—》输入“cmd”进入DOS—》分别输入“java”和“javac” 如出现一系列参数,则,安装正常…… 4.其实,你要进行java的开发,仅有jdk,虽然可以,但不方便,建议安装eclipse,并且使用myeclipse,我的理解是myeclipse是eclipse的一个插件,如果有问题,问我。安装myeclipse时,如果你的电脑主题使用了别的,或是使用了美化包,建议全部关闭,使之成为最原始的windows经典主题。否则,会死翘翘滴。。。。。安装完后,主题可以再变回来,如果你要进行桌面程序的开发如:使用SWT+JFACE,建议还是使用默认的windows经典主题,否则,设计界面会有问题。 呵呵,干脆,我把关于java所需要的一些列软件的安装,都告诉你吧,看样你是初学java。这样会使你的学习过程比较有乐趣,想当年,我一个人研究的myeclipse的平台,连个帮我的人都没有,那个迷茫,那个郁闷,我都想放弃了。这可是当年搞定myeclipse时保存下来的心得,全部给你把。有问题找我。具体软件的下载,你先自己找找看吧,对了,你的E文好吗? 要去官方网站上下,或是使用myecli自带的help_》help contents里面自己找。建议先使用我推荐的版本,然后自己熟了,在逐渐摸索。 一、tomcat的安装和配置 1、安装版本:jakarta-tomcat-5.0.28.exe (core版) 2、配置系统环境变量: 设:我的安装路径为:D:\programer\Tomcat 5.0 则:右键点击“我的电脑”—》“属性”—》“高级”—》“环境变量”—》单击“系统变量”下的“新建”按钮,新建“tomcat_home”环境变量,它的值为: tomcat_home=D:\programer\Tomcat 5.0 以上值的设定,请注意比较我的安装路径。 3、测试运行tomcat的安装: 可直接双击托盘内tomcat的小图标,或到安装目录下找到“tomcat5w.exe”,双击,即可弹出tomcat的运行界面。他的路径为D:\programer\Tomcat 5.0 \bin\tomcat5w.exe 测试:打开ie,输入“”,其中,8080是默认的端口号。会看到tomcat的主界面,也就是控制面板,搞定它是门大学问。暂时不在此讲解 三、eclipse的安装和配置 1、安装版本:eclipse-SDK-3.1.2-win32.zip 这里说安装不准确,应该说是解压。解压到你的指定目录。 2、link安装方法: 建议在安装eclipse插件时,使用此方法。 使用link安装方法的先决条件: (1)、 插件的解压缩文件的根目录必须为:*:\eclipse\…… (2)、在解压好的eclipse目录中建立一个文件包,包名随意。设我的eclipse安装目录为:D:\programer\eclipse则我新建的包的目录为: D:\programer\eclipse\links,其中links就是我新建的包。 (3)、为安装的各种eclipse插件,新建link文件,这种文件的后缀名可随意,但我建议使用link做后缀。用记事本打开,并写入: path=……,具体值在下面介绍。注意自己总结规律。 3、语言包的安装:建议在刚接触时使用,熟悉eclipse的开发环境后,立即删除,因为,如果你不懂e文,就别想在软件这一行混了……安装时要注意版本,我的版本是:NLpack-eclipse-SDK-3.1.x-win32.zip。所有eclipse的插件安装,都必须注意版本号! 我们使用link安装方法,安装我们的语言包,同样是解压,建议你新建一个专门用于存放各类插件解压文件的文件包,我的为:D:\links。 在D:\links下,新建language文件包,将NLpack-eclipse-SDK-3.1.x-win32.zip解压到此文件包内,注意,这时的language文件包的根目录就是:eclipse。(这样表述 可能不正确……o(∩_∩)o),然后在D:\programer\eclipse\links中建立语言包的link文件,我的为:language.link。用记事本打开,并写入: path=D:\\links\\language至于为什么这样写,大家都是聪明的孩子,不用我多说了吧! 4、测试eclipse及语言包的安装: 打开eclipse,会发现你的已是中文。ok! 5、如果不行,到Eclipse安装目录Configuration子目录下,找到org.eclipse.update文件包,靠!就是它搞得鬼,很简单,删掉,然后重新启动。 6、说明: (1). 插件可以分别安装在多个自定义的目录中。 (2). 一个自定义目录可以安装多个插件。 (3). link文件的文件名及扩展名可以取任意名称,比如ddd.txt,myplugin都可以。 (4). link文件中path=插件目录的path路径分隔要用\\或是/ (5). 在links目录也可以有多个link文件,每个link文件中的path参数都将生效。 (6). 插件目录可以使用相对路径。 (7). 可以在links目录中建立一个子目录,转移暂时不用的插件到此子目录中,加快eclipse启动。 (8). 如果安装后看不到插件,把eclipse 目录下的configuration目录删除,重启即可。 四、tomcat插件的安装和配置: 1、安装版本:tomcatPluginV3.zip,同样是解压,直接解压到eclipse安装目录下的/plugins子目录下即可。 2、tomcat的配置: 启动eclipse,选择“窗口”—》“首选项”,你会左面发现多了个“tomcat”,点它,在右面设置tomcat和tomcat_home,我就分别为你的安装版本和安装路径。我的为“version 5.x”和“D:\programer\Tomcat 5.0”,点“应用”。 然后,点开左面的tomcat,找到“advanced”,设置“tomcat base”,也是你的tomcat的安装路径。点“应用” 点“确定”,关闭。 五、Myeclipse的安装和配置 1、安装版本:MyEclipse4.1.1 for Eclipse3.1.X,在安装过程中,自动提示“please choose existing eclipse installation folder”也就是你的eclipse的安装目录。 2、进入你的eclipse安装目录,会发现多了一个ico的logo,就是它,其实myeclipse只是eclipse的一个插件…… 3、启动eclipse,在“首选项”中有多了一个“myeclipse”,恭喜你,安装成功了 4、配置: 添加tomcat到myeclipse,天啊,弹出窗口要我输入注册码,大家都是穷程序员,给大家个注册码: MyEclipse 5.0 M2 for Eclipse 3.2 Subscriber: Subscriber Code: jLR8ZC-444-55-4467865481680090 MyEclipse4.1.1GA for Eclipse3.1.X License name: hehe License Key: uLR8ZC-956-55-5467865991428004 MyEclipse3.8.4 for Eclipse3.0.X iwdc vAR7ZL-819-56-5467865451894096 hello uAR7ZL-819-56-54678656892787632 csdn pAR7ZL-819-56-5467865261354715 还是进入“首选项”,左边找到“myeclipse”—》“application servers”—》“tomcat5”,下面就是输入你的安装路径,点“应用”、“确定”。 六、搞定!兄弟,还有,你给的分是不是有点。。。。呵呵!

jdk1.6新特性

一:Desktop类和SystemTray类在JDK6中 ,AWT新增加了两个类:Desktop和SystemTray。前者可以用来打开系统默认浏览器浏览指定的URL,打开系统默认邮件客户端给指定的邮箱发邮件,用默认应用程序打开或文件(比如,用记事本打开以txt为后缀名的文件),用系统默认的打印机打印文档;后者可以用来在系统托盘区创建一个托盘程序.二:使用JAXB2来实现对象与XML之间的映射JAXB是Java Architecture for XML Binding的缩写,可以将一个Java对象转变成为XML格式,反之亦然。我们把对象与关系数据库之间的映射称为ORM, 其实也可以把对象与XML之间的映射称为OXM(Object XML Mapping). 原来JAXB是Java EE的一部分,在JDK6中,SUN将其放到了Java SE中,这也是SUN的一贯做法。JDK6中自带的这个JAXB版本是2.0, 比起1.0(JSR 31)来,JAXB2(JSR 222)用JDK5的新特性Annotation来标识要作绑定的类和属性等,这就极大简化了开发的工作量。实际上,在Java EE 5.0中,EJB和Web Services也通过Annotation来简化开发工作。另外,JAXB2在底层是用StAX(JSR 173)来处理XML文档。除了JAXB之外,我们还可以通过XMLBeans和Castor等来实现同样的功能。三:理解StAXStAX(JSR 173)是JDK6.0中除了DOM和SAX之外的又一种处理XML文档的API。StAX 的来历 :在JAXP1.3(JSR 206)有两种处理XML文档的方法:DOM(Document Object Model)和SAX(Simple API for XML).由于JDK6.0中的JAXB2(JSR 222)和JAX-WS 2.0(JSR 224)都会用到StAX所以Sun决定把StAX加入到JAXP家族当中来,并将JAXP的版本升级到1.4(JAXP1.4是JAXP1.3的维护版本). JDK6里面JAXP的版本就是1.4. 。StAX是The Streaming API for XML的缩写,一种利用拉模式解析(pull-parsing)XML文档的API.StAX通过提供一种基于事件迭代器(Iterator)的API让程序员去控制xml文档解析过程,程序遍历这个事件迭代器去处理每一个解析事件,解析事件可以看做是程序拉出来的,也就是程序促使解析器产生一个解析事件然后处理该事件,之后又促使解析器产生下一个解析事件,如此循环直到碰到文档结束符;SAX也是基于事件处理xml文档,但却是用推模式解析,解析器解析完整个xml文档后,才产生解析事件,然后推给程序去处理这些事件;DOM采用的方式是将整个xml文档映射到一颗内存树,这样就可以很容易地得到父节点和子结点以及兄弟节点的数据,但如果文档很大,将会严重影响性能。四:使用Compiler API现在我 们可以用JDK6 的Compiler API(JSR 199)去动态编译Java源文件,Compiler API结合反射功能就可以实现动态的产生Java代码并编译执行这些代码,有点动态语言的特征。这个特性对于某些需要用到动态编译的应用程序相当有用, 比如JSP Web Server,当我们手动修改JSP后,是不希望需要重启Web Server才可以看到效果的,这时候我们就可以用Compiler API来实现动态编译JSP文件,当然,现在的JSP Web Server也是支持JSP热部署的,现在的JSP Web Server通过在运行期间通过Runtime.exec或ProcessBuilder来调用javac来编译代码,这种方式需要我们产生另一个进程去做编译工作,不够优雅而且容易使代码依赖与特定的操作系统;Compiler API通过一套易用的标准的API提供了更加丰富的方式去做动态编译,而且是跨平台的。五:轻量级Http Server API JDK6 提供了一个简单的Http Server API,据此我们可以构建自己的嵌入式Http Server,它支持Http和Https协议,提供了HTTP1.1的部分实现,没有被实现的那部分可以通过扩展已有的Http Server API来实现,程序员必须自己实现HttpHandler接口,HttpServer会调用HttpHandler实现类的回调方法来处理客户端请求,在这里,我们把一个Http请求和它的响应称为一个交换,包装成HttpExchange类,HttpServer负责将HttpExchange传给 HttpHandler实现类的回调方法.六:插入式注解处理API(Pluggable Annotation Processing API)插入式注解处理API(JSR 269)提供一套标准API来处理Annotations(JSR 175)实际上JSR 269不仅仅用来处理Annotation,我觉得更强大的功能是它建立了Java 语言本身的一个模型,它把method, package, constructor, type, variable, enum, annotation等Java语言元素映射为Types和Elements(两者有什么区别?), 从而将Java语言的语义映射成为对象, 我们可以在javax.lang.model包下面可以看到这些类. 所以我们可以利用JSR 269提供的API来构建一个功能丰富的元编程(metaprogramming)环境.JSR 269用Annotation Processor在编译期间而不是运行期间处理Annotation, Annotation Processor相当于编译器的一个插件,所以称为插入式注解处理.如果Annotation Processor处理Annotation时(执行process方法)产生了新的Java代码,编译器会再调用一次Annotation Processor,如果第二次处理还有新代码产生,就会接着调用Annotation Processor,直到没有新代码产生为止.每执行一次process()方法被称为一个"round",这样整个Annotation processing过程可以看作是一个round的序列.JSR 269主要被设计成为针对Tools或者容器的API. 举个例子,我们想建立一套基于Annotation的单元测试框架(如TestNG),在测试类里面用Annotation来标识测试期间需要执行的测试方法。七:用Console开发控制台程序JDK6中提供了java.io.Console 类专用来访问基于字符的控制台设备. 你的程序如果要与Windows下的cmd或者Linux下的Terminal交互,就可以用Console类代劳. 但我们不总是能得到可用的Console, 一个JVM是否有可用的Console依赖于底层平台和JVM如何被调用. 如果JVM是在交互式命令行(比如Windows的cmd)中启动的,并且输入输出没有重定向到另外的地方,那么就可以得到一个可用的Console实例.八:对脚本语言的支持如: ruby, groovy, javascript.九:Common AnnotationsCommon annotations原本是Java EE 5.0(JSR 244)规范的一部分,现在SUN把它的一部分放到了Java SE 6.0中.随着Annotation元数据功能(JSR 175)加入到Java SE 5.0里面,很多Java 技术(比如EJB,Web Services)都会用Annotation部分代替XML文件来配置运行参数(或者说是支持声明式编程,如EJB的声明式事务), 如果这些技术为通用目的都单独定义了自己的Annotations,显然有点重复建设, 所以,为其他相关的Java技术定义一套公共的Annotation是有价值的,可以避免重复建设的同时,也保证Java SE和Java EE 各种技术的一致性.下面列举出Common Annotations 1.0里面的10个Annotations Common Annotations Annotation Retention Target DescriptionGenerated Source ANNOTATION_TYPE, CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE 用于标注生成的源代码 Resource Runtime TYPE, METHOD, FIELD 用于标注所依赖的资源,容器据此注入外部资源依赖,有基于字段的注入和基于setter方法的注入两种方式 Resources Runtime TYPE 同时标注多个外部依赖,容器会把所有这些外部依赖注入PostConstruct Runtime METHOD 标注当容器注入所有依赖之后运行的方法,用来进行依赖注入后的初始化工作,只有一个方法可以标注为PostConstructPreDestroy Runtime METHOD 当对象实例将要被从容器当中删掉之前,要执行的回调方法要标注为PreDestroy RunAs Runtime TYPE 用于标注用什么安全角色来执行被标注类的方法,这个安全角色必须和Container 的Security角色一致的。RolesAllowed Runtime TYPE, METHOD 用于标注允许执行被标注类或方法的安全角色,这个安全角色必须和Container 的Security角色一致的PermitAll Runtime TYPE, METHOD 允许所有角色执行被标注的类或方法DenyAll Runtime TYPE, METHOD 不允许任何角色执行被标注的类或方法,表明该类或方法不能在Java EE容器里面运行 DeclareRoles Runtime TYPE 用来定义可以被应用程序检验的安全角色,通常用isUserInRole来检验安全角色注意: 1.RolesAllowed,PermitAll,DenyAll不能同时应用到一个类或方法上2.标注在方法上的RolesAllowed,PermitAll,DenyAll会覆盖标注在类上的RolesAllowed,PermitAll,DenyAll3.RunAs,RolesAllowed,PermitAll,DenyAll和DeclareRoles还没有加到Java SE 6.0上来 4. 处理以上Annotations的工作是由Java EE容器来做, Java SE 6.0只是包含了上面表格的前五种Annotations的定义类,并没有包含处理这些Annotations的引擎,这个工作可以由Pluggable Annotation Processing API(JSR 269)来做

Java编程之jdk1.4,jdk1.5和jdk1.6的区别分析

jdk6和jdk5相比的新特性有:1、instrumentation在JavaSE6里面,instrumentation包被赋予了更强大的功能:启动后的instrument、本地代码instrument,以及动态改变classpath等等。2、Http有所增强3、Java管理扩展(JMX)架构及其框架,以及在JavaSE5中新引入的JMXAPI--java.lang.management包4、JDK6中新增加编译器API(JSR199)。利用此API,您可以在运行时调用Java编译器,可以编译不同形式的源代码文件,还可以采集编译器的诊断信息。5、JavaDB和JDBC4.06、对脚本语言的支持JavaSE6新引入的对JSR223的支持,它旨在定义一个统一的规范,使得Java应用程序可以通过一套固定的接口与各种脚本引擎交互,从而达到在Java平台上调用各种脚本语言的目的。7、XMLAPI与Web服务JavaSE6中提供的XML处理框架,以及在此框架之上结合注释(Annotation)技术,所提供的强大的针对Web服务的支持要详细的可以参看:七、XMLAPI与Web服务

“java jdk 1.6“这软件怎么用

呵呵,楼上说的够详细的啦,不过我补充一句:环境变量的设置(教人要教最关键的)。 jdk的东西,初学不需要精通,知道它是用来做java开发的就可以了。 设置环境变量: 1.首先,我们要安装jdk,呵呵,注意你的安装目录,最好自定义一下,以后好找,别到最后了,连安装到哪里都不知道。好像它会自动先安装jdk,安装好后,提示你安装jre。都安装上,同一个目录下就可以。如:我的安装目录是:D:\programer\Java。在这个目录下会有你刚才安装的jdk和jre,并且都标示有版本号,我的是:1.5的。不过,道理一样。 2.配置你的环境变量:有3个值需要配置。右键点击“我的电脑”—》“属性”—》“高级”—》“环境变量”—》单击“系统变量”下的“新建”按钮,依次新建“classpath”“java_home”“path”环境变量,他们的值分别为: java_home=D:\programer\Java\jdk1.5.0_06 classpath=.\;D:\programer\Java\jdk1.5.0_06lib\tools.jar;D:\programer\Java\jdk1.5.0_06\lib\dt.jar;D:\programer\Java\jdk1.5.0_06\jre\lib path=D:\programer\Java\jdk1.5.0_06\bin (如果你的电脑已经有了path系统变量,则直接在后面加上这个值即可) 以上3值的设定,请注意比较我的安装路径。千万不要直接照抄! 3、测试jdk的安装: “开始”—》“运行”—》输入“cmd”进入DOS—》分别输入“java”和“javac” 如出现一系列参数,则,安装正常…… 4.其实,你要进行java的开发,仅有jdk,虽然可以,但不方便,建议安装eclipse,并且使用myeclipse,我的理解是myeclipse是eclipse的一个插件,如果有问题,问我。安装myeclipse时,如果你的电脑主题使用了别的,或是使用了美化包,建议全部关闭,使之成为最原始的windows经典主题。否则,会死翘翘滴。。。。。安装完后,主题可以再变回来,如果你要进行桌面程序的开发如:使用SWT+JFACE,建议还是使用默认的windows经典主题,否则,设计界面会有问题。 呵呵,干脆,我把关于java所需要的一些列软件的安装,都告诉你吧,看样你是初学java。这样会使你的学习过程比较有乐趣,想当年,我一个人研究的myeclipse的平台,连个帮我的人都没有,那个迷茫,那个郁闷,我都想放弃了。这可是当年搞定myeclipse时保存下来的心得,全部给你把。有问题找我。具体软件的下载,你先自己找找看吧,对了,你的E文好吗? 要去官方网站上下,或是使用myecli自带的help_》help contents里面自己找。建议先使用我推荐的版本,然后自己熟了,在逐渐摸索。 一、tomcat的安装和配置 1、安装版本:jakarta-tomcat-5.0.28.exe (core版) 2、配置系统环境变量: 设:我的安装路径为:D:\programer\Tomcat 5.0 则:右键点击“我的电脑”—》“属性”—》“高级”—》“环境变量”—》单击“系统变量”下的“新建”按钮,新建“tomcat_home”环境变量,它的值为: tomcat_home=D:\programer\Tomcat 5.0 以上值的设定,请注意比较我的安装路径。 3、测试运行tomcat的安装: 可直接双击托盘内tomcat的小图标,或到安装目录下找到“tomcat5w.exe”,双击,即可弹出tomcat的运行界面。他的路径为D:\programer\Tomcat 5.0 \bin\tomcat5w.exe 测试:打开ie,输入“呵呵!

java jdk1.6环境下实现 ftp文件上传

通过JDK自带的API实现 package com.cloudpower.util; import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException; import sun.net.TelnetInputStream;import sun.net.TelnetOutputStream;import sun.net.ftp.FtpClient; /** * Java自带的API对FTP的操作 * @Title:Ftp.java * @author: 周玲斌 */public class Ftp { /** * 本地文件名 */ private String localfilename; /** * 远程文件名 */ private String remotefilename; /** * FTP客户端 */ private FtpClient ftpClient; /** * 服务器连接 * @param ip 服务器IP * @param port 服务器端口 * @param user 用户名 * @param password 密码 * @param path 服务器路径 * @author 周玲斌 * @date 2012-7-11 */ public void connectServer(String ip, int port, String user, String password, String path) { try { /* ******连接服务器的两种方法*******/ //第一种方法// ftpClient = new FtpClient();// ftpClient.openServer(ip, port); //第二种方法 ftpClient = new FtpClient(ip); ftpClient.login(user, password); // 设置成2进制传输 ftpClient.binary(); System.out.println("login success!"); if (path.length() != 0){ //把远程系统上的目录切换到参数path所指定的目录 ftpClient.cd(path); } ftpClient.binary(); } catch (IOException ex) { ex.printStackTrace(); throw new RuntimeException(ex); } } /** * 关闭连接 * @author 周玲斌 * @date 2012-7-11 */ public void closeConnect() { try { ftpClient.closeServer(); System.out.println("disconnect success"); } catch (IOException ex) { System.out.println("not disconnect"); ex.printStackTrace(); throw new RuntimeException(ex); } } /** * 上传文件 * @param localFile 本地文件 * @param remoteFile 远程文件 * @author 周玲斌 * @date 2012-7-11 */ public void upload(String localFile, String remoteFile) { this.localfilename = localFile; this.remotefilename = remoteFile; TelnetOutputStream os = null; FileInputStream is = null; try { //将远程文件加入输出流中 os = ftpClient.put(this.remotefilename); //获取本地文件的输入流 File file_in = new File(this.localfilename); is = new FileInputStream(file_in); //创建一个缓冲区 byte; int c; while ((c = is.read(bytes)) != -1) { os.write(bytes, 0, c); } System.out.println("upload success"); } catch (IOException ex) { System.out.println("not upload"); ex.printStackTrace(); throw new RuntimeException(ex); } finally{ try { if(is != null){ is.close(); } } catch (IOException e) { e.printStackTrace(); } finally { try { if(os != null){ os.close(); } } catch (IOException e) { e.printStackTrace(); } } } } /** * 下载文件 * @param remoteFile 远程文件路径(服务器端) * @param localFile 本地文件路径(客户端) * @author 周玲斌 * @date 2012-7-11 */ public void download(String remoteFile, String localFile) { TelnetInputStream is = null; FileOutputStream os = null; try { //获取远程机器上的文件filename,借助TelnetInputStream把该文件传送到本地。 is = ftpClient.get(remoteFile); File file_in = new File(localFile); os = new FileOutputStream(file_in); byte; int c; while ((c = is.read(bytes)) != -1) { os.write(bytes, 0, c); } System.out.println("download success"); } catch (IOException ex) { System.out.println("not download"); ex.printStackTrace(); throw new RuntimeException(ex); } finally{ try { if(is != null){ is.close(); } } catch (IOException e) { e.printStackTrace(); } finally { try { if(os != null){ os.close(); } } catch (IOException e) { e.printStackTrace(); } } } } public static void main(String agrs) { String filepath = { "/temp/aa.txt", "/temp/regist.log"}; String localfilepath = { "C:\\tmp\\1.txt","C:\\tmp\\2.log"}; Ftp fu = new Ftp(); /* * 使用默认的端口号、用户名、密码以及根目录连接FTP服务器 */ fu.connectServer("127.0.0.1", 22, "anonymous", "IEUser@", "/temp"); //下载 for (int i = 0; i 《 filepath.length; i++) { fu.download(filepath); } String localfile = "E:\\号码.txt"; String remotefile = "/temp/哈哈.txt"; //上传 fu.upload(localfile, remotefile); fu.closeConnect(); }}

文章分享结束,jdk1 6和就职的公司居然还在用Java 1.6,该不该换公司的答案你都知道了吗?欢迎再次光临本站哦!

jdk1 6(就职的公司居然还在用Java 1.6,该不该换公司)

本文编辑:admin
jdk1 6

更多文章:


我想挂个广告怎么办?在自家墙体悬挂广告牌是否属违法行为

我想挂个广告怎么办?在自家墙体悬挂广告牌是否属违法行为

大家好,如果您还对挂广告不太了解,没有关系,今天就由本站为大家分享挂广告的知识,包括我想挂个广告怎么办的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录我想挂个广告怎么办在自家墙体悬挂广告牌是否属违法行为挂广告牌必须

2024年4月7日 07:00

奇迹mu永恒之巅精灵游侠和神射手区别?奇迹 永恒之巅黑暗深渊地图是干嘛的

奇迹mu永恒之巅精灵游侠和神射手区别?奇迹 永恒之巅黑暗深渊地图是干嘛的

本篇文章给大家谈谈奇迹永恒,以及奇迹mu永恒之巅精灵游侠和神射手区别对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录奇迹mu永恒之巅精灵游侠

2023年10月21日 17:41

《原神》蓝绿修改器会封号吗?原神蓝绿修改器会用到微信的钱嘛,

《原神》蓝绿修改器会封号吗?原神蓝绿修改器会用到微信的钱嘛,

其实原神修改器的问题并不复杂,但是又很多的朋友都不太了解《原神》蓝绿修改器会封号吗,因此呢,今天小编就来为大家分享原神修改器的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录《原神》蓝绿修改器会封号吗原神蓝绿修改器

2024年3月20日 12:45

摩托罗拉me600(摩托罗拉ME600怎么样)

摩托罗拉me600(摩托罗拉ME600怎么样)

这篇文章给大家聊聊关于摩托罗拉me600,以及摩托罗拉ME600怎么样对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录摩托罗拉ME600怎么样买摩托罗拉ME600好 还是买摩托罗拉MB300 好 摩托罗拉me600忘记密码了怎

2024年3月20日 08:45

如何在自己电脑上创建一个虚拟机?电脑怎么使用虚拟机

如何在自己电脑上创建一个虚拟机?电脑怎么使用虚拟机

大家好,关于网络虚拟机很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于如何在自己电脑上创建一个虚拟机的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录如何

2024年7月19日 12:20

编程是看电子书好,还是实体书好?自学编程需要看哪些书

编程是看电子书好,还是实体书好?自学编程需要看哪些书

大家好,编程电子书相信很多的网友都不是很明白,包括编程是看电子书好,还是实体书好也是一样,不过没有关系,接下来就来为大家分享关于编程电子书和编程是看电子书好,还是实体书好的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本

2024年7月18日 17:04

microsoft net framework(Microsoft .NET Framework是什么,重要吗)

microsoft net framework(Microsoft .NET Framework是什么,重要吗)

其实microsoft net framework的问题并不复杂,但是又很多的朋友都不太了解Microsoft .NET Framework是什么,重要吗,因此呢,今天小编就来为大家分享microsoft net framework的一些知

2024年7月11日 11:30

破解软件是否违法?如何破解软件

破解软件是否违法?如何破解软件

大家好,关于破解软件很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于破解软件是否违法的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录破解软件是否违法如何

2024年1月26日 20:00

天涯明月刀大轻功(天涯明月刀大轻功怎么学 天刀大轻功获取流程详解)

天涯明月刀大轻功(天涯明月刀大轻功怎么学 天刀大轻功获取流程详解)

大家好,关于天涯明月刀大轻功很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于天涯明月刀大轻功怎么学 天刀大轻功获取流程详解的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位

2024年6月5日 08:33

苹果商店里怎么找不到猴子也疯狂了?与猴子也疯狂相似的游戏

苹果商店里怎么找不到猴子也疯狂了?与猴子也疯狂相似的游戏

其实猴子也疯狂的问题并不复杂,但是又很多的朋友都不太了解苹果商店里怎么找不到猴子也疯狂了,因此呢,今天小编就来为大家分享猴子也疯狂的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录苹果商店里怎么找不到猴子也疯狂了与

2024年6月20日 21:35

电子导航地图(高精地图与传统电子导航地图有什么区别)

电子导航地图(高精地图与传统电子导航地图有什么区别)

各位老铁们,大家好,今天由我来为大家分享电子导航地图,以及高精地图与传统电子导航地图有什么区别的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录高精地

2024年7月23日 15:26

附近出来卖的学生软件(请问有什么好用的学生软件)

附近出来卖的学生软件(请问有什么好用的学生软件)

大家好,附近出来卖的学生软件相信很多的网友都不是很明白,包括请问有什么好用的学生软件也是一样,不过没有关系,接下来就来为大家分享关于附近出来卖的学生软件和请问有什么好用的学生软件的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开

2024年10月31日 20:55

闪耀暖暖入夜派对答案(《闪耀暖暖》墨丘利在此刻的vip级别是多少)

闪耀暖暖入夜派对答案(《闪耀暖暖》墨丘利在此刻的vip级别是多少)

大家好,关于闪耀暖暖入夜派对答案很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于《闪耀暖暖》墨丘利在此刻的vip级别是多少的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位

2024年1月3日 23:40

dnf为什么安装不了(DNF在官方下载下来为什么安装不了,也重新下载了好几次都是一样)

dnf为什么安装不了(DNF在官方下载下来为什么安装不了,也重新下载了好几次都是一样)

大家好,今天小编来为大家解答以下的问题,关于dnf为什么安装不了,DNF在官方下载下来为什么安装不了,也重新下载了好几次都是一样这个很多人还不知道,现在让我们一起来看看吧!本文目录DNF在官方下载下来为什么安装不了,也重新下载了好几次都是一

2024年7月11日 17:51

win10 开始菜单打不开(win10点击开始菜单没有反应)

win10 开始菜单打不开(win10点击开始菜单没有反应)

这篇文章给大家聊聊关于win10 开始菜单打不开,以及win10点击开始菜单没有反应对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录win10点击开始菜单没有反应win10开始菜单和通知栏打不开,怎么点都没反应,怎么办为什么w

2024年6月26日 09:40

飞利浦w626(飞利浦W626的保修信息)

飞利浦w626(飞利浦W626的保修信息)

各位老铁们,大家好,今天由我来为大家分享飞利浦w626,以及飞利浦W626的保修信息的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录飞利浦W626的

2024年5月4日 16:25

罗源湾游玩地方有哪些?福州罗源湾世纪金源有什么好玩的

罗源湾游玩地方有哪些?福州罗源湾世纪金源有什么好玩的

“罗源湾”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看罗源湾游玩地方有哪些?福州罗源湾世纪金源有什么好玩的!本文目录罗源湾游玩地方有哪些福州罗源湾世纪金源有什么好玩的世界好玩吗,罗源罗源湾海洋世界景点怎么样贵安海洋世界和罗

2024年3月1日 01:35

友缘燃油怎么用?友缘在线,跟别人聊天没有话题,气氛很尴尬,怎么办

友缘燃油怎么用?友缘在线,跟别人聊天没有话题,气氛很尴尬,怎么办

大家好,如果您还对友缘不太了解,没有关系,今天就由本站为大家分享友缘的知识,包括友缘燃油怎么用的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录友缘燃油怎么用友缘在线,跟别人聊天没有话题,气氛很尴尬,怎么办北京友缘在

2024年6月8日 22:25

植物大战僵尸2游戏下载安装(电脑上怎么下载安装植物大战僵尸2)

植物大战僵尸2游戏下载安装(电脑上怎么下载安装植物大战僵尸2)

“植物大战僵尸2游戏下载安装”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看植物大战僵尸2游戏下载安装(电脑上怎么下载安装植物大战僵尸2)!本文目录电脑上怎么下载安装植物大战僵尸2手机怎么下载植物大战僵尸2怎么下载植物大战僵

2024年9月1日 18:50

微信ipad mini版下载(微信在 iPad mini 上能下载安装么具体如何下载呢)

微信ipad mini版下载(微信在 iPad mini 上能下载安装么具体如何下载呢)

大家好,微信ipad mini版下载相信很多的网友都不是很明白,包括微信在 iPad mini 上能下载安装么具体如何下载呢也是一样,不过没有关系,接下来就来为大家分享关于微信ipad mini版下载和微信在 iPad mini 上能下载安

2024年5月23日 01:47

近期文章

本站热文

电脑包尺寸对照表(电脑包要多大)
2024-07-23 11:15:58 浏览:3886
e10000(皖E10000是什么车)
2024-07-17 11:22:25 浏览:3508
ati radeon hd 5650(电脑的显卡是ATI Mobility Radeon HD 5650 (MADION PRO) ( 1 GB ) 这个显卡)
2024-07-07 05:01:37 浏览:3103
华为mate20pro版本区别(mate20pro有必要买ud版吗)
2024-07-24 08:26:42 浏览:2631
ipad买蜂窝版还是wifi版(ipad air 5买蜂窝好不好)
2024-07-17 14:35:19 浏览:2238
vivo y3配置参数(vivoy3参数是什么)
2024-07-16 07:07:06 浏览:2074
标签列表

热门搜索