① java开源框架是什么
Java开源项目
Spring Framework 【Java开源 J2EE框架】
Spring 是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的 Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了 Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。 Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的 aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。【SpringIDE:Eclipse平台下一个辅助开发插件】.
WebWork 【Java开源 Web框架】
WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。 Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等。 WebWork2建立在Xwork之上,处理HTTP的响应和请求。WebWork2使用ServletDispatcher将HTTP请求的变成 Action(业务层Action类), session(会话)application(应用程序)范围的映射,request请求参数映射。WebWork2支持多视图表示,视图部分可以使用 JSP, Velocity, FreeMarker, JasperReports,XML等。在WebWork2.2中添加了对AJAX的支持,这支持是构建在DWR与Dojo这两个框架的基础之上.【EclipseWork:用于WebWork辅助开发的一个Eclipse插件】
Struts 【Java开源 Web框架】
Struts 是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件】
Hibernate 【Java开源 持久层框架】
Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【Hibernate Synchronizer】【MiddlegenIDE】
Quartz 【Java开源 Job调度】
Quartz 是OpenSymphony开源组织在Job scheling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 1.5.0。
Velocity 【Java开源 模板引擎】
Velocity 是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。 Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。 【VeloEclipse :Velocity在Eclipse平台下的一个辅助开发插件】
IBATIS 【Java开源 持久层框架】
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象, 这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义。
Compiere ERP&CRM 【Java开源ERP与CRM系统】
Compiere ERP&CRM为全球范围内的中小型企业提供综合型解决方案,覆盖从客户管理、供应链到财务管理的全部领域,支持多组织、多币种、多会计模式、多成本计算、多语种、多税制等国际化特性。易于安装、易于实施、易于使用。只需要短短几个小时,您就可以使用申购-采购-发票-付款、报价-订单-发票-收款、产品与定价、资产管理、客户关系、供应商关系、员工关系、经营业绩分析等强大功能了。
Roller Weblogger 【Java开源 Blog博客】
这个weblogging 设计得比较精巧,源代码是很好的学习资料。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack,提供页面模板,RSS syndication,blogroll管理和提供一个XML-RPC 接口。
Eclipse 【Java开源 开发工具】
Eclipse平台是IBM向开放源码社区捐赠的开发框架,它之所以出名并不是因为IBM宣称投入开发的资金总数 —4千万美元,而是因为如此巨大的投入所带来的成果:一个成熟的、精心设计的以及可扩展的体系结构。
NetBeans 【Java开源 开发工具】
NetBeans IDE 是一个为软件开发者提供的自由、开源的集成开发环境。您可以从中获得您所需要的所有工具,用 Java、C/C++ 甚至是 Ruby 来创建专业的桌面应用程序、企业应用程序、web 和移动应用程序。此 IDE 可以在多种平台上运行,包括 Windows、Linux、Mac OS X 以及 Solaris;它易于安装且非常方便使用。
XPlanner 【Java开源 项目管理】
XPlanner 一个基于Web的XP团队计划和跟踪工具。XP独特的开发概念如iteration、user stories等,XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程,并解决利用XP思想来开发项目所碰到的问题。 XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtual note cards),iterations、user stories与工作记录的追踪,未完成stories将自动迭代,工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持。
HSQLDB 【Java开源 DBMS数据库】
HSQLDB(Hypersonic SQL)是纯Java开发的关系型数据库,并提供JDBC驱动存取数据。支持ANSI-92 标准 SQL语法。而且他占的空间很小。大约只有160K,拥有快速的数据库引擎。
Liferay 【Java开源 Portal门户】
代表了完整的J2EE应用,使用了Web、EJB以及JMS等技术,特别是其前台界面部分使用Struts 框架技术,基于XML的portlet配置文件可以自由地动态扩展,使用了Web Services来支持一些远程信息的获取,使用 Apahce Lucene实现全文检索功能。
JetSpeed 【Java开源 Portal门户】
Jetspeed 是一个开放源代码的企业信息门户(EIP)的实现,使用的技术是Java和XML。用户可以使用浏览器,支持WAP协议的手机或者其它的设备访问Jetspeed架设的信息门户获取信息。Jetspeed扮演着信息集中器的角色,它能够把信息集中起来并且很容易地提供给用户。
JOnAS 【Java开源 J2EE服务器】
JOnAS 是一个开放源代码的J2EE实现,在ObjectWeb协会中开发。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet 2.3和JSP 1.2规范。JOnAS服务器依赖或实现以下的Java API:JCA、JDBC、JTA 、JMS、JMX、JNDI、JAAS、JavaMail 。
JFox3.0 【Java开源 J2EE服务器】
JFox 是 Open Source Java EE Application Server,致力于提供轻量级的Java EE应用服务器,从3.0开始,JFox提供了一个支持模块化的MVC框架,以简化EJB以及Web应用的开发! 如果您正在寻找一个简单、轻量、高效、完善的Java EE开发平台,那么JFox正是您需要的。
② java是个什么东西,用来做什么的
在现实社会中有很多地方使用到了Java,从电子商务网站到Android apps,从科学应用到金融产品,例如电子交易系统,从类似Minecraft的游戏再到Eclipse,Netbeans和IntelliJ的桌面应用,从开源的资源库J2MEapps等等。下面带你一起详细了解Java的应用领域。
如果你想知道Java应用在哪里,你离答案并不远。打开你的安卓手机或者任何的App,它们完全是用有着谷歌AndroidAPI的Java编程语言编写的,这个API和JDK非常相似。前几年安卓刚开始起步而到今日已经很多Java程序员是安卓App的开发者。
Java在金融服务业有着很大应用。很多的全球性投资银行例如GoldmanSachs(高盛投资公司),Citigroup(花旗集团),Barclays(巴克莱银行),StandardCharted(英国渣打银行)和一些其他银行都用Java编写前台和后台的电子交易系统,结算、信息确认系统,数据处理项目和以及其他的项目。
Java被运用于编写服务端应用,但大多数没有前端,都是从一个服务端(上一级)接收数据,处理数据后发向其他的处理系统(下一级)。JavaSwing由于能开发出图形用户界面的客户端供交易者使用而备受欢迎,但是现在C#正在快速地取代Swing的市场,这让Swing倍有压力。
Java同样也在电子商务和网站开发上有着广泛的运用。你可以运用很多RESTfull架构,这些架构是用SpringMVC,Struts2.0和类似的框架开发出来的。甚至简单的Servlet,JSP和Struts在各种政府项目也是备受欢迎,许多政府,医疗,保险,教育,国防和其他部门的网站都是建立在Java之上的。
很多有用的软件和开发工具都是运用Java编写和开发的,例如Ecilpse,InetelliJIdea和NetbansIDE.。我认为这些都是经常使用的用Java编写的桌面应用程序。
就如上面所说,Swing曾经在图形用户界面的客户端开发非常流行,它们大多数应用在金融服务领域以及投资银行。虽然现在JavaFx正在逐渐地流行起来,但仍然无法替代Swing,而且C#已经在大部分金融领域中代替了Swing。
第三方交易系统,金融服务行业的一大部分,同样也是使用Java编写的。例如像Murex这种受欢迎的交易系统,运用于与许多的银行前端链接,同样也是用Java编写的。
java300集零基础入门教程:网页链接
虽然IOS和Android的到来几乎扼杀了J2ME的市场,但是仍然有很多的低端诺基亚和三星手机在使用着J2ME。曾经有段时间大部分的游戏,手机应用都是利用MIDP和CLDC,或者J2ME部分平台编写的,以适用于Android系统。.J2ME依然在蓝光、磁卡、机顶盒等产品中流行着。app之所以如此流行是因为对于所有的诺基亚手机,app仍然适用于J2ME。
Java在嵌入式领域也有很大的应用。你只需要130KB就能够使用Java技术(在一块小的芯片或者传感器上),这显示了这个平台是多么的可靠。Java当初是为了嵌入式设备而设计的。事实上,这也是Java当初的一项“立即编写,随处运行”主旨的一部分。
Hadoop和其他的大数据技术也在不同程度使用着Java,例如Apache的基于Java的Hbase,Accumulo(开源),以及ElasticSearch。但是Java并没有占领整个领域,还有其他的大数据技术例如MongoDB就是使用C++编写的.如果Hadoopor和ElasticSearch逐渐发展,那么Java就能有潜力在大数据技术领域上得到更大的发展空间。
Java平台已经大大提高了性能特点和JITS,并且Java也拥有像C++级别的传输性能。因此,Java也流行于编写高并发系统。虽然Java的传输性能不比C++,但你可以不用考虑Java的安全性,可移植性和可维护性等问题(Java内部已经实现好了),而且Java有着更快的运行速度。安全性等问题会使一个没有经验的C++程序员编写的应用程序变得更加缓慢和不可靠。
现在Java经常是科学应用的默认选择,包括了自然语言处理。这主要的原因是因为Java比起C++或者其他语言有更加的安全,可移植,可维护,而且Java有着更好的高级并发工具。
其实不管是选择哪个领域只要自己技术够强高新就不是问题。
③ 如何直接用java Swing写日期下拉列表框
DateDropFrame extends JFrame
给year和month添加一个ItemListener来实时计算指定年和月中有多少天就可以了.
代码是用Swing写的,不过看你的图,不像是Swing界面.
/**
* Create the frame.
*/
public DateDropFrame() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new FlowLayout(FlowLayout.LEFT));
final JComboBox year = new JComboBox();
year.setModel(new DefaultComboBoxModel(getModel(start, end)));
contentPane.add(year);
final JComboBox month = new JComboBox();
month.setModel(new DefaultComboBoxModel(getModel(1, 12)));
contentPane.add(month);
final JComboBox day = new JComboBox();
contentPane.add(day);
year.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
setDay(year, month, day);
}
});
month.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
setDay(year, month, day);
}
});
setDay(year, month, day);
setContentPane(contentPane);
}
/**
* calculate days in select month & year
*/
private void setDay(JComboBox year, JComboBox month, JComboBox day) {
int y = Integer.parseInt((String) year.getSelectedItem());
int m = Integer.parseInt((String) month.getSelectedItem());
Calendar c = Calendar.getInstance();
c.set(Calendar.YEAR, y);
c.set(Calendar.MONTH, m - 1);
int days = c.getActualMaximum(Calendar.DAY_OF_MONTH);
day.setModel(new DefaultComboBoxModel(getModel(1, days)));
}
/**
* get String array [start, end]
*/
private String[] getModel(int start, int end) {
String[] m = new String[end - start + 1];
for (int i = 0; i < m.length; i++) {
m[i] = String.valueOf(i + start);
}
return m;
}
④ Java GUI的发展和演化简史
当Java在 年的春天第一次发布的时候 它包含了一个叫AWT(Abstract Windowing Toolkit)的库 用来构建图形用户界面应用程序 Java很有雄心的宣言-- write once run anywhere 许诺 一个具有下拉菜单 命令按钮 滚动条以及其他常见的GUI控件的应用程序将能够在各种操作系统上运行而不必重新编译成针对某一平台的二进制代码 包括Microsoft Windows Sun s own Solaris Apple s Mac OS以及Linux
虽然最初Java是支持操作系统独立的应用程序开发 在Java提出 write once run anywhere 宣言那段时间的革命导致了Java applet和主导桌面应用程序计划的产生
尽管从那以后大部分构建桌面应用程序的成就都慢慢衰退 Java构建图形用户界面的能力反倒增强了 跟踪Java GUI的发展和演化 我们将发现 个主要的构建窗口程序库:AWT Swing和SWT(Standard Widget Toolkit) 在这一章里我们将查看和分析这 个库中的每一个库 并且我们将一起来看一看第 个库--JFace 其实JFace不算一个真正的构建窗口程序库 而是在基于SWT之上的一个抽象层
AWT
很多围绕着介绍Java技术的令人激动的地方都基于applets--一个可以让程序通过Internet发布并在浏览器内执行的新技术 用户和开发人员都热衷于斯 因为applets许诺将简化跨平台应用程序的开发 维护和发布 而这是商业软件开发中几个最富挑战性的话题
为了方便用Java构团薯虚建图形用户界面 Sun最初提供了一个在所有平台下具有的独特Java外观的图形界面库 Sun在手镇applet技术策略方面的首要伙伴Netscape提出applets应该维塌燃持和运行时平台一样的外观 他们希望applets在某一平台下在显示和行为上能够像其他应用程序一样
为了实现Netscape的 本地外观 的目标 在JDK的第一个发布版中包含了AWT这个库 AWT的缺省实现使用了 对等 机制 即每一个Java GUI窗口部件都在底层的窗口系统中有一个对应的组件
例如 每一个java awt Button对象将在底层窗口系统中创建一个唯一对应的button 当用户点击那个按钮的时候 事件将从本地实现库传送到Java虚拟机里 并且最终传送到与java awt Button对象相关联的逻辑 对等系统的实现以及Java组件与对等组件之间的交流的实现都隐藏在底层JVM实现中 Java语言级的代码仍然跨平台
尽管如此 为了保持 write once run anywhere 的许诺 Java不得不妥协和折衷 特别的 Java采用了 最小公分母 的方法 即AWT仅仅提供所有本地窗口系统都提供的特性 这就需要开发人员为更多高级特性开发他们自己的高级窗口部件 然后提供给用户不同的使用体验
其他的问题也减缓了人们对applets的接受和承认 Applets运行在一个安全的 沙箱 里面并且能够阻止恶意的applets对文件系统 网络连接等资源的滥用 尽管沙箱提供了安全性 但它 *** 了应用程序 毕竟一个应用程序不能运用一个网络连接来保存一个文件是不好的 Java GUI应用程序也不能像本地程序一样响应灵敏 这是在当前硬件平台和Java的解释性天性下预期结果
所以 用AWT开发的应用程序既缺少流行GUI程序的许多特性 又不能达到在显示和行为上像用本地窗口构建库开发的程序一样的目标 应该有一个更好的库来让Java GUI取得成功
Swing
于 年JavaOne大会上提出并在 年 月发布的JFC(Java Foundation Classes)包含了一个新的使用Java窗口开发包 这个新的GUI组件叫做Swing 感觉到它是对AWT的升级 并且看起来对Java占据计算机世界很有帮助 对Java来说已经万事具备了:可下载的applets将是未来的软件 人们将从其他操作系统转向JavaOS 从传统的计算机转向叫做JavaStation的瘦客户端网络计算机 Microsoft将最终因为不能在桌面程序领域与之想抗衡而被废黜 虽然这些景象从来没有实现 Swing作为Java applets和applications的GUI库倒确实十分繁荣
Swing架构
尽管 Swing 仅仅是这个新组件的指代名称 它一直持续使用到今天 可能是因为这个名称太贴切了 Swing尝试着以以下几种方式改变公认的观点:
AWT依赖对等架构 用Java代码包装本地窗口部件 Swing却根本不使用本地代码和本地窗口部件
AWT把绘制屏幕交给本地窗口部件 Swing自己的组件绘制自己
因为Swing不依赖本地窗口部件 它可以抛弃AWT的最小公分母的方法并在每个平台下实现每个窗口部件 从而创建一个比AWT更强大的开发工具包
Swring缺省情况下采用本地平台的显示外观 然而 它并不仅仅限于此 而是还可以采用插件式的显示外观 因此Swing应用程序可以看起来想Windows应用程序 Motif应用程序 Mac应用程序甚至它自己的显示外观-- 金属 所以 Swing应用程序可以完全忽略它运行时所在的操作系统环境并且仅仅看起来像自己 这是单调一致的桌面应用程序外观的一大挑衅 想象一下Swing有多傲慢!
尽管如此 Swing组件超越了简单的窗口部件 它体现了正不断出现的设计模式以及一些最佳实践 采用Swing 你不仅仅得到GUI窗口部件的句柄和它所包含的数据 而是定义一个模型去保存数据 定义一个视图去显示数据 定义一个控制器去响应用户输入 事实上 大部分Swing组件的构建是基于MVC(model view controller)模式的 MVC使应用程序开发变得更清晰 更易维护和管理
Swing的缺点
尽管Swing在AWT的基础上做出了巨大的改进 它仍然没能使Java作为构建桌面应用程序的工具 也许Swing的拥护者会立即举出Swing的成功应用案例 例如开源文本编辑器jEdit或者Borland的UML(Unified Modeling Language)建模工具Together 但是Swing应用程序仍然在桌面应用方面显得很少 Sun提出了一个记录可得到的Swing应用程序的列表 Swing Sightings 来证明Swing应用是值得注目的 然而我们也看到了 C++ Sightings 和 Visual Basic Sightings 的网页
为什么Swing没有履行它的诺言?原因可能归结为下面两点:
速度的缺乏
界面外观
Swing的狂热者可能会对Swing速度慢这一点感到忿忿不平 不可否认 JIT(just in time)编译器 Java虚拟机以及Java语言本身就使得Swing应用程序和本地程序拉开了一定差距 尽管如此 Swing仍显得比本地应用程序行动缓慢和响应不积极 由于桌面计算变得越来越快 用户的速度期望值也随之增加 任何可感知的迟缓都将是无法忍受的
对Swing的显示外观的问题的抱怨也引起了Swing的开发者的愤怒 毕竟他么宣称Swing拥有各种可插入式的外观 并且事实上可以显示成任何样子 J SE 甚至添加了对Windows XP和GTK+的支持 以致于在这些平台下运行的Swing应用程序会自动采用该平台的外观
尽管如此 问题仍然存在:Swing将一直处于最新的图形用户界面的后面 因为必需在Java库里明确地添加对最新GUI的支持 当使用J SE 或更早的版本时在Windows XP上运行的Swing应用程序将显现为Windows 的外观 而且 当使用XP themes或WindowBlinds等软件来改变皮肤或图形外观时用户日益铭记他们自己的特征和个性 而Swing不仅不理会操作系统 甚至连用户参数选择也不理会
简短的说 Swing应用程序不像本地应用程序一样执行 外观也不一样 Java要想摆脱常年以来处于不断学习中的地位并掌握桌面应用程序开发中的众多角色 它的GUI仍需要改进
SWT
当社区人员开始构建Eclipse时 他们意识到Swing和AWT都不足以用来构建真实世界的商业程序 结果 他们决定构建一套新的GUI开发工具包用来显示Eclipse界面 这个工具包借用了VisualAge SmallTalk中的大量的库 他们把这个新的工具包命名为SWT(Standard Widget Toolkit) 意识到本地行为需要本地窗口部件 SWT的设计者们采用了AWT的对等架构 而仅仅当本地组件不存在时(例如Motif下的树形组件)才求助于Java实现 这样 SWT吸收了AWT和Swing实现的最好的部分:当可以得到本地组件时使用本地实现 当不能得到本地组件时使用Java实现 这就同时保证了与本地窗口部件相当的外观和响应度
SWT于 年与Eclipse IDE(Integrated Development Environment)一起集成发布 在这个最初发布版之后 SWT发展和演化为一个独立的版本 它可以使用与众多操作系统 包括Microsoft Windows Mac OS X以及几种不同风格的Unix等 写作本书的这个时候 当前官方发布版本为 版为beta版 现在也可以下载 本系列文章采用SWT
另一个重要的优势为SWT的源代码是在一个开源许可下免费可得并无病毒的 这就意味着你可以在你的应用程序中使用SWT并且在任何许可认证下发布它 源代码对理解SWT库的低级别功能性和调试应用程序都是很有帮助的 开源软件也意味着比商业发布软件更新的更加频繁
JFace
JFace的构建基于SWT 它提供了SWT的功能和更简易的MVC模式 SWT使用直接的API提供了原生的窗口部件 例如 你创建一个table部件并且插入你想显示的行和列的数据 JFace则提供了在SWT基础之上的抽象层 所以你可以对抽象层编程然后抽象层与SWT API交互来替代直接对SWT API编程 考虑一下对本地C窗口部件接口编程同使用C++GUI类库的区别或是使用AWT与Swing的区别 这些类比将有助于阐述SWT与JFace的区别 例如 为了使用JFace中的table 你仍旧创建table窗口部件 但是你不向里面插入数据 反而 你将你的content(或model) provider类和你的display(或 view) provider类提供给它 接着 table调用你提供的类来决定数据内容和怎样显示数据内容 JFace没有彻底地抽象SWT 即使在用JFace写的程序中也会常常出现SWT及它的低级API 在本文第二部分带领您构建正确的SWT基础之后 我们将在第三部分探究JFace的力量
总结
lishixin/Article/program/Java/hx/201311/26708
⑤ 用java开发的、较成功的桌面应用软件有哪些
用java开发的、较成功的桌面应用软件有很多,具体软件名字建议官网查询。学java开发推荐选择千锋教育,该教育机构采用全程面授高品质、高体验培养模式,非常不错。
java开发需要掌握的内容如下:
1、Java基础
主要涉及:Java基础语法、面向对象、核心类库、集合、异常、IO、线程、JDK新特性等知识点.
2、JavaWeb开发
主要涉及:前端技术、数据库、JAVA数据库操作、软件服务器及服务器相关技术、动态网页JSP、AJAX等知识点.
3、Java高级框架
主要涉及:SpringMVC、MyBatis、Spring、MySQL高级、Linux&Redis&Nginx、Maven等知识点
4、大型微服务分布式技术
主要涉及:SpringBoot、SpringCloud、Git、Dubbo、Zookeeper、AngularJS、SpringSecurity、BCrypt加密、FastDFS、分布式事务处理、RedisCluster、Solr、SolrCloud、Freemarker、JMS、短信发送平台、SSO解决方案、CORS、Twitter的Snowflake、SpringTask、MavenProfile、MongoDB简介、MyCat、Docker、Jenkins等知识点。
想要了解更多有关java开发的相关信息,推荐咨询千锋教育。千锋教育成立教研学科中心,推出贴近企业需求的线下技能培训课程。课程包含HTML5大前端培训、JavaEE+分布式开发培训、Python人工智能+数据分析培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、网络安全培训、区块链培训、影视剪辑包装培训、游戏原画培训、全媒体运营培训。采用全程面授高品质、高体验培养模式,非常值得选择。