请问大佬,java中怎么判断一个方法是否被调用?

请问大佬,java中怎么判断一个方法是否被调用执行? 怎么监听一个接口被调用执行

4个回答

你可以换个思路, 你监听方法执行了你肯定是为了要做一些事情,要不监听就没了任何意义,
你可以把你要做的事情封装成一个接口或者静态方法,然后在 你想 监听的方法最后调用你的这个方法就相当于监听了这个方法

可以使用jms异步消息队列进行监听处理,即在方法结尾发个异步消息,由监听任务通过监听消息即可.

通过监视器就可以查看到

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
请问各位大佬,在java设计的一个GUI界面中可以调用MATLAB中的程序吗?
请问各位大佬,在java设计的一个GUI界面中可以调用MATLAB中的程序吗?
java 钩子函数是写在静态方法里面的吗?为什么?该方法中断或报错就调用钩子函数吗?哪位大佬详解一下?
java 钩子函数是写在静态方法里面的吗?为什么?该方法中断或报错就调用钩子函数吗?哪位大佬详解一下?
Java中toString()方法调用的疑问
最近在学习Java时,发现一个对象.toString()之后,还能再.toString(),但是输出结果一样,都是完整类名 + @ + 十六进制的哈希码。 自己重写的toString方法也是可以在一个类时多次调用,而且输出结果相同,所以有些疑惑,这个相同方法的多次调用到底是在干什么,他们两次穿进去的obj应该是不同的(第一次穿进去的是对象a,第二次穿进去的是a.toString())但是最后输出的结果却是一样的,这是为什么呢? 求大佬解答
各位大佬回答一下,JaxWsDynamicClientFactory这种客户端调用方法我用java来调c写的webservice接口能调吗?
* JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();这种方式 * 有博客上说这种动态调用的方式只能java调用java写的webservice接口? * 这种动态调用方式是什么语言写的都能调用吗? * 还有这种方法是不是比那种**wsimport**导入的方法简单的多?
在Java中怎么在一个主菜单系统中调用已经写好的一个class
这个是主菜单中一部分的代码,然后在case2中定义了一个新的方法叫做 Moviemain()的方法。 ``` switch (input) { case 1: doLogin(); //定义了一个doLogin方法 break; case 2: Moviemain(); System.out.println("电影菜单显示"); break; case 3: viewMyTicket(); break; case 4: System.out.println("退出"); break; default: break; } } private void Moviemain() { // TODO Auto-generated method stub System.out.println(); } ``` ``` package edu.jmi.db; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; /* * MovieDAO是为了 * 实现怎么从Java中调取数据库内容,同时在这个Java中可以显示出数据库的信息。 */ public class MovieDAO { public static void main(String[] args) throws Exception { //链接至数据库 String URL="jdbc:mysql://127.0.0.1:3306/ticketdb?useUnicode=true&characterEncoding=utf8&useSSL=false"; Connection con = null; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection(URL,"root","123456"); Statement state = con.createStatement(); String sql = "select * from Movie"; ResultSet rs = state.executeQuery(sql); //将SQL语句传至数据库,返回的值为一个字符集用一个变量接收 while(rs.next()) { System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4)+" "+rs.getString(5)); /* * getString(n)获取第n列的内容,数据库中的列数是从1开始的,要在Java中实现输出五列代码 */ } con.close(); } finally { } } } ``` 这个是怎么用Java调用数据库。 同时,关于这个电影票的订购系统,有木有大佬可以给点意见的? ![图片说明](https://img-ask.csdn.net/upload/201906/27/1561598255_1358.png) ![图片说明](https://img-ask.csdn.net/upload/201906/27/1561598277_271716.png)
java中局部类调用它所在的局部方法中的变量问题
``` package com.review; public class P205Demo_LocalClass { public static void main(String[] args) { Outer5 o = new Outer5(); o.method(); } } class Outer5{ public void method() { int num = 10; class Inner5{ public void print() { System.out.println("局部类只能在所在方法中被调用 ,方法中的num的调用" +num); } } Inner5 i = new Inner5(); i.print(); } } ``` 在我看的JAVA教学视频中举了这个例子。 在这个的例子里,在测试类中执行完o.method()方法后,method()方法弹栈,int num这个变量也就消失了。老师说而i这个对象可能还没消失,i.print()已经找不到num了,所以会报错,在视频里老师使用editplus也确实报错了。所以需要在num前面加final延长它的生命周期。 但是我在使用eclipse编译运行上面的代码时并没有并没有报错,运行结果也是正确的。 我的想法是,在method方法弹栈后,i这个对象其实也被回收了,所以才没有报错。 请问各位大佬我这么想对不对,还是因为其他的原因。
java调用百度或谷歌地图应该怎们弄,各位大佬能不能给个实例
java调用百度或谷歌地图应该怎们弄,各位大佬能不能给个实例
java调用webservice payload方式,求大佬哪个大佬看看
java调用webservice代码片段 ``` StreamSource xmlSource = new StreamSource(new StringReader(soapBody)); URL wsdlURL = new URL(wsdlUrl); QName serviceQName = new QName(targetNamespace, serviceName); Service service = Service.create(wsdlURL, serviceQName); //创建port端口及 Dispatch<Source>对像 QName portQName = new QName(targetNamespace, portName); Dispatch<Source> dispatch = service.createDispatch(portQName, Source.class, Service.Mode.PAYLOAD); Source orderSource = dispatch.invoke(xmlSource); ``` 走到这一步 Source orderSource = dispatch.invoke(xmlSource); 报错: javax.xml.ws.WebServiceException: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,57] Message: http://www.w3.org/TR/1999/REC-xml-names-19990114#ElementPrefixUnbound?soapenv&soapenv:Envelope at org.apache.axis2.jaxws.ExceptionFactory.createWebServiceException(ExceptionFactory.java:175) at org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:70) at org.apache.axis2.jaxws.ExceptionFactory.makeWebServiceException(ExceptionFactory.java:128) at org.apache.axis2.jaxws.message.impl.MessageImpl.getAsSOAPMessage(MessageImpl.java:328) at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.getBodyElementQNameFromDispatchMessage(BaseDispatch.java:403) at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.getOperationDescriptionForDispatch(BaseDispatch.java:266) at org.apache.axis2.jaxws.client.dispatch.BaseDispatch.invoke(BaseDispatch.java:189) at cn.linkey.rulelib.S017.R_S017_B001.run(R_S017_B001.java:67) at cn.linkey.rule.ExecuteEngine.run(ExecuteEngine.java:34) at cn.linkey.rule.ExecuteEngine.run(ExecuteEngine.java:49) at cn.linkey.servlet.Action.run(Action.java:165) at cn.linkey.servlet.Action.doGet(Action.java:23) at javax.servlet.http.HttpServlet.service(HttpServlet.java:620) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 不知道什么原因,用TEST跑这段代码没问题
java调用微信上传永久材料报错,逑大佬帮忙看看
在做java调用微信新增永久素材时,发送post请求返回出现问题,求大佬帮忙看看 代码图片![图片说明](https://img-ask.csdn.net/upload/201902/18/1550488615_484038.png)和错误提示图片
菜鸟请教,Java项目中如何使用JNI调用.so文件,已有现成的.so文件
现在我有一个Java项目,是win系统下面,因为项目需求,需要调用.so文件去将.dat文件转换成.txt文件。因整个项目都在win下,没办法再提供Linux环境去运行.so文件。有没有方法直接在java项目中集成调用.so文件?我使用的工具是eclipse。哪位大佬能否详细解答一下。。最好有demo
平台如何调用底层算法库的,求大佬帮忙解惑。
最近在看一些底层语音算法的实现。发现是C++实现了Java调用的接口,Java端(平台)调用这个接口,传递过来要处理的文本。 在算法这边使用C++对文本处理,并且还调用了Python写的模型,最后生成平台要转换成的音频文件。最后,C++生成一个动态 库文件给平台端去集成。我疑惑的地方是,只有一个动态库,那Java调用的时候,那些处理的模型是怎么使用的?
java调用hive如何按照orcfile格式写入
各位大佬,咨询个问题。 通过java调用hive的api往HDFS写入数据的话,如何按照ORCfile的格式写入的?
Java 的一个基础问题的疑惑,往大佬解答。
public class Problem{ public static int b=0; public static void test(int a) { System.out.println("have runned"); a++; System.out.println("test a = "+a); System.out.println("test b = "+b); } public static void main(String[] args){ test(b); System.out.println("main b = "+b); } } csdn里看的一个文章,谁能详细解释下为什么以上代码运行完得出的结果是两个b都等于零?不是应该得出的是b=1吗? 还有一个问题是,调用方法时不是应该先建立实例,然后,实例名.方法名(); 来调用方法吗? 为什么以上代码没有实例直接 test(b);就调用了方法呢? 有时候我不创建实例,用方法名();调用方法就会报错? 求详细解答。
Java运用服务中怎么调用sparklib创建好的模型呢?
使用sparkmlib创建好模型之后,部署在spark集群中运行, 我想要在springboot中调用这个模型,请问应该怎么调用? 望各位有经验的大佬不吝赐教!小白我将十分感谢! 注:springboot项目是部署在websphere服务器上运行的。
在kettle的调试软件中执行没有问题,但是在java代码中调用就会报错,含有接口的调用。
![图片说明](https://img-ask.csdn.net/upload/201910/15/1571124184_733842.jpg) 这是我再调试器中的内容,然后用java代码调用这个任务的时候,就会报一下错误: ``` 2019/10/15 14:50:12 - JSON Input.0 - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : 错误初始化步骤[JSON Input] 2019/10/15 14:50:12 - JSON Input.0 - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : java.lang.NullPointerException 2019/10/15 14:50:12 - JSON Input.0 - at org.pentaho.di.trans.steps.fileinput.BaseFileInputStep.init(BaseFileInputStep.java:102) 2019/10/15 14:50:12 - JSON Input.0 - at org.pentaho.di.trans.step.StepInitThread.run(StepInitThread.java:69) 2019/10/15 14:50:12 - JSON Input.0 - at java.lang.Thread.run(Thread.java:745) ``` 我网上查找好像是因为转换里是并行执行的。所以会直接报空指针的错误。但是在调试器中为什么没有报错呢,是我java代码调用方式有问题吗?求大佬解惑 以下是我java调用代码:
Java有静态方法类的生命周期
如果一个类1只有一个静态变量,一个静态方法(会调用静态方法使用),那么别的类调用这个静态方法5次; 1.这个类1会再这期间一直再内存中么, 2.有静态方法和静态变量的类的生命周期是怎么样的 求大佬解答
关于JAVA中使用Runtime.getRuntime().exec() 调用Linux的mutt发送邮件
最近需要做一个在JAVA中监测目录下是否有新文件产生,如果有的话使用Linux指令发送邮件, 使用mutt发送邮件的指令如下 echo "14:07" | mutt -a /home/pi/test.jpg -- 1111111@qq.com 意思为发送内容为“14:07”,并且添加附件test.jpg发送到1111111@qq.com这个邮箱。 经过测试,这句话单独在Linux系统下运行没有问题,也成功发送接收到。 但是调用Runtime.getRuntime().exec() 的时候不行 经查找是因为使用了管道的原因,需要添加/bin/sh -c 作为脚本去执行,但是却无法成功发送。 系统反馈无法发送此邮件。 将上述的代码作为sh脚本写入运行,提示子进程已经结束,邮件发送失败。猜想是由于mutt发送需要时间较长,sh已经运行结束,导致进程提前结束无法发送成功 但是如果使用sleep的话,会造成休眠,在脚本后面加上wait也没用。。。。 再次提出问题,如何在java代码中调用Linux指令的mutt发送邮件(有管道) java代码中运行Linux指令代码如下: public static void executeLinuxCmd(String[] cmd) { InputStream in = null; String result = null; try { Process pro = Runtime.getRuntime().exec(cmd); pro.waitFor(); in = pro.getInputStream(); BufferedReader read = new BufferedReader(new InputStreamReader(in)); while((result = read.readLine())!=null) { System.out.println(result); } } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } 调用executeLinuxCmd的代码如下(监测部分省略,cmd指令输出过,确定正确) String path2=path + "/" + event.context() ; String cmd="echo "+"\"hello hello\""+"|mutt -a "+path2+" -- 1111111@qq.com"; String[] str={"/bin/sh","-c",cmd}; executeLinuxCmd(str); System.out.println(cmd); 监测成功创建文件,并且发送,然后显示 无法发送此信件。 echo "hello hello"|mutt -a /home/pi/this_is_test/wenjian -- 1111111@qq.com 折腾了2天了,求大佬指导一下,感激不尽
get请求,参数拼接,时间字符串拼接报错,然后大佬们说的我好想不太清楚咋弄,就新添了请求方法,和调用
java.io.IOException: Server returned HTTP response code: 400 for URL: http://api.baidu.com/getsyncusers?code=02&date=2019-10-10 10:16:00.0 at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at com.dunan.zzjg.util.ApiGateToken.getResponseContext(ApiGateToken.java:115) at com.dunan.zzjg.service.impl.SysUserServiceImpl.setSyncUsers(SysUserServiceImpl.java:82) at com.dunan.zzjg.controller.DAapiController.userDate(DAapiController.java:44) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:897) at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:123) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.boot.actuate.web.trace.servlet.HttpTraceFilter.doFilterInternal(HttpTraceFilter.java:90) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:170) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:66) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:92) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.filterAndRecordMetrics(WebMvcMetricsFilter.java:117) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:106) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:836) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1747) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748) /** * 根据请求地址及请求参数,获取服务器的相应信息 * * @param requestURL 请求地址 * @param requestParam 请求参数 * @param requestMethod "POST" or "GET" * @return */ public static String getResponseContext(String requestURL, String requestParam, String requestMethod,String token) { StringBuffer responseContext = new StringBuffer(); try { URL url = new URL(requestURL); // 此处的urlConnection对象实际上是根据URL的 URLConnection urlConn = url.openConnection(); urlConn.setConnectTimeout(30000); urlConn.setReadTimeout(30000); // 请求协议(此处是http)生成的URLConnection类 的子类HttpURLConnection,故此处最好将其转化 // 为HttpURLConnection类型的对象,以便用到 HttpURLConnection更多的API.如下: HttpURLConnection httpUrlConnection = (HttpURLConnection) urlConn; // 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在 // http正文内,因此需要设为true, 默认情况下是false; httpUrlConnection.setDoOutput(true); // 设置是否从httpUrlConnection读入,默认情况下是true; httpUrlConnection.setDoInput(true); // Post 请求不能使用缓存 httpUrlConnection.setUseCaches(false); // 设定传送的内容类型是可序列化的java对象 // (如果不设此项,在传送序列化对象时,当WEB服务默认的不是这种类型时可能抛java.io.EOFException) httpUrlConnection.setRequestProperty("Content-type","application/json"); // 设置 HttpURLConnection的字符编码 httpUrlConnection.setRequestProperty("Accept-Charset", "UTF-8"); if(StringUtils.isNotBlank(token)){ httpUrlConnection.setRequestProperty("Access-Token", token); } // 设定请求的方法为"POST",默认是GET httpUrlConnection.setRequestMethod(requestMethod); // 连接,从上述第2条中url.openConnection()至此的配置必须要在connect之前完成, // // 此处getOutputStream会隐含的进行connect(即:如同调用上面的connect()方法, // // 所以在开发中不调用上述的connect()也可以)。 if("POST".equals(requestMethod)){ OutputStream outStrm = httpUrlConnection.getOutputStream(); outStrm.write(requestParam.getBytes("UTF-8")); // // 刷新对象输出流,将任何字节都写入潜在的流中(些处为ObjectOutputStream) outStrm.flush(); // 关闭流对象。此时,不能再向对象输出流写入任何数据,先前写入的数据存在于内存缓冲区中, // 在调用下边的getInputStream()函数时才把准备好的http请求正式发送到服务器 outStrm.close(); } // 调用HttpURLConnection连接对象的getInputStream()函数, // 将内存缓冲区中封装好的完整的HTTP请求电文发送到服务端。 InputStream inStrm = httpUrlConnection.getInputStream(); // 读取文件流程 BufferedReader rd = new BufferedReader( new InputStreamReader(inStrm,"UTF-8")); // 采取行的方式进行读取 String tempLine = rd.readLine(); // 循环获取每一行数据 while (tempLine != null) { responseContext.append(tempLine); tempLine = rd.readLine(); } rd.close(); inStrm.close(); httpUrlConnection.disconnect(); httpUrlConnection = null; urlConn = null; url = null; } catch (Exception e) { e.printStackTrace(); } return responseContext.toString(); } /*获取上次更新的时间*/ TurnoverTime lastTime = timeMapper.selectTime(); String lastUpdateTime = lastTime.getLastUpdateTime(); System.out.println(lastUpdateTime); String url = "http://api.baidu.com/getsyncusers"; String param = "?code="+"02"+"&date="+lastUpdateTime; String requestMethod = "GET"; String token = ApiGateToken.getToken(); String responseContext = ApiGateToken.getResponseContext(url+param, param, requestMethod, token);
实现操作系统页面置换算法,调用的ListUtils.java中的代码都是什么意思?能否帮忙解释一下原理?
我在用Java做操作系统中的页面置换算法,实现FIFO,CLOCK和LRU这三种算法,在这三个算法实现的过程中,都调用了ListUtils.java,但是我不懂ListUtils.java中的代码是什么意思,导致我其他的代码也看不懂。向各位大神请教一下,能否解释一下ListUtils.java中代码的含义和原理?感谢感谢! 另外在算法中的 Object[] strList = list.toArray(); for(int column = 0; column < list.size(); column++) { FIFOData[column][i+1] = strList[column]; } 这两行代码是什么意思呢?我看在每一个页面置换算法中都有这两行代码,但是我看不懂!麻烦各位大佬帮忙看一下!万分感谢! 下面贴上代码: ListUtils.java ``` package utils; import java.util.List; public class ListUtils { public ListUtils() { } /** * 输出 * @param list 将List转为数组并输出, out: 2, 3, 4 * @return */ public static String listToString(List list){ StringBuffer content = new StringBuffer(); for(int i = 0; i < list.size(); i++){ content.append(list.get(i)); if(i < list.size() - 1){ content.append(","); } } return content.toString(); } /** * 在list中查找是否有str * @param list * @param str * @return */ public static boolean find(List<String> list, String str){ boolean flag = false; for(String lis : list){ if(lis.equals(str)){ flag = true; } } return flag; } /** * 在List中查找是否有String,如果有返回下标, 否则返回 -1 * @param list * @param str * @return */ public static int findIndex(List<String> list, String str) { int index = 0; for(String lis : list) { if(lis.equals(str)) { return index; } index++; } return -1; } public static boolean clockJudge(String[] clock, int index) { if(clock[index].equals("0")) { return true; } return false; } /** * * @param index 下标 * @param clock 时钟 * @param range 当前使用内存块 * @return */ public static int findZero(int index, String[] clock, int range) { while(true) { if(clock[index].equals("0")) { break; }else { clock[index] = "0"; index++; if(index > range-1) { index = Math.abs(range - index); } } } return index; } /** * 在数组中查找是否存在该字符串 * @param obj * @param str * @return */ public static boolean strJudge(Object[] obj, String str) { boolean flag = false; if(obj == null) { return flag; } for(int i = 0; i < obj.length; i++) { if(str.equals(obj[i])) { flag = true; break; } } return flag; } /** * 获取二维数组中同一列的行的长度 * @param str 数据 * @param length 二维数组的列 * @param memory 内存块 * @return * */ public static int findNull(Object[][] str, int length, int memory) { int index = 0; if(str == null) { return -1; } for(int i = 0; i < memory; i++) { if(str[i][length] != null) { index = i; } } return index; } } ``` 在FIFO中调用: ![图片说明](https://img-ask.csdn.net/upload/201912/16/1576503707_674210.png) 在URL中调用: ![图片说明](https://img-ask.csdn.net/upload/201912/16/1576503832_866034.png) 在Clock中调用: ![图片说明](https://img-ask.csdn.net/upload/201912/16/1576503948_604271.png)
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
开源一个功能完整的SpringBoot项目框架
福利来了,给大家带来一个福利。 最近想了解一下有关Spring Boot的开源项目,看了很多开源的框架,大多是一些demo或者是一个未成形的项目,基本功能都不完整,尤其是用户权限和菜单方面几乎没有完整的。 想到我之前做的框架,里面通用模块有:用户模块,权限模块,菜单模块,功能模块也齐全了,每一个功能都是完整的。 打算把这个框架分享出来,供大家使用和学习。 为什么用框架? 框架可以学习整体
源码阅读(19):Java中主要的Map结构——HashMap容器(下1)
(接上文《源码阅读(18):Java中主要的Map结构——HashMap容器(中)》) 3.4.4、HashMap添加K-V键值对(红黑树方式) 上文我们介绍了在HashMap中table数组的某个索引位上,基于单向链表添加新的K-V键值对对象(HashMap.Node&lt;K, V&gt;类的实例),但是我们同时知道在某些的场景下,HashMap中table数据的某个索引位上,数据是按照红黑树
c++制作的植物大战僵尸,开源,一代二代结合游戏
    此游戏全部由本人自己制作完成。游戏大部分的素材来源于原版游戏素材,少部分搜集于网络,以及自己制作。 此游戏为同人游戏而且仅供学习交流使用,任何人未经授权,不得对本游戏进行更改、盗用等,否则后果自负。 目前有六种僵尸和六种植物,植物和僵尸的动画都是本人做的。qq:2117610943 开源代码下载 提取码:3vzm 点击下载--&gt; 11月28日 新增四种植物 统一植物画风,全部修
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
深度学习图像算法在内容安全领域的应用
互联网给人们生活带来便利的同时也隐含了大量不良信息,防范互联网平台有害内容传播引起了多方面的高度关注。本次演讲从技术层面分享网易易盾在内容安全领域的算法实践经验,包括深度学习图
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Python 编程实用技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法,并会持续更新。
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
"狗屁不通文章生成器"登顶GitHub热榜,分分钟写出万字形式主义大作
GitHub 被誉为全球最大的同性交友网站,……,陪伴我们已经走过 10+ 年时间,它托管了大量的软件代码,同时也承载了程序员无尽的欢乐。 万字申请,废话报告,魔幻形式主义大作怎么写?兄dei,狗屁不通文章生成器了解一下。这个富有灵魂的项目名吸引了众人的目光。项目仅仅诞生一周,便冲上了GitHub趋势榜榜首(Js中文网 -前端进阶资源教程)、是榜首哦
推荐几款比较实用的工具,网站
1.盘百度PanDownload 这个云盘工具是免费的,可以进行资源搜索,提速(偶尔会抽风????) 不要去某站买付费的???? PanDownload下载地址 2.BeJSON 这是一款拥有各种在线工具的网站,推荐它的主要原因是网站简洁,功能齐全,广告相比其他广告好太多了 bejson网站 3.二维码美化 这个网站的二维码美化很好看,网站界面也很...
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
相关热词 c#处理浮点数 c# 生成字母数字随机数 c# 动态曲线 控件 c# oracle 开发 c#选择字体大小的控件 c# usb 批量传输 c#10进制转8进制 c#转base64 c# 科学计算 c#下拉列表获取串口
立即提问