山东青岛电脑学校 专业软件工程师培训,软件人才就业实训中心0532-85025005

Java 远程通讯技术及原理分析

 

在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、Burlap、Hessian、SOAP、EJB和JMS等,这些名词之间到底是些什么关系呢,它们背后到底是基于什么原理实现的呢,了解这些是实现分布式服务框架的基础知识,而如果在性能上有高的要求的话,那深入了解这些技术背后的机制就是必须的了。

1 基本原理

要实现网络机器间的通讯,首先得来看看计算机系统网络通信的基本原理,在底层层面去看,网络通信需要做的就是将流从一台计算机传输到另外一台计算机,基于传输协议和网络IO来实现,其中传输协议比较出名的有tcp、udp等等,tcp、udp都是在基于Socket概念上为某类应用场景而扩展出的传输协议,网络IO,主要有bio、nio、aio三种方式,所有的分布式应用通讯都基于这个原理而实现,只是为了应用的易用,各种语言通常都会提供一些更为贴近应用易用的应用层协议。

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 24

程序员有哪些发展方向?

 

绝大多数程序员最终的职业目标可能都是CTO,做到CEO的人估计会比较少,也有一少部分人自己去创业去当老板,也有部分人转行了,当老板的牛人也有。一般来说,程序员的发展基本上都会经历这么几条路径。程序员-系统分析员-架构师-技术经理-CTO,程序员-项目组长-项目经理-项目总监-CTO,程序员-产品设计师-产品经理-CTO。

当然这只是一个大致的路径,不是所有程序员都必需要这么经历的,有些人可能跳过其中的一些步骤,也可能有些人会把中间的很多职位都做了。而很显然,CTO,是大多数程序员的终极梦想。

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 27

Java中finalize()用法

 在程序设计中,我们有时可能希望某些数据是不能够改变的,这个时候final就有用武之地了。final是Java的关键字,它所表示的是“这部分是无法修改的”。不想被改变的原因有两个:效率、设计。使用到final的有三种情况:数据、方法、类。

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 13

谈谈Java反射机制

 写在前面:
什么是java反射机制?我们又为什么要学它?
当程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言。我们认为java并不是动态语言,但是它却有一个非常突出的动态相关机制,俗称:反射。
IT行业里这么说,没有反射也就没有框架,现有的框架都是以反射为基础。在实际项目开发中,用的最多的是框架,填的最多的是类,反射这一概念就是将框架和类揉在一起的调和剂。所以,反射才是接触项目开发的敲门砖!

一、Class类
什么是Class类?
在面向对象的世界里,万事万物皆是对象。而在java语言中,static修饰的东西不是对象,但是它属于类。普通的数据类型不是对象,例如:int a = 5;它不是面向对象,但是它有其包装类 Integer 或者分装类来弥补了它。除了以上两种不是面向对象,其余的包括类也有它的面向对象,类是java.lang.Class的实例化对象(注意Class是大写)。也就是说:
Class A{}
当我创建了A类,那么类A本身就是一个对象,谁的对象?java.lang.Class的实例对象。
那么这个对象又该怎么表示呢?
我们先看一下下面这段代码:

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 19

Java 反射机制分析指南

 

一、JAVA是动态语言吗?

一般而言,说到动态言,都是指在程序运行时允许改变程序结构或者变量类型,从这个观点看,JAVA和C++一样,都不是动态语言。

但JAVA它却有着一个非常突出的动态相关机制:反射。通过反射,Java可以于运行时加载、探知和使用编译期间完全求和的类、生成其对象实体,调用其方法或者对属性设值。所以Java算是一个半动态的语言吧。

反射的概念:

在Java中的反射机制是指在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 14

Java面向对象之封装,继承,多态(上)

 Java是一种面向对象的语言,这是大家都知道的,他与那些像c语言等面向过程语言不同的是它本身所具有的面向对象的特性——封装,继承,多态,这也就是传说中的面向对象三大特性

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 16

JS实现浏览器打印、打印预览

 

目前正在做浏览器端采用JS方式实现打印这么一个功能,JS打印实现的方法很多,但是兼容各个浏览器实现打印预览的功能有些棘手,现将实现的内容及遇到的问题记录下来,希望有大牛看到所提的问题后可以给予解答,在此感谢啦。

1.JS实现打印的方式

方式一:window.print()

window.print();会弹出打印对话框,打印的是window.document.body.innerHTML中的内容,下面是从网上摘到的一个局部打印的例子,该例子的不足是打印会修改页面的内容

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 72

如何看待微信小程序和谷歌小程序?

   伴随着4G、5G技术和宽带互联网技术的迅速发展,网速的限制降低,内存的重要性突出,因而去APP化成为一种趋势,即时应用未来移动互联网发展的成为重要方向。

 

微信小程序

微信小程序(weixinxiaochengxu),简称小程序,缩写XCX,英文名mini program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 56

Java程序员最亲睐的Web框架

 

这一次,我们要讨论的是web框架。

图片描述

只有少数几种语言像Java一样提供了各种各样的web框架,上面的统计图就是一个证据。下面是其他开发者所使用web框架列表:

Spring MVC/Spring Boot :Spring可以帮助各地的开发团队构建简单轻便、快捷灵活基于JVM的系统和应用程序 
Vert.x :一个用于在JVM上构建反应式应用程序的工具包 
JSF :官方的Java EE web框架 
Play Framework :更容易地使用Java & Scala构建可拓展的、快速又实时的web应用程序 
Grails :Java版本的Ruby on Rails,建立在Spring和Hibernate之上,用Groovy编写 
Spark : 一个受Sinatra启发的小型框架,帮助使用最小的努力在Java 8中创建web应用程序 
Apache Struts :一个MVC框架,用于创建优雅的、现代化的Java web应用程序 
Dropwizard :一个用于开发操作友好、高性能、REST风格web服务的框架 
Vaadin :一个服务器端框架,用于构建单个页面的web应用程序 
JHipster :一个生成Spring Boot+ AngularJS项目的应用程序生成器 
Wicket :使得简洁、分离关注点和简单化开发到一个全新水平的web应用程序框架 
JAX-RS :JDK的内部框架,用于创建REST风格的web服务 
Stripes :让使用Servlet和JSP工作时变得轻松 
Sling :一个使用 Java Content Repository,并得到OSGIt支持的web框架 
GWT :Google开发的一个框架,可以编译Java代码为JavaScript运行在浏览器中 
XSLT :用于转换XML文档为另一种XML文档的语言 
Ratpack :用于构建现代化HTTP应用程序的Java库系列 
Express :这不是Java web框架,而是建立在Node.js上的Javascript框架 
Ninja framework :全栈web框架,协同GAE工作很好 
Compojure :用于Ring和基于Clojure的web应用框架的小型路由库 
ZK :一个开源的Java框架,用于构建企业级web和移动app 
Symphony2 :用于web开发的高性能PHP框架 
Java企业版 :是社区驱动企业软件的标准 
大家如果用过这些框架,或对上面这些框架有任何看法,欢迎指出。期待听到你的声音。

Tags:

发布: 青软IT学院 分类: 未分类 评论: 0 浏览: 33