我需要使用sshj库通过ssh在远程服务器上执行一些命令序列.
我做
Session session = ssh.startSession();
Session.Command cmd = session.exec("ls -l");
System.out.println(IOUtils.readFully(cmd.getInputStream()).toString());
cmd.join(10, TimeUnit.SECONDS);
Session.Command cmd2 = session.exec("ls -a");
System.out.println(IOUtils.readFully(cmd2.getInputStream()).toString());
Run Code Online (Sandbox Code Playgroud)
它抛出了我
net.schmizz.sshj.common.SSHRuntimeException:此会话通道全部用完
但我不能为每个命令重新创建会话,因为这个例子它将显示主目录列表,但不显示/ some/dir列表.
我在简单的应用程序中使用jetty6作为嵌入式servlet容器.我决定将它更新到Jetty 8.在jetty 6中启动服务器非常简单:
Server server = new Server(8080);
Context context = new Context(server, "/", Context.SESSIONS);
context.addServlet(MyServlet.class, "/communication-service");
server.start();
Run Code Online (Sandbox Code Playgroud)
但它在Jetty8中不起作用.不幸的是,我找不到这个版本的任何简单示例.无法实例化具有错误的Context
an enclosing instance that contains
org.eclipse.jetty.server.handler.ContextHandler.Context is required
Run Code Online (Sandbox Code Playgroud)
因为现在它是一个内部类,也没有这样的构造函数.
大多数例子都是针对jetty 6和7.你能提供一个简单的例子来说明如何在jetty 8上启动servlet吗?
我正在尝试使用JNA模拟鼠标在窗口上的单击。
public class App {
public static final int WM_LBUTTONUP = 514;
public static final int WM_LBUTTONDOWN = 513;
public static final int WM_LBUTTONDBLCLK = 0x203;
static int WM_CLOSE = 0x10;
final static String winTitle = "Untitled - Notepad";
public static void main(String[] args) throws InterruptedException {
User32Extra user32 = (User32Extra) Native.loadLibrary("user32", User32Extra.class, W32APIOptions.DEFAULT_OPTIONS);
WinDef.HWND hwnd = user32.FindWindow(null, winTitle);
user32.SetForegroundWindow(hwnd);
Thread.sleep(1000);
long y = 77 + (22 << 16);//x + (y << 16)
WinDef.LPARAM l = new WinDef.LPARAM(y);
WinDef.WPARAM w …Run Code Online (Sandbox Code Playgroud) 我们有一些自定义类型反映到多个数据库字段.例如
PersonName{
String salutation,
String firstName,
String lastName
}
Run Code Online (Sandbox Code Playgroud)
存储为3个单独的数据库字段.永远写作总是很无聊
db.select(PERSON.FIRST_NAME, PERSON.LAST_NAME, PERSON.SALUTATION, ... some other fields)
Run Code Online (Sandbox Code Playgroud)
然后获取记录并从相应的记录字段创建PersonName类型.
我们的想法是定义一些多列自定义字段PERSON_NAME,在查询执行期间将由jooq扩展为三个"真实"字段,并打包到PersonName结果中的一个对象.
看起来有可能做这样的事情org.jooq.impl.AbstractField,但我想知道,可能已经有这种情况的解决方案了.