首页 > 后端开发 > 正文

用什么方法是java应用程序作为一个后台服务运行

2024-05-05 16:13:36 | 我爱编程网

用什么方法是java应用程序作为一个后台服务运行相关内容,小编在这里做了整理,希望能对大家有所帮助,关于用什么方法是java应用程序作为一个后台服务运行信息,一起来了解一下吧!

本文目录一览:

用什么方法是java应用程序作为一个后台服务运行

用什么方法是java应用程序作为一个后台服务运行

在Windows中,无法直接用Java产生Service程序;但是可能通过编写DCOM 或 MTS COM 或 COM(Window2000) 组件 或 Corba 来模拟Service程序,可以实现透明远程过程调用;

StdAfx.h

#if !defined(AFX_STDAFX_H__7CCCEEAD_83A0_11D4_B105___INCLUDED_)

#define AFX_STDAFX_H__7CCCEEAD_83A0_11D4_B105___INCLUDED_

#if _MSC_VER > 1000

#pragma once

#endif // _MSC_VER > 1000

#define WIN32_LEAN_AND_MEAN

用什么方法是java应用程序作为一个后台服务运行

Java后台如何一直运行一个后台

1,保证主线程阻塞,即在执行main方法里添加阻塞代码。

2,比如Java做服务器时,接收soket信息,

ServerSocket serverSocket =newServerSocket(10086);//1024-65535的某个端口

//2、调用accept()方法开始监听,等待客户端的连接

while(true){}

Socket socket = serverSocket.accept();

//3、获取输入流,并读取客户端信息

InputStream is = socket.getInputStream();

InputStreamReader isr =newInputStreamReader(is);

BufferedReader br =newBufferedReader(isr);

String info =null;

while((info=br.readLine())!=null){

System.out.println("我是服务器,客户端说:"+info);

}

}

3,添加阻塞代码:

Semaphore semaphore = new Semaphore(0);

