小编and*_*bd1的帖子

如何增加Java堆栈跟踪转储的显示行数?

有没有办法Throwable.printStackTrace(PrintStream s)打印完整的堆栈跟踪,以便我可以看到超出最后一行"... 40 more"

java exception

91
推荐指数
3
解决办法
3万
查看次数

cygwin命令复制到Windows剪贴板

我在这里看到:

http://www.pgrs.net/2008/1/11/command-line-clipboard-access

在linux和osx中有一种方法可以从命令行复制到剪贴板.所以我运行了我的cygwin setup.exe,但找不到xsel包.我猜也许这个软件包还没有被移植到Windows?看起来在Windows中有一个工具可以做到:

http://www.labnol.org/software/tutorials/copy-dos-command-line-output-clipboard-clip-exe/2506/

我想我会试试 - 但我认为我会问是否有人找到了一个好的解决方案.

cygwin

81
推荐指数
5
解决办法
3万
查看次数

命令行中的sqlplus语句

可以这样做吗?

$ sqlplus -s user/pass "select 1 from dual" 要么
$ echo "select 1 from dual" | sqlplus -s user/pass

我知道我可以放入select 1 from dual文件并执行此操作:
$ sqlplus -s user/pass @myFile.sql

但我想知道是否真的有必要创建一个文件只是为了满足sqlplus

sql oracle sqlplus

48
推荐指数
4
解决办法
20万
查看次数

使用Eclipse IDE以调试模式加速Tomcat

通过eclipse运行Tomcat在非调试模式下运行良好,但在调试模式下运行不正常.当我尝试在调试模式下启动Tomcat服务器时,控制台输出看起来很好一段时间,但随后开始减速并最终停止,将CPU固定为100%.我不认为它是相关的,但以防万一 - 这是控制台输出正确的时候它开始减速并最终停止(通过停止我的意思是没有更多的控制台输出,但仍然是100%的CPU).

