草庐IT

MySQL性能优化

全部标签

java - 使用 try-catch over if 条件以在 java 中以最小的性能影响安全地设置值

在这里,我的主要目标是安全地设置值,而不会对性能(速度、内存、CPU等)产生影响。我有一个愚蠢的选择(风格不佳)也在下面提到。那么,最好的方法是什么?选项1?选项2?还是另一个?选项1:if(animalData!=null&&animalData.getBreedData()!=null&&dogx.getBreed()!=null&&dogx.getBreed().getBreedCode()!=null&&animalData.getBreedData().get(dogx.getBreed().getBreedCode())!=null){dogx.getBreed().set

java - string.replaceAll() 性能是否受到字符串不变性的影响?

假设我在替换了1,000个匹配实例的大字符串上调用了replaceAll()。这是否意味着由于字符串不可变性而在过程中创建并重新分配了1,000个字符串?有没有更快的替代方案? 最佳答案 如果你深入研究String,您会看到它将replaceAll()委托(delegate)给Pattern&Matcher和Matcher.replaceAll()使用StringBuilder来存储最终返回的值。所以不,String.replaceAll()不会创建超过少量的对象。 关于java-str

java - 线程数和 Java 应用程序性能

您好:我有一个多线程Java应用程序。当前线程大小已经是100。我们目前使用的是4核CPU。但在不久的将来,CPU核心将增加一倍,甚至达到32核。为了充分利用内核,我们需要增加线程池的大小。但是您可能知道(也许我错了),Java在有10000个线程时很好,但是当线程为200、500、1000个线程时可能会出现性能问题。那么我们是否应该使用其他编程语言,例如scala。我的担心有道理吗? 最佳答案 使用现代JVM,Java进程可以创建操作系统允许的任意数量的线程。您的应用程序能否充分利用这些线程取决于您的应用程序的设计。如果可伸缩性是

java - 编译器会优化重复的数学计算吗?

Java编译器是否会优化简单的重复数学运算,例如:if(prevX/width!=curX/width){//DosomethingwithprevX/widthvalue}else{//DosomethingwithcurX/widthvalue}我知道我可以在if语句之前将结果分配给变量,然后返回变量,但这有点麻烦。如果编译器自动识别正在进行相同的计算并自行将结果缓存到临时变量,我宁愿坚持上述约定。*编辑-我是个白痴。我试图简单/抽象我的问题太多。它并不简单:if(x>y) 最佳答案 答案是肯定的。这叫做CommonSubexp

java - JAVA和MYSQL如何删除一条记录(字符串)

我可以成功删除一个整数,但是当我尝试将其设为STRING时,它说“where子句中的未知列itemtodelete但我的ITEMTODELETE是在数据库中声明的字符串而不是整数它不删除字符串多少?下面是我的代码:privatevoidDeleteButtonActionPerformed(java.awt.event.ActionEventevt){intdel=(prompt):if(del==JOptionPane.YES_OPTION){DelCurRec();}}publicvoidDelCurRec(){Stringid=field.getText();StringSQL=

java - 使用 ArrayLists 优化 for 循环

来自this文章,hand-writtencountedloopisabout3xfaster比用于遍历数组列表的增强for循环。首先,“手写计数循环”是什么意思?他们没有明确说明这意味着什么。其次,为什么这只适用于数组列表而不适用于其他集合? 最佳答案 Firstly,whatdotheymeanby"hand-writtencountedloop"?我想他们的意思是for(inti=0;iSecondly,whyisitthatthisholdstrueonlyforarraylistsandnottheothercollect

java - Log4j 日志会降低应用程序性能吗?

日志记录会降低应用程序性能吗?以及如何限制在日志文件中打印display-tags日志?例如。我的日志文件有以下日志[2012-06-2015:52:06,290]org.displaytag.tags.TableTagisFirstIteration684-[data]firstiteration=true(rownumber=1)[2012-06-2015:52:06,290]org.displaytag.tags.TableTagisFirstIteration684-[data]firstiteration=true(rownumber=1)[2012-06-2015:52:0

java - 在 Selenium Webdriver 中,哪个在性能方面更好 Linktext 或 css?

在Selenium中,最好使用定位器ID定位元素。最小定位器是XPath(如果我错了请纠正我)。那么,人们应该使用定位器来识别元素是否有任何优先顺序或顺序? 最佳答案 这是在https://stackoverflow.com/questions上定位元素的不同方法的一些基准测试:Chrome52,驱动程序2.2215msforexecute_script("return[].find.call(document.getElementsByTagName('a'),function(e){returne.textContent.tri

java - 智能 JVM 和 JIT 微优化

随着时间的推移,Sun的JVM和JIT变得非常智能。不再需要过去作为必要的微优化而成为常识的事情,因为它会为您处理。例如,过去的情况是您应该将所有可能的类标记为最终类,以便JVM内联尽可能多的代码。但是现在,JIT会根据运行时加载的类来知道您的类是否是最终类,如果您加载一个类以使原始类成为非最终类,它会取消内联方法并将其取消标记为final。JVM或JIT还为您做了哪些其他智能微优化?编辑:我将其设为社区维基;我想随着时间的推移收集这些。 最佳答案 这太令人印象深刻了。所有这些都是您在C++中不能做的事情(当然在Java中做不到)。

java - ClassNotFoundException : com. mysql.jdbc.Driver。用于 Web 应用程序的 JDBC MySQL 驱动程序

这个问题在这里已经有了答案:HowtoinstallJDBCdriverinEclipsewebprojectwithoutfacingjava.lang.ClassNotFoundexception(13个答案)关闭7年前。所以我有一个MySQLJDBC驱动程序的.jar文件,它在我的库源文件夹下,我有以下代码:publicstaticConnectiongetConnection()throwsSQLException{Connectionconn=null;try{Class.forName("com.mysql.jdbc.Driver").newInstance();Strin