.class文件怎么进行断点调试呢

怎么把它变成.java结尾的文件呢,反编译过了,虽然能看到源码了,但还是.class文件不能加断点调试呀

2个回答

你的反编译软件没有导出为java的吗?
或者你可以试一下这个软件 http://www.cr173.com/soft/5606.html
本人试过,打开一个class之后,会把相关的这个文件夹的所有class反编译,可以导出为java

rem_16_0312
rem_16_0312 回复A_影: 终于导成java文件了,居然都没发现,太感谢了
大约 3 年之前 回复
qq_32619291
A_影 回复rem_16_0312: file->save Source 或者 save all Source
大约 3 年之前 回复
qq_32619291
A_影 回复rem_16_0312: 我的也是gd_gui,反编译后是可以导出为java类的
大约 3 年之前 回复
rem_16_0312
rem_16_0312 你这个网页打不开呀,我用的是gd-gui.exe,它貌似只能编译,能直接导出为.java类吗?
大约 3 年之前 回复

反编译工具说实话,可信度不是很高,最好有源代码,作为一个开发人员,一般发布程序的时候,或者程序编写的时候,都会考虑安全性以及保密性。
如果你说的是学习之类的,应该使用反编译工具基本没问题,建议得到源代码

only123138
only123138 你说这么多有什么用,有源文件还会问你啊,不就是没有源代码哦,说的和废话一样
10 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
eclipse只能调试跟踪到class文件