try {

semaphore.acquire();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

这段代码是不占cpu的。它会让出cpu的执行权。

用什么方法是java应用程序作为一个后台服务运行

如何用java进行移动端后台开发?

当你的客户遇到一些问题的时候,企业可以利用企业网站为用户解决客户所遇到的问题。例如:当用户遇到一些的问题,而你可以在你的网站上加上一些相关的内容,当用户搜索这个问题的时候就会看到你的信息,这样客户遇到的问题在看到你的网站内容之后就会得到解决。

用java进行移动端后台开发方法:第一种:可以选择用JavaEE的编程结构去编写,需要把HTML的界面转换成其他的数据,例如json、xml,二者选择其中一个即可。第二种:通过tomact的网络服务器使用httpurlconnection,客户端与后台建立通讯,直接用socket进行连接。第三种:全能型的编程人员可以用前端经常使用的HTML5、css、JavaScript相结合进行开发。注意点:Javaweb后台开发跟手机app后台开发原理相同,主要不同点在于app的后台开发和web的传输数据格式有差异。

java进行移动后台开发与java进行web后台开发完全一样。java原生的后台框架servlet,如果使用java后台开源框架可以选用spring+springmvc+mybatis,或者使用ssh框架。

一其实前台与后台交互常用两种协议方式:

1http协议。

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(NextGenerationofHTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

2webservice,例子有天气预报接口。

Webservice是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。[1]

WebService技术,能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据WebService规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。WebService是自描述、自包含的可用网络模块,可以执行具体的业务功能。WebService也很容易部署,因为它们基于一些常规的产业标准以及已有的一些技术,诸如标准通用标记语言下的子集XML、HTTP。WebService减少了应用接口的花费。WebService为整个企业甚至多个组织之间的业务流程的集成提供了一个通用机制。

二前台后台数据传递格式常用的也有两种:

1xml

XML三种解析方式简介

大名鼎鼎的DOM

说它大名鼎鼎可是一点不为过,DOM是W3C处理XML的标准API,它是许多其它与XML处理相关的标准的基础,不仅是Java,其它诸如Javascript,PHP,MS.NET等等语言都实现了该标准,成为了应用最为广泛的XML处理方式。当然,为了能提供更多更加强大的功能,Java对于DOM直接扩展工具类有很多,比如很多Java程序员耳熟能详的JDOM,DOM4J等等,它们基本上属于对DOM接口功能的扩充,保留了很多DOMAPI的特性,许多原本的DOM程序员甚至都没有任何障碍就熟练掌握了另外两者的使用,直观、易于操作的方式使它深受广大Java程序员的喜爱。

绿色环保的SAX

SAX的应运而生有它特殊的需要,为什么说它绿色环保呢,这是因为SAX使用了最少的系统资源和最快速的解析方式对XML处理提供了支持。但随之而来繁琐的查找方式也给广大程序员带来许多困扰,常常令人头痛不已,同时它对XPath查询功能的支持,令人们对它又爱又恨。我爱编程网

默默无闻的Digester:XML的JavaBean化

Digester是apache基金组织下的一个开源项目,笔者对它的了解源于对Struts框架的研究,是否有很多程序员想要一解各大开源框架的设计甚至想要自己写一个功能强大的框架时会碰到这样一个难题:这些形形色色的用XML语言标记的框架配置文件,框架底层是用什么技术来解析呢?DOM解析耗费时间,SAX解析又过于繁琐,况且每次解析系统开销也会过大,于是,大家想到需要用与XML结构相对应的JavaBean来装载这些信息,由此Digester应运而生。它的出现为XML转换为JavaBean对象的需求带来了方便的操作接口,使得更多的类似需求得到了比较完美的解决方法,不再需要程序员自己实现此类繁琐的解析程序了。与此同时SUN也推出了XML和JavaBean转换工具类JAXB,有兴趣的读者可以自行了解。

2json

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。

三安卓学习例子

如果想了解安卓与后台交互的例子,请去360手机助手下载安卓学习手册,里面有大量安卓的例子以及http协议详解,源码,文档都可看。下面是例子截图

以上就是用什么方法是java应用程序作为一个后台服务运行全部内容了,了解更多相关信息,关注我爱编程网。

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“用什么方法是java应用程序作为一个后台服务运行”相关推荐
我想让一个Java程序在Linux下以后台进程的方式运行,环境是ubuntu,请问用哪个命令?
我想让一个Java程序在Linux下以后台进程的方式运行,环境是ubuntu,请问用哪个命令?

我想让一个Java程序在Linux下以后台进程的方式运行,环境是ubuntu,请问用哪个命令?程序开始运行后按ctrl+z,再运行jobs查看当前终端运行的进程,找到对应的序号再运行bg你的序号在后台运行,这是对已经运行的程序的处理方法,要打开时就在后台运行需要作成守护进程,但Java好像没这概念。所以我知道也就这个方法。要将后台运行的程序转前台,也是先jobs查对应序号

2024-03-23 08:40:32
如何用命令行运行含有多个类的java程序,是全部写在一起,然后用含main的那个命名,还是别的什么方法?
如何用命令行运行含有多个类的java程序,是全部写在一起,然后用含main的那个命名,还是别的什么方法?

如何用命令行运行含有多个类的java程序,是全部写在一起,然后用含main的那个命名,还是别的什么方法?设计。在学之前来了解下,编写JAVA时要建立哪几个文件夹?——不用建什么文件夹,只要安装好JDK。说明每个文件夹的作用——现在在网吧,没有JDK,没法为你解释那些文件夹。学编写JAVA是不是英语一定要会?——英语,初中文化就够了,虽然程序源码那么多英语,但是并不是涉

2024-03-22 23:33:14
java程序如何在linux服务器上运行
java程序如何在linux服务器上运行

怎样使用linux运行java程序?使用linux运行java程序具体步骤如下:1.Windows上使用eclipse编译java工程,编译完成后导出为RunnableJARFile。例如,此处将test工程中的Test2文件export为MyTest2.jar文件。2.Ubuntu上java环境安装。①jdk官网-downloads-2133151.html下载L

2024-03-15 03:02:46
IOS如何调用Java服务?
IOS如何调用Java服务?

IOS如何调用Java服务?IOS调用java服务的方法如下:NSString*nstrWyKPIUrl=[[NSStringalloc]initWithFormat:@"%@?citys=%@&startTime=%@&endTime=%@&indexNames=%@",WYKPIURL,city,startTime,endTime,zbz];//c

2024-04-12 23:47:04
编译java程序的命令是什么,运行java应用程序的命令是什么?
编译java程序的命令是什么,运行java应用程序的命令是什么?

编译java程序的命令是什么,运行java应用程序的命令是什么?当前默认目录为C盘Users文件夹下的Administrator文件夹。一般而言,我们习惯改变当前目录。由于windows有磁盘分区,若要跳到其他磁盘,例如E盘,有几种方法:1、输入命令:pushd路径(此命令可将当前目录设为所希望的任一个已存在的路径)2、输入命令:e: 转移到e盘,然后再输入cd转移

2024-03-17 13:04:33
主类是什么意思,为什么main方法是程序的入口,他是什么逻辑运行的?
主类是什么意思,为什么main方法是程序的入口,他是什么逻辑运行的?

java程序一般应当含有main方法,因为它是所有java程序执行的入口。是对还是错?错误java程序分为java应用程序+小应用程序applet如果是java应用程序,一般应当含有main方法,因为它是所有java程序执行的入口如果是applet,不用main方法。。。由init初始化,start启用主类是什么意思,为什么main方法是程序的入口,他是什么逻辑运行的

2024-04-10 01:35:24
服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?
服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?

服务器上如何运行Java程序?这个程序主要是监听某个端口是否有信息的?打包->上传->命令行运行?1.先安装j2sdk我安装路径是:D:\ProgramFiles\Java\j2sdk2.再安装eclipseEclipse是绿色软件,不需要安装,把下载回来的eclipse压缩包解压就可以了我安装的路径是:D:\ProgramFiles\Java\eclipse3.安装

2024-03-17 01:37:16
java程序控制台输出程序运行时间 求解JAVA编程题:编写一个应用程序,创建三个线程分别显示各自的运行时间
java程序控制台输出程序运行时间 求解JAVA编程题:编写一个应用程序,创建三个线程分别显示各自的运行时间

java获取运行时间很多朋友都想知道java怎么获取运行时间?下面就一起来了解一下吧~第一种是以毫秒为单位计算的。//伪代码long startTime=System.currentTimeMillis(); //获取开始时间doSomeThing(); //测试的代码段long endTime=System.currentTimeMillis(); //获取结束时间System.

2024-03-18 02:10:54