编程面试题

  • 在Java中将WireMock与SOAP Web服务一起使用

    我是WireMock的创造者。 我最近使用WireMock在客户端项目上模拟了SOAP接口的集合,因此我可以证明这是可能的。至于它比SOAP UI更好还是更坏,我想说它有一定的优势,但需要权衡取舍。主要优点是相对易于部署和编程访问配置,并支持HTTPS和低级故障注入之类的功能。但是,您需要做更多的工作来解析和生成SOAP负载- 它不会像SOAP UI一样从WSDL中生成代码存根。 我

  • 更快的替代方法来替换Java String中的方法?

    这就是StringBuilder的目的。如果要进行很多操作,请在上进行操作StringBuilder,然后String在需要时将其转换为。 StringBuilder 因此描述:

  • 如何为Java Web应用程序设置httponly和会话cookie

    根据您的Web容器的具体情况,在应用程序中修改容器管理的会话cookie可能导致应用程序服务器抛弃现有会话并创建一个新会话。我已经在Tomcat上观察到了这一点,但对于Weblogic来说可能相似。 如果您使用的是Servlets 3.0,则实际上可以指示应用服务器确保所有会话cookie都是HttpOnly和Secure,并带有以下片段: session-config &l

  • Java和全屏在多个监视器

    您可以尝试: int width = 0; int height = 0; GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment; GraphicsDevice[] gs = ge.getScreenDevices; for GraphicsDevice curGs : gs { DisplayMode m

  • Java / Arduino-从串行端口读取数据

    您不想专门编写示例代码中已经存在的读取函数,如TheMerovingian指出的,您可以在读取之前检查输入Buffer,这是我在一个项目中使用的工作代码。 import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStream; import gnu.io.CommPortIdentifier; i

  • 在Java中使用正则表达式格式化字符串

    RE当无法使用substring或更难以做到的时候,人们就会选择这样做。 你的情况最好只使用StringBuilder和insert 假设电话号码长度验证有效(= 10个字符) String phoneNumber = "1234567890";

  • 使用Java Apache Commons下载文件?

    如果您正在寻找一种在下载之前获取字节总数的方法,则可以从Content-Lengthhttp响应的标头中获取此值。 如果只需要下载后的最终字节数,则最简单的方法就是检查刚刚写入的文件大小。 但是,如果要显示当前已下载多少字节的进度,则可能需要扩展apache CountingOutputStream来包装,FileOutputStream

  • 在Thread.join()之前调用Thread.interrupt()是否会导致join()立即抛出InterruptedException?

    interrupt 中断您中断的线程,而不是中断线程。 cf Thread.currentThread.interrupt; t.join; will throw InterruptedException

  • 用Java编写单例的不同方法

    您的代码与“示例代码”之间的区别在于,加载类时将实例化您的单例,而在“示例”版本中,直到实际需要时才实例化它。

  • 如何在Android NDK上使用JNI在C和Java之间传递复杂的结构

    您不能将原始C结构传递给Java,并希望它将这些结构视为类。您需要为您的结构创建一个类。我看到您已经做到了,所以您唯一要做的就是将这个结构转换为该类的实例。 Java方面的代码: public static native ComplexClass listenUDP; 将转换为: JNIEXPORT jobject JN

  • Java:如何添加SSL客户端身份验证

    如果您希望系统使用客户端证书身份验证,则需要 服务器请求(或要求)客户证书。这是通过setWantClientAuthtrue在服务器套接字(或setNeedClientAuth)上进行设置来完成的。您还需要服务器公布它接受的CA,通常通过使用服务器上的信任库来完成,该信任库包含颁发客户端证书链的CA(这似乎是您通过设置javax.ne

  • 在Java中使用线程和递归来计算斐波那契数

    为此,您需要1)一种将数字传递到新线程中的方法,2)启动线程,3)等待线程完成,以及4)从线程中获取结果的方法。 您可以通过构造函数传递数字。您可以有一个名为“答案”的公共数据成员来包含计算结果。可以使用start方法完成启动线程,然后该join方法等待线程完成。 下面的示例演示了这一点。那应该是一个很好的起点;从这里,您可以消除一些混乱,以根据需要获

  • 经常使用instanceof是一种好习惯吗?

    假设我正在写一些库存代码: public void showInventoryListItem items { for Item item : items { if item instanceof ContainerItem { container display logic here } else

  • Java 8:目标输入

    语境 上下文 是在代码中使用表达式的方式。这不只是lambda表达式-这是任何表情,像a+b,a++或Math.random。 可能的情况示例: 作业: 取表达式a+b。如果将其分配给变量,则会在分配上下文

  • 为什么此Java程序占用大量内存?

    其他答案是正确的:Java将使用允许的尽可能多的内存,这时它将进行垃圾回收。要解决此问题,可以在JVM设置中指定较小的最大堆大小。您可以使用- Xmx设置来执行此操作。例如,如果您认为只需要32MB,则将其运行为: java -Xmx32M [your main class or jar here] 程序的堆(非堆栈内存)不会占用超过32MB的内存,但是如果一

  • 在Android上的运行时将字符串编译为代码

    ImagePlayground是一个开源Android应用程序,它使用Dexmaker和自定义编程语言来完成此任务。

  • Java上的服务器名称指示(SNI)

    您可能要跟踪https:issues.apache.orgjirabrowseHTTPCLIENT-1119 Java a href="ht

  • 我如何轻松地在字节数组之间压缩和解压缩字符串?

    你可以试试 enum StringCompressor { ; public static byte[] compressString text { ByteArrayOutputStream baos = new ByteArrayOutputStream; try { OutputStream out = new Deflater

  • 适用于ArcShape的Android自定义动画

    我找到了解决方案。我有一个扩展的类,View我们称其为Pacman我的自定义嵌套Animation在Pacman该类中。这让我访问member variables了的Pacman类。 public class Pacman extends View { f

  • jboss上的Yui压缩程序StringIndexOutOfBoundsException

    我自己重新打包了yuicompressor,以包括大部分犀牛源,从而解决了这个问题。请参阅我对霍华德·刘易斯·希普的答复。 重新包装的源​​代码可以在以下位置找到:http : a href="http:viscri.co.uklabstapestry

  • Java中的SSLSocketFactory

    它通过SSLContext完成。初始化一个,然后使用它的套接字工厂创建HttpsConnection实例。 这是我如何在应用程序中进行管理的粗略示例: SSLContext sc = SSLContext.getInstance"SSL"; sc.initmyKeyManagerFactory.getKeyManagers, myTrustManagerArray, new java.

  • 向JRE添加SSL证书以访问HTTPS站点

    您应该能够使用指定的命令将服务器(自签名?)SSL证书导入到本地主机上。要更完整,您可以尝试 $JAVA_HOMEbinkeytool -import -alias mycertificate -keystore path_to_keystore -file certificate_file 哪里 $JAVA_HOMEc

  • 使用JNI创建,填充和返回Java类实例

    调用时GetMethodID,您为two-arg构造函数提供了签名。因此,您只需要在呼叫时传递jstring和即可- 例如:jbytearray``NewObject return *env-NewObjectenv, c, cnstrctr, id, cache;

  • 在字符串中查找重复的字符并使用Java计算出现的次数

    import java.io.*; public class CountChar { public static void mainString[] args throws IOException { String ch; BufferedReader br=new BufferedReadernew InputStreamReaderSystem.in; Sys

  • 在多个平台上的Java应用程序中的WebKit浏览器

    从SWT 3.7 M5开始,Browser如果使用SWT.WEBKIT标记创建,则小部件可以在所有平台上使用WebKit 。特定于平台的条件可能适用:请参阅a href="http:www.eclipse.orgswtfaq.php#howusewebki

  • 将类路径添加到在Maven集成测试中运行的Jetty中

    使用webAppConfig配置元素(以下示例来自此线程)应该可以实现: webAppConfig contextPathnportalcontextPath !-- All I want to do he

  • 使用Java系统属性的最佳实践

    我将把它当作您遍历整个代码的任何其他String常量,并为其定义一个常量变量。当然,在这种情况下,“ java.io.tmpdir”不太可能更改,但您永远不会知道。(我并不是说Sun可能会更改“ java.io.tmpdir”的含义或其所指向的系统属性,但是您可能会改变主意,以了解需要读取的系统属性。) 如果您只在一个类中使用特定属性,那么我将在该类中定义常量。

  • Tomcat如何在没有web.xml的情况下完全引导应用程序?

    Servlet 3.0添加了可插入性机制。它的工作方式是,在加载您的应用程序时,它将扫描类路径中名为javax.servlet.ServletContainerInitializerinside 的文件META-INFservices。在这里,实现者应该具有实现的名称,servlet容器可以在其中加载它。您可以在spring- webjar中看到此文件

  • 使用Lambda表达式对多个属性进行排序

    将lambda 表达式 更改为lambda {block} ,而不必指定参数类型: list.sorto1, o2 - { int cmp = o1.getGroup.compareToo2.getGroup; if cmp == 0 cmp = Integer.compareo1.getAge, o2.get

  • 如何检测Java系统类?

    在调用pre- main方法并添加ClassFileTransformer之前,已经加载了一些(不是全部)系统类。如果您还想转换这些类,则可以在添加ClassFileTransformer之后调用类似Instrumentation#retransformClasses(Instrumentation#getAllLoadedClasses())之类的方法。请注意,您必须使用Instrumentation#addTransformer(Cl

  • Android:混合多个AudioTrack实例?

    我有4个音轨同时播放,它们似乎播放得很好。在HTC Desire 1.1ghz OC上进行测试。我有时会在穿线时遇到小故障。有时,如果所有四个都在播放,则在我尝试加入该线程时不会停止。需要做更多的测试。这是我的课程,用于播放在给定路径下记录的WAV文件 package com.ron.audio.functions; import java.io.BufferedInputStream;

  • volatile如何实际起作用?

    据我了解,它总是看起来好像写后缓存已被刷新,并且总是看起来好像是在读取时直接从内存中进行读取。这样做的结果是,一个线程将始终看到另一个线程的写入结果,并且(根据Java内存模型)永远不会看到缓存的值。但是,实际实现和CPU指令会因一种体系结构而异。 如果您在一个以上的线程中递增变量,或检查其值并采取某些措施,则不能保证正确性,因为显然没有实际的同步。通常,只有仅线程正在写入变量,而其他线程都正在读取时,才可以保证正确执行。p

  • SQL Server查询从Java运行缓慢

    确保将JDBC驱动程序配置为使用直接连接,而不是基于cusror的连接。如果不确定,可以发布JDBC连接URL。 确保您使用的是只读,只读结果集(如果未设置,则为默认设置)。 并确保您使用的是更新的JDBC驱动程序。 如果所有这些都不起作用,那么您应该查看sql事件探查器,并尝试在jdbc驱动程序执行该语句时捕获sql查询,然后在Management Studio中运行该语句,看看是否

  • 休眠分页机制

    我在查询和休眠回叫中使用。两者都按预期工作。Hibernate Query执行的结果介于给定的First和Max大小之间。在这里,好像您传递了SQL而不是HQL进行查询。如果是的话,那应该行不通。 -在这里查看我的代码。 Query query = this.getSession.createQuery"FROM QueryType"; q

  • 从资源中读取XML文件

    将其放在your_project_root\res\xml\文件夹下。然后,您可以使用以下命令打开它: Resources res = activity.getResources; XmlResourceParser xrp = res.getXmlR.xml.your_resId; 这里有一个有关如何使用的示例XmlResour

  • Struts2线程中的拦截器是否不安全?

    任何 不使用 实例字段或其他共享状态的拦截器都是线程安全的: 例如,查看a href="http:grepcode.comfilerepo1.maven.orgmaven2org.apache.struts.xworkxwork- core2.3.1.1comopensymphonyxwork2interceptorAbstractInterceptor.java?av=h#Abst

  • 哈希表使用多少内存?

    编辑; 噢,天哪,我是个白痴,我提供了HashMap的信息,而不是HashTable的信息。 但是,检查后,出于内存目的,实现是相同的。 这取决于您的VM的内部内存设置(项目的包装,32位或64位指针以及字对齐大小),并且不是由Java指定的。 可以在a href="http:www.javamex.comtutorialsmemoryobject_memory_

  • 用Ruby加密和用Java解密-为什么不起作用?

    这是问题-或至少 是一个 问题: byte[] result = cipher.doFinalencryptedData; return result.toString; 您正在调用toString字节数组。数组不覆盖toString。如您所见,那根本不会给您您想要的东西。相反,你需要写

  • 如何在Eclipse Java中重用从Explorer(在Weka中)创建的已保存分类器

    这是加载模型以预测实例值的示例。示例模型是在Weka Explorer中创建并保存的J48决策树。它是根据Weka提供的名义天气数据构建的。它称为“ tree.model”。 load model String rootPath="somewhere"; Classifier cls = Classifier weka.core.SerializationHelper.read

  • Struts 2:动作之间的参数

    您使用了“转发”一词,但听起来您想转到一个新页面(address.html)以收集有关该地址的更多信息。在这种情况下,您需要在用户操作完成后重定向到地址页。 action name="user" class="UserAction" !-- Redirect to another namespace -- !-- for Struts 2.2 --