‘壹’ java 如何调用com组件接口方法
书写步骤 一般分为以下:
1、 编写带有native声明的方法的java类
2、 使用javac命令编译所编写的java类
3、 使用javah ?jni java类名生成扩展名为h的头文件
4、 使用C/C++实现本地方法
5、 将C/C++编写的文件生成动态连接库
‘贰’ java类调用接口中的方法
你要理解接口的作用。接口提供了一种规范,就像现实中,USB接口是一种接口一样,但是接口一定要有一个具体的实现,比如你的U盘,充电宝等等。相同的接口可以“保证”正常的调用,而不用知道实现这个接口的类具体是个什么东西。当你把USB接口的设备插在U口上时,其实你并不太关心这些设备内部到底有什么不同。
面向对象提出接口的概念,就是为了达到这个目的。如果有三个类,都实现了某一接口,它你的代码调用它们的时候,你不用关心这三个类都有哪些不同,你只关心它们相同的部分,就是接口所“规定”的那些方法,它们肯定要实现的,但具体的实现一定是在各自的类定义里。所以你在看代码的时候,要看接口方法的具体实现,要在实现接口的类里去看,而不是看接口本身。不知道这样说,你清楚了没有。
‘叁’ java写的接口怎么调用
访问形式如下例子:
//接口
publicinterfaceLoggerUtil{
//得到Logger,用于打印日志
Loggerlogger=Logger.getLogger(LoggerUtil.class);
}
@RequestMapping("/delete.do")
publicStringdelete(Studentsstudents){
try{
stuService.delete(students);
}catch(Exceptione){
//接口的调用方式(直接调用)
LoggerUtil.logger.error(e.getMessage());
}
return"redirect:selectAll.do";
}
‘肆’ JAVA调用接口
String sendPost(String jsonStr, String path)
throws IOException {
byte[] data = jsonStr.getBytes();
java.net.URL url = new java.net.URL(path);
java.net.HttpURLConnection conn =
(java.net.HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setConnectTimeout(5 * 1000);// 设置连接超时时间为5秒
conn.setReadTimeout(20 * 1000);// 设置读取超时时间为20秒
// 使用 URL 连接进行输出,则将 DoOutput标志设置为 true
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "text/xml;charset=UTF-8");
//conn.setRequestProperty("Content-Encoding","gzip");
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
OutputStream outStream = conn.getOutputStream();// 返回写入到此连接的输出流
outStream.write(data);
outStream.close();//关闭流
String msg = "";// 保存调用http服务后的响应信息
// 如果请求响应码是200,则表示成功
if (conn.getResponseCode() == 200) {
// HTTP服务端返回的编码是UTF-8,故必须设置为UTF-8,保持编码统一,否则会出现中文乱码
BufferedReader in = new BufferedReader(new InputStreamReader(
(InputStream) conn.getInputStream(), "UTF-8"));
msg = in.readLine();
in.close();
}
conn.disconnect();// 断开连接
return msg;
}
‘伍’ java 怎么调用实现接口的方法
接口实现基本流程是1.定义一个接口,里面包含一些未实现的方法;2.定义一个类实现接口,实现接口中的所有未实现方法
‘陆’ 如何在java中调用api接口
需要导入对应的lib包,然后调用具体的接口以及方法
通过实现http协议进行post或者get请求具体api接口
‘柒’ java 类怎么调用接口实现类
直接写成Person p = new Student();即可 这是为了让买你代码的人看不到内部代码 怎么实现的被隐藏了
1.Java的多态性 就是多种变现形式 接口跟实现类都能完成同样的功能
2.隐藏内部代码块 人家只知道用p能调用Student的功能但是不知道你 Student类是怎么实现的
3.解耦合性 Java的接口多继承
‘捌’ 如何用Java调用别人API接口
java发一个http请求过去,带上参数就可以了啊,跟我们在浏览器上访问资源是一样的 只是它返回的是json格式的数据而已
给你两个方法吧:
public static String do_post(String url, List<NameValuePair> name_value_pair) throws IOException {
String body = "{}";
DefaultHttpClient httpclient = new DefaultHttpClient();
try {
HttpPost httpost = new HttpPost(url);
httpost.setEntity(new UrlEncodedFormEntity(name_value_pair, StandardCharsets.UTF_8));
HttpResponse response = httpclient.execute(httpost);
HttpEntity entity = response.getEntity();
body = EntityUtils.toString(entity);
} finally {
httpclient.getConnectionManager().shutdown();
}
return body;
}
public static String do_get(String url) throws ClientProtocolException, IOException {
String body = "{}";
DefaultHttpClient httpclient = new DefaultHttpClient();
try {
HttpGet httpget = new HttpGet(url);
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
body = EntityUtils.toString(entity);
} finally {
httpclient.getConnectionManager().shutdown();
}
return body;
}
‘玖’ java怎么使用接口 java如何实现接口操作
接口是Java 实现多继承的一种机制,一个类可以实现一个或多个接口。接口是一系列
方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些
方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为。简单的说接口不
是类,但是定义了一组对类的要求,实现接口的某些类要与接口一致。
在Java 中使用关键字interface 来定义接口。例如:
publicinterfaceCompare{
publicintcompare(ObjectotherObj);
}
Compare 接口定义了一种操作compare,该操作应当完成与另一个对象进行比较的功能。
它假定某个实现这一接口的类的对象x 在调用该方法时,例如x . compare(y),如果x 小于y,
返回负数,相等返回0,否则返回正数。
举例
{
privateStringsId;//学号
//Constructor
10
publicStudent(){
this("","","");
}
publicStudent(Stringname,Stringid,StringsId){
super(name,id);
this.sId=sId;
}
publicvoidsayHello(){
super.sayHello();
System.out.println(".");
}
//get&setmethod
publicStringgetSId(){
returnthis.sId;}
publicvoidsetSId(StringsId){
this.sId=sId;}
//implementsCompareinterface
publicintcompare(ObjectotherObj){
Studentother=(Student)otherObj;
returnthis.sId.compareTo(other.sId);
}
}//endofclass
‘拾’ java如何调用对方http接口 新手虚心求教
importjava.io.BufferedReader;
importjava.io.DataOutputStream;
importjava.io.InputStreamReader;
importjava.net.HttpURLConnection;
importjava.net.URL;
importjava.net.URLEncoder;
publicclassDemoTest1{
publicstaticfinalStringGET_URL="http://112.4.27.9/mall-back/if_user/store_list?storeId=32";
//publicstaticfinalStringPOST_URL="http://112.4.27.9/mall-back/if_user/store_list";
//妙兜测试接口
publicstaticfinalStringPOST_URL="http://121.40.204.191:8180/mdserver/service/installLock";
/**
*接口调用GET
*/
(){
try{
URLurl=newURL(GET_URL);//把字符串转换为URL请求地址
HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();//打开连接
connection.connect();//连接会话
//获取输入流
BufferedReaderbr=newBufferedReader(newInputStreamReader(connection.getInputStream(),"UTF-8"));
Stringline;
StringBuildersb=newStringBuilder();
while((line=br.readLine())!=null){//循环读取流
sb.append(line);
}
br.close();//关闭流
connection.disconnect();//断开连接
System.out.println(sb.toString());
}catch(Exceptione){
e.printStackTrace();
System.out.println("失败!");
}
}
/**
*接口调用POST
*/
(){
try{
URLurl=newURL(POST_URL);
//将url以open方法返回的urlConnection连接强转为HttpURLConnection连接(标识一个url所引用的远程对象连接)
HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();//此时cnnection只是为一个连接对象,待连接中
//设置连接输出流为true,默认false(post请求是以流的方式隐式的传递参数)
connection.setDoOutput(true);
//设置连接输入流为true
connection.setDoInput(true);
//设置请求方式为post
connection.setRequestMethod("POST");
//post请求缓存设为false
connection.setUseCaches(false);
//设置该HttpURLConnection实例是否自动执行重定向
connection.setInstanceFollowRedirects(true);
//设置请求头里面的各个属性(以下为设置内容的类型,设置为经过urlEncoded编码过的from参数)
//application/x-javascripttext/xml->xml数据application/x-javascript->json对象application/x-www-form-urlencoded->表单数据
//;charset=utf-8必须要,不然妙兜那边会出现乱码【★★★★★】
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded;charset=utf-8");
//建立连接(请求未开始,直到connection.getInputStream()方法调用时才发起,以上各个参数设置需在此方法之前进行)
connection.connect();
//创建输入输出流,用于往连接里面输出携带的参数,(输出内容为?后面的内容)
DataOutputStreamdataout=newDataOutputStream(connection.getOutputStream());
Stringapp_key="app_key="+URLEncoder.encode("","utf-8");//已修改【改为错误数据,以免信息泄露】
Stringagt_num="&agt_num="+URLEncoder.encode("10111","utf-8");//已修改【改为错误数据,以免信息泄露】
Stringpid="&pid="+URLEncoder.encode("BLZXA150401111","utf-8");//已修改【改为错误数据,以免信息泄露】
Stringdepartid="&departid="+URLEncoder.encode("10007111","utf-8");//已修改【改为错误数据,以免信息泄露】
Stringinstall_lock_name="&install_lock_name="+URLEncoder.encode("南天大门","utf-8");
Stringinstall_address="&install_address="+URLEncoder.encode("北京育新","utf-8");
Stringinstall_gps="&install_gps="+URLEncoder.encode("116.350888,40.011001","utf-8");
Stringinstall_work="&install_work="+URLEncoder.encode("小李","utf-8");
Stringinstall_telete="&install_telete="+URLEncoder.encode("13000000000","utf-8");
Stringintall_comm="&intall_comm="+URLEncoder.encode("一切正常","utf-8");
//格式parm=aaa=111&bbb=222&ccc=333&ddd=444
Stringparm=app_key+agt_num+pid+departid+install_lock_name+install_address+install_gps+install_work+install_telete+intall_comm;
//将参数输出到连接
dataout.writeBytes(parm);
//输出完成后刷新并关闭流
dataout.flush();
dataout.close();//重要且易忽略步骤(关闭流,切记!)
//System.out.println(connection.getResponseCode());
//连接发起请求,处理服务器响应(从连接获取到输入流并包装为bufferedReader)
BufferedReaderbf=newBufferedReader(newInputStreamReader(connection.getInputStream(),"UTF-8"));
Stringline;
StringBuildersb=newStringBuilder();//用来存储响应数据
//循环读取流,若不到结尾处
while((line=bf.readLine())!=null){
//sb.append(bf.readLine());
sb.append(line).append(System.getProperty("line.separator"));
}
bf.close();//重要且易忽略步骤(关闭流,切记!)
connection.disconnect();//销毁连接
System.out.println(sb.toString());
}catch(Exceptione){
e.printStackTrace();
}
}
publicstaticvoidmain(String[]args){
//httpURLConectionGET();
httpURLConnectionPOST();
}
}