我有一个Java应用程序,显示数据库中的列表.在类的内部是以下代码,用于打开数据输入的新对话框:
@Action
public void addNewEntry() {
JFrame mainFrame = ADLog2App.getApplication().getMainFrame();
addNewDialog = new AddNewView(mainFrame, true);
addNewDialog.setLocationRelativeTo(mainFrame);
addNewDialog.addContainerListener(null);
ADLog2App.getApplication().show(addNewDialog);
}
Run Code Online (Sandbox Code Playgroud)
如何向主类添加侦听器以检测addNewDialog窗口何时关闭,以便我可以调用刷新方法并从数据库中刷新列表.
我正在使用jwt令牌进行身份验证,并希望在客户端读取有效负载信息.现在我正在做这样的事情:
var payload = JSON.parse(window.atob(token.split('.')[1]));
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法在浏览器中使用jwt令牌?
我有一些代码从应用程序中捕获屏幕并将其保存到SD卡并使其在Gallery中可用.问题是当你在画廊中寻找它时,它会用相机图片保存它.我宁愿它保存在下载文件夹下或创建一个特定于应用程序的文件夹(PicSay做这样的事情),其中所有的屏幕截图都可供用户访问.目前,我正在使用以下内容保存到相机库:
MediaStore.Images.Media.insertImage(getContentResolver(), imagePath, fileName, desc);
Run Code Online (Sandbox Code Playgroud)
如何将它保存到除Camera之外的其他位置?
我能够使用socketio-jwt进行身份验证,一切都很顺利.我遇到的问题是,如果我将到期时间设置为最短时间并让它过期,我可以继续发出并接收连接上的消息.只要我不刷新页面,连接就会持续存在.一旦我刷新连接断开连接,我需要重新连接.是否可以让服务器检查过期的令牌并断开连接?
我正在玩多线程,并且在运行一小段代码时遇到了不一致.以下代码应打印出123123 ...但我得到的是
class RunnableDemo implements Runnable {
private String message;
RunnableDemo(String m) {
message = m;
}
public void run() {
try {
for (int i = 0; i < message.length(); i++) {
System.out.print(message.charAt(i));
Thread.sleep(1000);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public class TestThread {
public static void main(String args[]) throws InterruptedException {
new Thread(new RunnableDemo("1111111")).start();
new Thread(new RunnableDemo("2222222")).start();
new Thread(new RunnableDemo("3333333")).start();
}
}
Run Code Online (Sandbox Code Playgroud)
输出:123231231132123231321
输出:123213123123213213213
输出:123231213213231231213
我没有得到的是它在第一次通过时正确运行(打印'123'),然后第二次通过它打印'231'.如果线程正在打印char,则休眠1秒,然后重复.每次运行代码或至少遵循前3个字符的模式时,模式123123不应该是一致的吗?
java ×2
jwt ×2
android ×1
javascript ×1
jdialog ×1
node.js ×1
socket.io ×1
swing ×1
thread-sleep ×1