javassh2
❶ SSH2的工作原理
這個一句話說不清楚,我們做的simplejee這個項目里分別實現了miniMVC,miniORM,miniDI,以及SimpleMVC,或許可以幫助你理解他們的原理。
簡單的說,struts2配置一個Filter後,獲取請求,然後根據路徑信息調用你寫的action類的相應方法,然後根據你的方法返回的結果進行顯示,在調用你的方法前後,還會調用一堆攔截器對你的action做些預處理,幫你省去很多的麻煩。
Hibernate是ORM框架,就是將你對java對象的修改持久化到資料庫中,或則或就是在java對象和資料庫的數據之間建立對應關系。或則說Hibernate就是根據你的配置,將java對象的數據保持到資料庫,以及把資料庫里的數據查詢出來,然後包裝成java對象方便你使用。
而spring主要的有兩個作用DI和AOP。spring提供一個DI容器,幫你管理對象,包括對象的創建,對象之間的依賴關系以及對象的銷毀。而AOP我一句話就說不清楚了,他的目的就是為了解決一些橫跨多個類的統一操作。具體的你慢慢了解吧。
❷ java ganymed-ssh2-build210 requestPTY()方法是幹嘛的
我找到了一篇關於requestPTY()的文章,我自己沒看懂,希望對後來者有用
點擊此鏈接
虛擬終端pty(pseudo-tty)
❸ java問題ssh2 配置問題
你 cn.ssh2.entity 包下的login實體類的主鍵生成策略有問題
❹ java ganymed-ssh2,session 執行多條命令,最好可以在前一條的基礎上,執行下一條。
通過session.requestDumbPTY()和session.startShell()來模擬命令行,在通過io流操作
try {
session = conn.openSession();
session.requestDumbPTY();
session.startShell();
stdout = session.getStdout();
stderr = session.getStderr();
stdin = session.getStdin();
} catch (IOException e) {
e.printStackTrace();
}
io流操作
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(stdin));
bw.write(command + "\n\r");
bw.flush();
while (true) {
if ((stdout.available() == 0) && (stderr.available() == 0)) {
int conditions = session.waitForCondition(ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA
| ChannelCondition.EOF, 2000);
if ((conditions & ChannelCondition.EOF) != 0) {
if ((conditions & (ChannelCondition.STDOUT_DATA | ChannelCondition.STDERR_DATA)) == 0) {
break;
}
}
}
BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
while (true) {
String answer = br.readLine();
if (answer != null) {
Log.i("socket", "message call: " + answer);
} else {
break;
}
}
BufferedReader brErr = new BufferedReader(new InputStreamReader(stderr));
while (true) {
String answer = brErr.readLine();
if (answer != null) {
Log.i("socket", "execute: answer error = " + answer);
} else {
break;
}
}
}
❺ JAVA怎麼在SSH2代碼寫一個自己的地址,用來讓別人進行訪問這個介面的。
你搜易 webservice 教程 吧。
你寫一個webservice,裡麵包含介面,別人就可以調用了。
webService 分好幾種,你可以看看。
❻ ssh2執行遠程命令查詢which java異常
編譯的時候 javac ExceptionTest.java
通過
執行是 用
java ExceptionTest a aa a
我剛才試過了
列印
C:\>java ExceptionTest
請你執行其它命令
C:\>java ExceptionTest a aa a
aaaa
這是因為你的參數個數不夠的關系
java ExceptionTest 後面要代3個參數 否則會拋除異常
你用
catch(Exception e){
System.out.print("請你執行其它命令");
}
接住異常後 列印 "請你執行其它命令"
❼ 請問javaweb的SSH2框架,如何實現共通登錄的前台模型選擇。用JS來實現嗎
你的這個功能已經實現了啊,頁面上不需要做其他的了
只需要在你的doLogin.action中進行判斷,
如用戶選擇的admInf.ATYPE是0,你就查用戶表,如果是1或2就查管理員表,沒什麼區別啊,不用JS了
❽ 關於java ssh2,在DAO中使用了query.setParameter()之後是否還存在被SQL注入的風險
雖然不見得有注入風險
但是頁面應該有相應的數據合法性的檢查
❾ ssh2框架內用常規的java定時器定時查詢資料庫,會出現tomcat內存溢出的情況,應該如何解決
tomcat啟動後,spring容器初始化已經完成,你就可以直接調用相關,沒必要每次都手動去初始化spring容器,建議WarnDao在bean.xml中配置好注入,在該類里注入就行,run()里調用同一個實例,你最基本的代碼性能都沒考慮,這樣玩任何語言也會有問題,定時插入數據不建議這樣做,這樣做很低效,你可以把需要插入的數據做一個緩存,然後滿了多少條之後做一次性插入,這樣性能比上述代碼思想提升10倍