2009-09-02 14:35:30,859 INFO   NONE org.springframework.context.weaving.DefaultContextLoadTimeWeaver:72 - Found Spring's JVM agent for instrumentation
2009-09-02 14:35:49,562 INFO   NONE org.springframework.beans.factory.support.DefaultListableBeanFactory:414 - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@ed889d: defining beans [...
2009-09-02 14:37:31,031 INFO   NONE org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean:221 - Building JPA container EntityManagerFactory for persistence unit ...
Run Code Online (Sandbox Code Playgroud)

我尝试了一切我能想到的解决方法:

  • cleanesd tomcat工作目录
  • 重启日食
  • 重启Windows
  • 刷新/清理所有项目

我上周第一次使用eclipse ganymede遇到了这个问题.在本期之前的几个月里,我一直在调试模式下运行良好.我没有对我们的项目做出任何重大改变.最后,我升级到eclipse galileo,解决了我的问题.现在2天后,我在伽利略遇到了同样的问题.就像我说它在非调试模式下工作正常.任何帮助深表感谢.

我应该补充一点,其他的东西在调试模式下工作 - 例如junit测试,所以它是特定于tomcat的东西.

java eclipse tomcat debug-mode

44
推荐指数
2
解决办法
3万
查看次数

Java堆栈跟踪中的"未知源",但行号在类文件中

我编写了一个超级简单的java类,它应该抛出异常.但是我得到的堆栈跟踪看起来像这样:

java.lang.RuntimeException: hello
        at Main.go(Unknown Source)
        at Main.main(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

注意:堆栈跟踪中没有行号,我希望有.

在搜索此问题时您找到的答案都是在编译时添加正确的参数,以确保行号实际上成为类文件.但是,我不相信这是我的问题,因为我在我的ant build.xml中有这个

<javac
  debug="true"
  debuglevel="lines,vars,source"
  includeAntRuntime="false"
  classpathref="classpath.compile"
  srcdir="${src.dir}"
  destdir="${build.classes}" />
Run Code Online (Sandbox Code Playgroud)

此外,根据javap,它看起来像行号确实成功:

$ javap -l ./build/classes/Main | head -n 9
public class Main extends java.lang.Object{

public Main();
  LineNumberTable: 
   line 14: 0
   line 22: 4
   line 23: 15
   line 24: 26
Run Code Online (Sandbox Code Playgroud)

什么给出了什么?当我运行代码时,是否需要在jvm中设置一个参数?

谢谢!

java ant

21
推荐指数
1
解决办法
1万
查看次数

在ant中输出几个时间戳

下面的Ant构建文件片段试图简单地输出每个sql脚本运行之前和之后的时间.我无法更改Ant目标的结构(create-tables必须像调用run-sql-script一样).问题是属性(时间和时间2)是不可变的(http://ant.apache.org/manual/Tasks/property.html),因此只有第一次操作而不是第二次操作.有没有办法做我在Ant尝试做的事情?

  <target name="create-tables">
    <antcall target="run-sql-script">
      <param name="db.script" value="teams.sql"/>
    </antcall>

    <!-- Create the base UDM schema. -->
    <antcall target="run-sql-script">
      <param name="db.script" value="players.sql"/>
    </antcall>
  </target>
  <target name="run-sql-script">
    <tstamp>
      <format property="time" pattern="MM/dd/yyyy hh:mm:ss aa"
          offset="-5" unit="hour"/>
    </tstamp>
    <echo>before: ${time}</echo>
    <sql
        classpath="${classpath}"
        driver="${db.driver}"
        url="${db.url}"
        userid="${db.userid}"
        password="${db.password}"
        src="${script.dir}/${db.script}"
        delimiter="${script.delimiter}"
        onerror="abort">
    </sql>              
    <tstamp>
      <format property="time2" pattern="MM/dd/yyyy hh:mm:ss aa"
            offset="-5" unit="hour"/>
    </tstamp>
    <echo>after: ${time2}</echo>
  </target>
Run Code Online (Sandbox Code Playgroud)

ant timestamp

20
推荐指数
4
解决办法
3万
查看次数

Thread.sleep()挂了吗?

这是我的简单代码,每秒循环(不需要精确)并在必要时启动作业:

while (true) {
  // check db for new jobs and 
  // kick off thread if necessary
  try {
    Thread.sleep(1000);
  } catch(Throwable t) {
    LOG.error("", t);
  }
}
Run Code Online (Sandbox Code Playgroud)

这段代码已经好几个月了. 就在昨天,我们开始出现问题,其中一个服务器似乎挂在Thread.sleep(1000)方法中.IOW - 已经过了一天而且Thread.sleep还没有返回.我启动了jconsole并获取有关该线程的信息.

Name: Thread-3
State: TIMED_WAITING
Total blocked: 2  Total waited: 2,820

Stack trace: 
 java.lang.Thread.sleep(Native Method)
xc.mst.scheduling.Scheduler.run(Scheduler.java:400)
java.lang.Thread.run(Thread.java:662)
Run Code Online (Sandbox Code Playgroud)

Scheduler.java:400是上面的Thread.sleep行.按照我的预期,jconsole输出不会每秒增加"Total wait".事实上,它根本没有变化.我甚至关闭了jconsole并重新启动它,希望可能会强制刷新,但只会再次获得相同的数字.我不知道除了jvm错误地挂在sleep命令上之外还有什么其他的解释.然而,在我这些年里,我对jvm的问题很少,我认为这一定是我的疏忽.

注意:另外需要注意的是没有其他线程处于活动状态. IOW - cpu几乎空闲.我读到某个地方,如果另一个线程处于活动状态,Thread.sleep可能会被合法地饿死,但事实并非如此.

solaris版本:

$ uname -a
SunOS xcmst 5.10 Generic_141415-08 i86pc i386 i86pc
Run Code Online (Sandbox Code Playgroud)

java版本:

$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java …
Run Code Online (Sandbox Code Playgroud)

java sleep

20
推荐指数
2
解决办法
1万
查看次数

优化mysql计数查询

有没有办法进一步优化这个或者我是否应该满足于计算11M行需要9秒?

devuser@xcmst > mysql --user=user --password=pass -D marctoxctransformation -e "desc record_updates"                                                                    
+--------------+----------+------+-----+---------+-------+
| Field        | Type     | Null | Key | Default | Extra |
+--------------+----------+------+-----+---------+-------+
| record_id    | int(11)  | YES  | MUL | NULL    |       | 
| date_updated | datetime | YES  | MUL | NULL    |       | 
+--------------+----------+------+-----+---------+-------+
devuser@xcmst > date; mysql --user=user --password=pass -D marctoxctransformation -e "select count(*) from record_updates where date_updated > '2009-10-11 15:33:22' "; date                         
Thu Dec  9 11:13:17 EST 2010
+----------+
| count(*) …
Run Code Online (Sandbox Code Playgroud)

mysql sql query-optimization

13
推荐指数
4
解决办法
8708
查看次数

为什么sax解析比dom解析更快?stax是如何工作的?

有点相关:来自java的libxml2

是的,这个问题相当啰嗦 - 对不起.我保持尽可能密集.我把问题加粗了,以便在阅读整篇文章之前更容易窥视.

为什么sax解析比dom解析更快? 我唯一能想到的是w/sax你可能忽略了大部分传入数据,因此不会浪费时间处理你不关心的xml部分.IOW - 解析w/SAX后,无法重新创建原始输入. 如果您编写SAX解析器以便它占据每个xml节点(并因此可以重新创建原始节点),那么它不会比DOM更快吗?

我问的原因是我正在尝试更快地解析xml文档.我需要在解析后访问整个xml树.我正在编写一个插入第三方服务的平台,所以我无法预测xml文档的哪些部分需要以及哪些部分不需要.我甚至不知道传入文件的结构.这就是为什么我不能使用jaxb或sax.内存占用对我来说不是问题,因为xml文档很小,我一次只需要1个内存.这是解析这个相对较小的xml文档所花费的时间.我之前没有使用过stax,但也许我需要进一步调查,因为它可能是中间地带? 如果我理解正确, 通过这种方式,原始的解析时间可能很快,但每次我要求它遍历尚未遍历的树的一部分时,就是处理发生的时候?

如果您提供了回答大多数问题的链接,我会接受您的回答(如果他们已在其他地方回答,您无需直接回答我的问题).

更新:我在sax中重写了它,并在avg 2.1 ms上解析文档.这比dom所采用的2.5毫秒有所改善(快16%),但这并不是我(等人)猜到的那么大.

谢谢

java xml stax dom sax

11
推荐指数
3
解决办法
2万
查看次数

mysql profiler"发送数据"

在任何地方都有这些状态的解释吗?

http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html

我的具体问题是关于这个查询:

select count(*)
from 135_5m.record_updates u, 135_5m.records r
where  r.record_id = u.record_id  and 
  (u.date_updated > null or null is null)  and 
  u.date_updated <= '2011-01-03';
Run Code Online (Sandbox Code Playgroud)

返回一个数字 - 4053904.那么为什么大部分时间都花在"发送数据"上呢?这只是名字不好吗?当然,"发送数据"必须做的不仅仅是发送数据吗?

+--------------------------------+-----------+-------+
| Status                         | Duration  | Swaps |
+--------------------------------+-----------+-------+
| starting                       |  0.000224 |     0 |
| checking query cache for query |  0.000188 |     0 |
| checking permissions           |  0.000012 |     0 |
| checking permissions           |  0.000017 |     0 |
| Opening tables                 |  0.000036 |     0 | …
Run Code Online (Sandbox Code Playgroud)

mysql

7
推荐指数
1
解决办法
5806
查看次数

标签 统计

java ×5

ant ×2

mysql ×2

sql ×2

cygwin ×1

debug-mode ×1

dom ×1

eclipse ×1

exception ×1

oracle ×1

query-optimization ×1

sax ×1

sleep ×1

sqlplus ×1

stax ×1

timestamp ×1

tomcat ×1

xml ×1