java刘保_[SSH] Eclipse+Struts2的简单应用
終于要開始研究框架了,沒有大神的指導,只能自己上網摸索著來,沒有唯一對的方案,只能找到最適合自己的就可以了。
首先整理一下,代碼是參考別人的代碼,按照別人的版本有問題,大概整理了一下,自己重新弄了一個,注意下標紅的部分,每個人碰到的問題可能不一樣,這次的環境(基本都是當前最新的,64位,如果有需要的可以留言):
Eclispe:eclipse-jee-mars-R-win32-x86_64 (J2EE)
Tomcat:apache-tomcat-8.0.24-windows-x64
Structs:struts-2.3.24-apps.zip (因為里面會有空的blank例子,包肯定是正確的)
完成的功能:映射顯示jsp頁面,validation驗證。
1.首先要確保自己的JDK、和Tomcat配置正確,這里就不一一敘述了。
2.Eclipse里面File-> New-> Dynamic Web Progect (基本都選擇默認的就可以了),本例子的名字為SSHProject (之后會繼續整合Spring和Hibernate)
3.拷貝相應的包
3.1解壓打開struts-2.3.24-apps.zip ?里面app下面的 struts2-blank.war (打開war的方法,可以再相同工作目錄下,建立一個rar,雙擊rar,然后如圖示點擊向上,就可以顯示war,雙擊解壓即可)
? ? ? ?
3.2 把blank中 WEB-INF中lib下面的包 都拷貝到 新建工程的 WEB-INF的lib中(不要多拷貝,也不要少拷貝)
3.3 打開blank.app.WEB-INF 下面的web.xml 將其中的Filter部分拷貝到工程對應的web.xml中
4.建立工程代碼
4.1 struts.xml
(注意拼寫和大小寫,要在Java Resources下的 src下面 )
寫出具體jsp的映射(先看代碼,讀完后面的可以再返回來理解)
/p>
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
/Register.jsp
/success.jsp
/fail.jsp
4.2 其他包的相應的代碼:
RegisterAction.java:
packagecom.tiny.ssh.action;importcom.opensymphony.xwork2.ActionSupport;importcom.tiny.ssh.beans.UserForm;importcom.tiny.ssh.service.UserManager;importcom.tiny.ssh.serviceImp.UserManagerImpl;public class RegisterAction extendsActionSupport {private static final long serialVersionUID = 1L;privateUserForm user;privateUserManager userManager;publicUserForm getUser() {returnuser;
}public voidsetUser(UserForm user) {this.user =user;
}publicUserManager getUserManager() {returnuserManager;
}public voidsetUserManager(UserManager userManager) {this.userManager =userManager;
}publicString execute() {try{this.setUserManager(newUserManagerImpl());
userManager.regUser(user);returnSUCCESS;
}catch(Exception e) {
e.printStackTrace();returnERROR;
}
}
}
RegisterAction-validation.xml(上一個的驗證,固定名字 [Action-Name]-validation,注意上面的頭部代碼,會因為版本的問題出現錯誤,選擇其中好使的一個):
以前param的name都為expression struts2 2.3.x這個版本不好使了 要改為regex 可以自行查閱文檔。
/p>
"-//Apache Struts//XWork Validator 1.0.2//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
true
用戶名不能為空
用戶名輸入不合法,必須為長度在6~16中間的數字或字母
true
密碼不能為空
密碼輸入不合法,必須為長度在6~16之間的數字或者字母
UserForm.java:
packagecom.tiny.ssh.beans;public classUserForm {privateString username;privateString password;private intgender;publicString getUsername() {returnusername;
}public voidsetUsername(String username) {this.username =username;
}publicString getPassword() {returnpassword;
}public voidsetPassword(String password) {this.password =password;
}public intgetGender() {returngender;
}public void setGender(intgender) {this.gender =gender;
}
}
UserManager.java:
packagecom.tiny.ssh.service;importcom.tiny.ssh.beans.UserForm;public interfaceUserManager {public voidregUser(UserForm user);
}
UserManagerImpl.java:
packagecom.tiny.ssh.serviceImp;importcom.tiny.ssh.beans.UserForm;importcom.tiny.ssh.service.UserManager;public class UserManagerImpl implementsUserManager {
@Overridepublic voidregUser(UserForm user) {
}
}
Register.jsp
User Register Pagesuccess.jsp 只是顯示了Success一句話。
最終的層次圖如下:
5.建立新的Tomcat服務器,網址輸入http://localhost:8080/SSHProject即可
(別忘了改在web.xml的歡迎界面,本例子改為Register.jsp)
結果圖:
6.總結
Struts是當今Java比較流行的三大框架之一,三大框架是Struts,spring,hibernate。
Struts框架包括Struts1和Struts2,由于兩個版本相差比較大,Struts1已經被淘汰,現在企業基本上全部都用Struts2,本例子使用的就是Struts2。
該框架的作用,可以理解為將用戶和訪問的JSP解耦,交給Action來做,struts.xml中配置相應的映射關系,通過映射找到對應的jsp頁面。
下面的圖利于理解:
希望讀者好好體會,以便于應用。
參考鏈接:
http://blog.csdn.net/yeohcooller/article/details/9316923
http://bbs.csdn.net/topics/390755826
http://blog.163.com/sean_zwx/blog/static/169032755201091595558378/
總結
以上是生活随笔為你收集整理的java刘保_[SSH] Eclipse+Struts2的简单应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2018-1-27:内存的划分
- 下一篇: java 生成msg文件_java –