![断点设置到这个NCHOME的一些CLASS文件中总是会不起作用](https://img-ask.csdn.net/upload/201601/06/1452044804_133647.jpg) 这个工程是直接从别的地方拷贝过来,然后在我自己电脑上运行的。 NCHOME应该是一个link source,里面是源码java文件。 不知道为什么,我调试跟踪的时候跟踪不到这些java文件里,只能跟踪到class文件里,而且断点也只能设置在这些class文件里。 但设置在class文件里的断点又好像不太好用,总是不起作用。 怎么设置才能跟踪调试NC__Home里的java文件?

debug经常进入莫名其妙的class文件,执行其中的方法,其中就有ThreadPoolExecutor,invoke等等

![图片说明](https://img-ask.csdn.net/upload/201904/24/1556072273_380076.png) 一直解决不了,老是调到这些类中,不能正常执行打了断点的代码,我使用的编译工具是IDEA,有没有大佬知道怎么解决呀,万分感谢

ECLIPSE单步调试,不能继续STEP OVER

![图片说明](https://img-ask.csdn.net/upload/201606/10/1465573262_325581.png)ECLIPSE单步调试,非常奇怪: 1)单步调试到第224行的时候(改行为空行),不能继续STEP OVER下去,如果继续step over,会提示source not found。 2)控制台提示第224行有空指针异常,但224行是一个空行,请问这是怎么回事?

gdb调试hotspot源码出现找不到或无法加载主类的问题

编写一个holleworld的java程序通过该程序来调试hotspot 打完断点运行以后 coutinue 出现了错误 没有显示helloworld 环境配置没有问题

使用VSCode调试Golang时如何在运行时添加断点?

<div class="post-text" itemprop="text"> <p>After activating a debug session, the program started running. At this time, I tried to create a breakpoint. Unfortunately, it said "Unverified Breakpoint" and the color turned into dark black, different from the other pre-defined one (which was red). You can see more clearly on the image below. The debugger would never stop at the line of the breakpoint.</p> <p>Did I miss any steps? </p> <p><a href="https://i.stack.imgur.com/zEBwX.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/zEBwX.png" alt="enter image description here"></a></p> </div>

调试go应用程序不会在断点处停止

<div class="post-text" itemprop="text"> <p>I have latest IntelliJ Ultimate EAP and latest Gogland and the problem occurs on both under MacOS Sierra.</p> <p>I'm trying to debug a go application by creating a debug profile for <code>Go Application</code> and the <code>Run Kind</code> is configured to <code>Package</code>, which contains the package name of the current project.</p> <p>under <code>Go tool arguments</code> I have <code>-ldflags="-linkmode internal"</code> configured.</p> <p>When I start a debug session while having some breakpoints, it would run but not stop at these breakpoints.</p> <p>what am I missing?</p> <p>thanks</p> <h1>update</h1> <p>ok I was able to reproduce the issue with the following project:</p> <p><code>test1.go</code> contains:</p> <pre><code>package main const Numb uint64 = 5 </code></pre> <p><code>test2.go</code> contains:</p> <pre><code>package main import "fmt" func main() { fmt.Println(Numb); } </code></pre> <p>I Created a <code>Go Application</code> run/debug configuration with the following parameters:</p> <pre><code>Run kind: package Package: github.com/kfirufk/test Working Directory: /usr/local/Cellar/go/1.8.1/src/github.com/kfirufk/test/ </code></pre> <p>when I choose a breakpoint on <code>test2.go</code> line 6 (the first and only line of code in the main function) and I start a debug session, I see the following output:</p> <pre><code>"/Users/ufk/Library/Application Support/IntelliJIdea2017.1/Go/lib/dlv/mac/dlv" --listen=localhost:53111 --headless=true exec /private/var/folders/cn/n7rwdd_95_l54s3zdnbxvw040000gn/T/Unnamedgo -- GOROOT=/usr/local/Cellar/go/1.8.1/libexec GOPATH=/usr/local/opt/go /usr/local/Cellar/go/1.8.1/libexec/bin/go build -o /private/var/folders/cn/n7rwdd_95_l54s3zdnbxvw040000gn/T/Unnamedgo -gcflags "-N -l" github.com/kfirufk/test API server listening at: 127.0.0.1:53111 5 </code></pre> <p>I get the program's output properly but Intellij did not stop in the required breakpoint.</p> <p>the problem is reproduced on Intellij 2017.1.3 with Go Lang Plugin 0.171.1928 on MacOS Sierra 10.12.4.</p> <h1>update</h1> <p>trying to play with intellij's delve to try to understand better what's going on:</p> <pre><code>/Users/ufk/Library/Application\ Support/IntelliJIdea2017.1/intellij-go/lib/dlv/mac/dlv exec ./test </code></pre> <p>then I executed:</p> <pre><code>(dlv) step </code></pre> <p>and received:</p> <pre><code>Command failed: could not find FDE for PC 0x78bc000 </code></pre> <p>did I fail to understand how to use delve or is something doesn't work properly here ?</p> <h1>update</h1> <p>yeap.. with <code>continue</code> the debugger works properly with both versions of delve (installed from homebrew and the intellij's version). but still intellij works the same, doesn't stop at breakpoints. i create a breakpoint at <code>test2.go</code> at the line when I print the variable.</p> <p>any ideas ?</p> </div>

java web debug调试(启动tomcat后怎么直接进入源码调试)

可以在class文件中设置断点吗 在我的MyEclipse中安装了jad反编译工具。在里面设置的断点好像没用呀. 我想在tomcat启动后进入源码调试

VS C#调试dll里面的类

![图片说明](https://img-ask.csdn.net/upload/201705/31/1496207635_487667.png) 然而这个类却在dll里面

VScode写C++代码可以运行,但是无法调试.

# ## # VScode写C++代码可以运行,但是无法调试 ![图片说明](https://img-ask.csdn.net/upload/202005/08/1588947283_71767.png) ## 每次都会报运行会出现上面的错误,就是今天更新后才出现,本来前面使用没出现问题。 ## ## 下面是tasks.json和launch.json的截图 ![图片说明](https://img-ask.csdn.net/upload/202005/08/1588947253_503284.png) ![图片说明](https://img-ask.csdn.net/upload/202005/08/1588947271_506376.png)

idea jar包源码无法断点

在源码中无法断点,项目运行不会在断点位置停住(肯定会执行到我打断点的位置的)。 项目未启动时,是没有√的红圆点,项目启动运行后就变成了下图的禁止符号。 ![图片说明](https://img-ask.csdn.net/upload/201907/11/1562828255_200183.png)

如何调试jar包中的源码

jar包中的源码关联后,有一大堆class文件,如何在其中设置断点,让它跑起来呢,就是想看看项目是怎么运行的

安卓,调试时无法进入到run方法

安卓,调试时无法进入到run方法,但把该项目下生成的apk文件发送到手机并安装运行 是这样的,按下"主线程的消息"按钮,结果如下: ![图片说明](https://img-ask.csdn.net/upload/201702/19/1487455197_812710.png) 按下"从其他线程到主线程的消息"和"消息与其他线程运行从主线程的回调"按钮,结果 如下: ![图片说明](https://img-ask.csdn.net/upload/201702/19/1487455772_249075.png) 按下"消息到其他线程本身"按钮,结果如下: ![图片说明](https://img-ask.csdn.net/upload/201702/19/1487455715_41821.png) 求解释 EventHandler.java ``` package com.mytest.handlertest; import android.content.Context; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.util.Log; import android.widget.Toast; class EventHandler extends Handler { private NoLooperThread noLooperThread; private OwnLooperThread ownLooperThread; private Context context; public EventHandler(Context context,Looper looper) { super(looper); this.context=context; } public EventHandler() { super(); } @Override public void handleMessage(Message msg) { super.handleMessage(msg); Log.e("EventHandler", "当前线程id:------+>"+Thread.currentThread().getId()); Toast.makeText(context, "当前线程id:------+>"+Thread.currentThread().getId(), Toast.LENGTH_SHORT).show(); //可以根据msg.what执行不同的处理,这里没有这么做 switch(msg.what){ case 1: Log.e("EventHandler",(String)msg.obj); break; case 2: Log.e("EventHandler",(String)msg.obj); Toast.makeText(context, (String)msg.obj, Toast.LENGTH_SHORT).show(); //noLooperThread.stop(); break; case 3: //不能在非主线程的线程里面更新UI,所以这里通过Log打印收到的消息 Log.e("EventHandler", (String)msg.obj); //ownLooperThread.stop(); break; default: //不能在非主线程的线程里面更新UI,所以这里通过Log打印收到的消息 Log.e("EventHandler", (String)msg.obj); break; } } } ``` HandlerTest.java ``` package com.mytest.handlertest; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class HandlerTest extends Activity implements OnClickListener { private Button btn1,btn2,btn3,btn4,btn5,btn6; private boolean postRunnable; private EventHandler mHandler; private NoLooperThread noLooperThread; private OwnLooperThread ownLooperThread; private Handler mOtherThreadHandler; private TextView tv; private ReceiveMessageThread receiveMessageThread; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_handler_test); btn1=(Button)findViewById(R.id.b101); btn2=(Button)findViewById(R.id.b102); btn3=(Button)findViewById(R.id.b103); btn4=(Button)findViewById(R.id.b104); btn5=(Button)findViewById(R.id.b105); btn6=(Button)findViewById(R.id.b106); tv=(TextView)findViewById(R.id.tv1); btn1.setOnClickListener(this); btn2.setOnClickListener(this); btn3.setOnClickListener(this); btn4.setOnClickListener(this); btn5.setOnClickListener(this); btn6.setOnClickListener(this); receiveMessageThread=new ReceiveMessageThread(this); receiveMessageThread.start(); } @Override public void onClick(View v) { switch(v.getId()){ case R.id.b101: //主线程发送消息给自己 Looper looper; looper = Looper.myLooper(); //get the Main looper related with the main thread //如果不给任何参数的话会用当前线程对应的Looper(这里就是Main Looper)为Handler里面的成员mLooper赋值 mHandler = new EventHandler(this,looper); //mHandler = new EventHandler(); // 清除整个MessageQueue里的消息 mHandler.removeMessages(0); String obj = "This main thread's message and received by itself!"; //得到Message对象 Message m = mHandler.obtainMessage(2, 1, 1, obj); // 将Message对象送入到main thread的MessageQueue里面 mHandler.sendMessage(m); break; case R.id.b102: //other线程发送消息给主线程 postRunnable = false; noLooperThread = new NoLooperThread(this); noLooperThread.start(); break; case R.id.b103: //other thread获取它自己发送的消息 tv.setText("请看其他线程接收消息的错误级别日志"); ownLooperThread = new OwnLooperThread(this); ownLooperThread.start(); break; case R.id.b104: //other thread通过Post Runnable方式发送消息给主线程 postRunnable = true; noLooperThread = new NoLooperThread(this); noLooperThread.start(); break; case R.id.b105: //主线程发送消息给other thread if(null!=mOtherThreadHandler){ tv.setText("please look at the error level log for other thread received message from main thread"); String msgObj = "message from mainThread"; Message mainThreadMsg = mOtherThreadHandler.obtainMessage(1, 1, 1, msgObj); mOtherThreadHandler.sendMessage(mainThreadMsg); } break; case R.id.b106: finish(); break; } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.handler_test, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } } ``` NoLooperThread.java ``` package com.mytest.handlertest; import android.content.Context; import android.os.Looper; import android.os.Message; import android.util.Log; import android.widget.TextView; import android.widget.Toast; class NoLooperThread extends Thread{ private Context context; private TextView tv; private boolean postRunnable; private EventHandler mNoLooperThreadHandler; public NoLooperThread(Context context) { this.context=context; } public void run() { Looper myLooper, mainLooper; myLooper = Looper.myLooper(); mainLooper = Looper.getMainLooper(); //这是一个static函数 String obj; if(myLooper == null){ mNoLooperThreadHandler = new EventHandler(context,mainLooper); obj = "NoLooperThread has no looper and handleMessage function executed in main thread!"; } else { mNoLooperThreadHandler = new EventHandler(context,myLooper); obj = "This is from NoLooperThread self and handleMessage function executed in NoLooperThread!"; } //Toast.makeText(context, obj, Toast.LENGTH_SHORT).show(); mNoLooperThreadHandler.removeMessages(0); if(false == postRunnable){ //send message to main thread Message m = mNoLooperThreadHandler.obtainMessage(2, 1, 1, obj); mNoLooperThreadHandler.sendMessage(m); Log.e("NoLooperThread", "NoLooperThread id:" + this.getId()); }else{ //下面new出来的实现了Runnable接口的对象中run函数是在Main Thread中执行,不是在NoLooperThread中执行 //注意Runnable是一个接口,它里面的run函数被执行时不会再新建一个线程 //您可以在run上加断点然后在eclipse调试中看它在哪个线程中执行 mNoLooperThreadHandler.post(new Runnable(){ @Override public void run() { Log.e("NoLooperThread","update UI through handler post runnalbe mechanism!"); // noLooerThread.stop(); } }); } } } ``` OwnLooperThread.java ``` package com.mytest.handlertest; import android.content.Context; import android.os.Looper; import android.os.Message; import android.widget.Toast; class OwnLooperThread extends Thread{ private Context context; private EventHandler mOwnLooperThreadHandler; public OwnLooperThread(Context context) { this.context=context; } public void run() { Looper.prepare(); Looper myLooper, mainLooper; myLooper = Looper.myLooper(); mainLooper = Looper.getMainLooper(); //这是一个static函数 String obj; if(myLooper == null){ mOwnLooperThreadHandler = new EventHandler(context,mainLooper); obj = "OwnLooperThread has no looper and handleMessage function executed in main thread!"; } else { mOwnLooperThreadHandler = new EventHandler(context,myLooper); obj = "This is from OwnLooperThread self and handleMessage function executed in NoLooperThread!"; } //Toast.makeText(context, obj, Toast.LENGTH_SHORT).show(); mOwnLooperThreadHandler.removeMessages(0); //给自己发送消息 Message m = mOwnLooperThreadHandler.obtainMessage(3, 1, 1, obj); mOwnLooperThreadHandler.sendMessage(m); Looper.loop(); } } ``` ReceiveMessageThread.java ``` package com.mytest.handlertest; import android.content.Context; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.util.Log; import android.widget.Toast; class ReceiveMessageThread extends Thread{ private Handler mOtherThreadHandler; private Context context; public ReceiveMessageThread(Context context) { this.context=context; } public void run() { Looper.prepare(); mOtherThreadHandler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); Log.e("ReceiveMessageThread", (String)msg.obj); Log.e("ReceiveMessageThread","当前线程id:----+>"+Thread.currentThread().getId()); // Toast.makeText(context, "当前线程id:----+>"+Thread.currentThread().getId(), Toast.LENGTH_SHORT).show(); } }; Looper.loop(); } } ```

使用 eclipse 怎样为工程中的所有类的所有方法设置断点??

使用 eclipse 怎样为工程中的所有类的所有方法设置断点??

Spring-data-redis的RedisTemplate @Autowared注入为空

## 最近在学习Spring整合redis,配置了一个项目启动时报错,请各位大神看一下,谢谢啦: --- 20-Mar-2017 15:33:12.293 INFO [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath 20-Mar-2017 15:33:12.324 INFO [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext 20-Mar-2017 15:33:18.281 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redisUserDAO' defined in file [/home/ob/Projects/im-system/im-server/build/libs/exploded/im-service-1.0.0.war/WEB-INF/classes/com/xxx/im/dao/redis/RedisUserDAO.class]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.xxx.im.dao.redis.RedisUserDAO]: Constructor threw exception; nested exception is java.lang.NullPointerException at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1116) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1060) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:759) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:866) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542) at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4717) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5179) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734) at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1702) 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.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:456) at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:405) ... Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.xxx.im.dao.redis.RedisUserDAO]: Constructor threw exception; nested exception is java.lang.NullPointerException at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:154) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1108) ... 58 more Caused by: java.lang.NullPointerException at com.xxx.im.dao.redis.RedisBaseDAO.getKeySerializer(RedisBaseDAO.java:28) at com.xxx.im.dao.redis.RedisUserDAO.<init>(RedisUserDAO.java:20) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142) ... 60 more --- ## spring配置: 1. spring-config.xml ``` <?xml version="1.0" encoding="UTF-8"?> <!-- applicationContext --> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <aop:aspectj-autoproxy/> <!-- 配置文件注入 --> <context:property-placeholder location="classpath:config.properties"/> <context:component-scan base-package="com.xxx.im"/> <bean class="com.xxx.im.util.SpringUtils"/> <import resource="classpath:spring-config-*.xml"/> </beans> ``` 2. spring-config-redis ``` <?xml version="1.0" encoding="utf-8" ?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"> <property name="maxTotal" value="${jedis.maxTotal}"/> <property name="maxIdle" value="${jedis.maxIdle}"/> <property name="minIdle" value="${jedis.minIdle}"/> <property name="maxWaitMillis" value="${jedis.maxWaitMillis}"/> <property name="minEvictableIdleTimeMillis" value="${jedis.minEvictableIdleTimeMillis}"/> <property name="numTestsPerEvictionRun" value="${jedis.numTestsPerEvictionRun}"/> <property name="timeBetweenEvictionRunsMillis" value="${jedis.timeBetweenEvictionRunsMillis}"/> <property name="testOnBorrow" value="${jedis.testOnBorrow}"/> <property name="testOnReturn" value="${jedis.testOnReturn}"/> <property name="testWhileIdle" value="${jedis.testWhileIdle}"/> </bean> <bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" destroy-method="destroy"> <property name="hostName" value="${redis.hostname}"/> <property name="port" value="${redis.port}"/> <property name="timeout" value="${redis.timeout}"/> <property name="database" value="${redis.database}"/> <property name="password" value="${redis.password}"/> <property name="usePool" value="${redis.userPool}"/> <property name="poolConfig" ref="jedisPoolConfig"/> </bean> <bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate" p:connection-factory-ref="connectionFactory"/> <bean id="stringRedisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate" p:connection-factory-ref="connectionFactory"/> </beans> ``` 3. 调用出错代码 ``` package com.mzj.im.dao.redis; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.ListOperations; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.RedisSerializer; import javax.annotation.Resource; /** * Created by xx on 17-3-17. */ public abstract class RedisBaseDAO <K, V> { @Autowired protected RedisTemplate<K, V> redisTemplate; public void setRedisTemplate(RedisTemplate<K, V> redisTemplate) { this.redisTemplate = redisTemplate; } protected RedisSerializer<K> getKeySerializer(){ return (RedisSerializer<K>) redisTemplate.getKeySerializer(); } protected RedisSerializer<V> getValueSerializer(){ return (RedisSerializer<V>) redisTemplate.getValueSerializer(); } } ``` 4. 断点调试 ![图片说明](https://img-ask.csdn.net/upload/201703/20/1489997260_384518.png)

在Windows中使用Godebug调试Golang项目

<div class="post-text" itemprop="text"> <p>I am trying use godebug to debug golang program. I am using windows. These are the steps I have followed.</p> <ol> <li><p>Install godebug using command prompt.</p> <p>go get -u github.com/mailgun/godebug</p></li> <li><p>Added a breakpoint in the middle of main.go</p> <p>_ = "breakpoint"</p></li> <li><p>Run godebug using command prompt</p> <p>godebug run main.go</p></li> </ol> <p>On my third step, I get error below. I have closed and reopen my command prompt after installing godebug.</p> <p>'godebug' is not recognized as an internal or external command, operable program or batch file.</p> <p>Can anyone help he if I missed any steps in this. </p> <p>Thanks!</p> </div>

struts2源码调试问题

<p>我在myeclipse中新建了一个web工程测试struts2,把下载的struts2-core.jar的相关java源码加入到类路径中,目的是为工程中直接使用源码编译成的struts2-core.jar中的类,工程就不依赖lib库中的struts2-core.jar了。但我在struts2的相关java文件中打断点调试时,断点进入的地方并不是该java文件,而是其他工程中依赖的struts2-core.jar中的class,让我“Attach Source...”。我把有关struts2-core.jar的工程全部close掉,就可以正常debug到java文件里,这个现象一直未解决,还请大家帮忙看看,谢谢</p> <p><br> </p> <p> </p>

eclipse调试时光标并不指向当前执行的那行,开发半年了,第一次碰到这个问题!

eclipse调试时光标并不指向当前执行的那行,比如那绿色光标会指向注释行,有时候会不按逻辑跳转到莫名其妙的一行。开发半年了,第一次碰到这个问题!已经确定不是逻辑问题,编译后的class文件通过反编译查看也没有问题,在project中通过clean再自动编译也没有解决,删除源文件,重新建立文件再编译还是没有解决。这个文件是通过拷贝其他包的class得到的,不知道是不是这里出了问题?因为代码过长,就没有自己手动编辑。 问题补充:在其他包的类下面,光标指示正常。

请教IDEA while循环debug问题

# 想调试一个使用JDBC从数据库读取Blob类型数据的程序,但是试了很多次debug不了其中的while循环 ## 在Servlet实现类的doPost方法中试了一个简单的while循环,发现可以调试 ```java int a=11; int i=0; while (++i<a){ System.out.println(i); } ``` ![图片说明](https://img-ask.csdn.net/upload/201910/02/1570014345_777656.png) ## 代码 ### Servlet doPost ``` String sql = "SELECT * FROM resource WHERE id = ?"; String[] path = new String[1]; path[0] = "F:\\program design\\JavaWeb\\web\\resource\\2.png"; //下面的方法传入数据库连接,接收数据的类,sql语句以及要将数据库中提取的文件放入的路径和sql语句中?的替代 //返回接收数据的类的实例的集合 ArrayList<Datas> arrayList = JDBC.searchBolb(connection, Datas.class, sql, path, 1); PrintWriter writer = response.getWriter(); for (Datas d : arrayList) { writer.println(d); } ``` ### JDBC ```java //重点请看while循环,其他错误只要能调试while循环我自己慢慢找 public static <T> ArrayList<T> searchBolb(Connection connection, Class<T> clazz, String sql, String[] resourcePath, Object... args) { //数据库表中最后一个字段为Blob类型 //输出类中封装Blob资源输出地址 PreparedStatement ps = null; ResultSet result = null; ResultSetMetaData rsmd = null; InputStream is = null; FileOutputStream fos = null; int resourcePathNumber = 0; ArrayList<T> collection = new ArrayList<T>(); try { ps = connection.prepareStatement(sql); for (int i = 0; i < args.length; i++) { ps.setObject(i + 1, args[i]); } result = ps.executeQuery(); rsmd = result.getMetaData(); while (result.next()) { int columnCount = rsmd.getColumnCount(); T t = clazz.getDeclaredConstructor().newInstance(); for (int i = 0; i < columnCount - 1; i++) { Object columnValue = result.getObject(i + 1); String columnLabel = rsmd.getColumnLabel(i + 1); Field field = clazz.getDeclaredField(columnLabel); field.setAccessible(true); field.set(t, columnValue); } Blob blob = result.getBlob(columnCount); String blobLabel = rsmd.getColumnLabel(columnCount); Field field = clazz.getDeclaredField(blobLabel); field.setAccessible(true); field.set(t, resourcePath); is = blob.getBinaryStream(); fos = new FileOutputStream(resourcePath[resourcePathNumber++]); byte[] buffer = new byte[1024]; int len; while ((len = is.read(buffer)) != -1) { fos.write(buffer, 0, len); } collection.add(t); } } catch (SQLException | IOException | NoSuchFieldException | NoSuchMethodException | IllegalAccessException | InstantiationException | InvocationTargetException e) { e.printStackTrace(); } finally { try { ps.close(); is.close(); fos.close(); } catch (SQLException | IOException e) { e.printStackTrace(); } if (collection == null) { System.out.println("Failed to search"); } return collection; } } ```` ![图片说明](https://img-ask.csdn.net/upload/201910/02/1570015047_843639.png) ![图片说明](https://img-ask.csdn.net/upload/201910/02/1570015068_774806.png) <br> 把断点设在144行(while循环第一行),运行到for循环第一行出错(用的f8,不进入方法体)(没有while循环过,这是第一次for循环),这里的错误是结果集关闭,但是显然并没有任何操作使之关闭(我试了另外一个没有问题的方法,报的同样的错误),怀疑是刚开始debug时就已经进行完了while循环,导致结果集关闭 <br> 请问需要把断点设在哪里,或者是怎么样才能解决上述问题?3Q

eclipse命令执行顺序和代码位置没有关系吗?

我写了一个视频录制的程序,想在录制之后打开文件夹选择刚刚录制的视频文件并发送。但是我的代码总是先打开文件夹再录制,为什么呀?应该怎么改?代码如下: Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); startActivity(intent); startActivityForResult(SelectFileActivity.class,Constant.CHAT_ADD_FILE); 前三句话是开启系统摄像头,最后一句话用来选择文件,但是最后一句话总是先执行。

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

C++(数据结构与算法)78:---分而治之

一、分而治之的思想 分而治之方法与软件设计的模块化方法非常相似 分而治之通常不用于解决问题的小实例,而要解决一个问题的大实例。一般步骤为: ①把一个大实例分为两个或多个更小的实例 ②分别解决每个小实例 ③把这些小实例的解组合成原始大实例的解 二、实际应用之找出假币 问题描述 一个袋子有16个硬币,其中只有一个是假币,这个假币比其他的真币重量轻(其他所有真币的重量都是相同的)...

springboot+jwt实现token登陆权限认证

一 前言 此篇文章的内容也是学习不久,终于到周末有时间码一篇文章分享知识追寻者的粉丝们,学完本篇文章,读者将对token类的登陆认证流程有个全面的了解,可以动态搭建自己的登陆认证过程;对小项目而已是个轻量级的认证机制,符合开发需求;更多精彩原创内容关注公主号知识追寻者,读者的肯定,就是对作者的创作的最大支持; 二 jwt实现登陆认证流程 用户使用账号和面发出post请求 服务器接受到请求后使用私...

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

win10暴力查看wifi密码

刚才邻居打了个电话说:喂小灰,你家wifi的密码是多少,我怎么连不上了。 我。。。 我也忘了哎,就找到了一个好办法,分享给大家: 第一种情况:已经连接上的wifi,怎么知道密码? 打开:控制面板\网络和 Internet\网络连接 然后右击wifi连接的无线网卡,选择状态 然后像下图一样: 第二种情况:前提是我不知道啊,但是我以前知道密码。 此时可以利用dos命令了 1、利用netsh wlan...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

程序员写出这样的代码,能不挨骂吗?

当你换槽填坑时,面对一个新的环境。能够快速熟练,上手实现业务需求是关键。但是,哪些因素会影响你快速上手呢?是原有代码写的不够好?还是注释写的不够好?昨夜...

带了6个月的徒弟当了面试官,而身为高级工程师的我天天修Bug......

即将毕业的应届毕业生一枚,现在只拿到了两家offer,但最近听到一些消息,其中一个offer,我这个组据说客户很少,很有可能整组被裁掉。 想问大家: 如果我刚入职这个组就被裁了怎么办呢? 大家都是什么时候知道自己要被裁了的? 面试软技能指导: BQ/Project/Resume 试听内容: 除了刷题,还有哪些技能是拿到offer不可或缺的要素 如何提升面试软实力:简历, 行为面试,沟通能...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

!大部分程序员只会写3年代码

如果世界上都是这种不思进取的软件公司,那别说大部分程序员只会写 3 年代码,恐怕就没有程序员这种职业。

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

早上躺尸,晚上干活:硅谷科技公司这么流行迟到?

硅谷科技公司上班时间OPEN早已不是什么新鲜事,早九晚五是常态,但有很多企业由于不打卡,员工们10点、11点才“姗姗来迟”的情况也屡见不鲜。 这种灵活的考勤制度为人羡慕,甚至近年来,国内某些互联网企业也纷纷效仿。不过,硅谷普遍弹性的上班制度是怎么由来的呢?这种“流行性迟到”真的有那么轻松、悠哉吗? 《动态规划专题班》 课程试听内容: 动态规划的解题要领 动态规划三大类 求最值/计数/可行性 常...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

Python爬虫,高清美图我全都要(彼岸桌面壁纸)

爬取彼岸桌面网站较为简单,用到了requests、lxml、Beautiful Soup4

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

前几天我们公司做了一件蠢事,非常非常愚蠢的事情。我原以为从学校出来之后,除了找工作有测试外,不会有任何与考试有关的事儿。 但是,天有不测风云,公司技术总监、人事总监两位大佬突然降临到我们事业线,叫上我老大,给我们组织了一场别开生面的“考试”。 那是一个风和日丽的下午,我翘着二郎腿,左手端着一杯卡布奇诺,右手抓着我的罗技鼠标,滚动着轮轴,穿梭在头条热点之间。 “淡黄的长裙~蓬松的头发...

立即提问
相关内容推荐