最详细的ssh框架整合讲解.docx
- 文档编号:3132385
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:34
- 大小:1.20MB
最详细的ssh框架整合讲解.docx
《最详细的ssh框架整合讲解.docx》由会员分享,可在线阅读,更多相关《最详细的ssh框架整合讲解.docx(34页珍藏版)》请在冰豆网上搜索。
最详细的ssh框架整合讲解
最详细的ssh框架整合讲解
基于Myeclipse6.5的SSH框架整合
Mx25184
2012-08-14
1、文章目的
最近整合SSH框架,期间遇到很多问题,中途几次熬夜查找,精神几度崩溃,心想如此好的框架为啥搭建整合的时候确实如此费劲,在网上找了很多解决方案,均不能解决问题。
为了以后让想学SSH的人少走点弯路,故此次将整个完整搭建步骤写出来,供大家分享,希望对大家有所帮助。
2、运行环境
1、jdk-6u1-windows-i586-p
2、MyEclipse_6.5.0GA_E3.3.2_Installer_A
3、apache-tomcat-6.0.13.exe
4、mysql-essential-5.1.53-win32
5、数据库脚本程序
createdatabaseSSH;
createtableuser(
idint(11)notnullauto_increment,
usernamevarchar(50)defaultnull,
passwordvarchar(50)defaultnull,
primarykey(id)
);
insertintouservalues('1','admin','admin');
具体环境搭建基本上就是下载安装,继续流程就不在详细说明了,一般网上都可以查到。
3、创建项目工程
再打开的Myeclipse中,新建Webproject,项目名字我们起名Myssh,J2EESqecificationLevel选择JavaEE5.0,然后点击Finish即可。
4、添加Struts1.2框架支持
接下来我们将添加Struts框架支持,在项目Myssh上面右键,选择Myeclipse>>AddStrutsCapabilities…
在弹出的AddStrutsCapabilities对话框中修改Basepackagefornewclasses中的路径为com.Myss.struts,其他不变,点击finish即可
完成添加后的项目路径结构为:
5、添加spring2.5框架支持
和添加struts框架一样,在项目Myssh上面右键,选择Myeclipse>>AddSpringCapabilities…
在弹出的AddSpringCapabilities对话框中选择Springversion:
Spring2.5
由于Spring采用的最小化发布方式,使得Spring的库文件是分离的,所以我们要选择自己需要添加的库:
选择好点击next,然后修改folder路径为:
WebRoot/WEB-INF点击finish即可
此时项目结构为:
6、配置数据源
在Myeclipse右上角打开MyeclipseDatabaseExplorer数据库管理视图。
在左侧的DBBrowser中右击New打开新建对话框
在DatabaseDriver中,配置内容如下:
选择DriverTemplate为MySQL,然后根据事情情况写URL,这里我们是本机操作,所以写为localhost下的ssh,Username和password根据数据库实际填写。
然后添加数据库驱动程序AddJARs,为了方便我这里选择了保存密码Savepassword。
然后点击finish即可。
7、Spring和hibernate的整合
配置完数据源就可以添加hibernate支持了,切换视图到Myeclipsejavaenterprise下,在Myssh工程上右击,选择Myeclipse>>AddHibernateCapabilities..
这一步我们选择默认即可点击Next
对话框中选择Springconfigurationfile,表示我们希望将Hibernate托管给Spring进行管理,然后点击Next;
在出现的对话框中询问我们是否新建一个Spring配置文件,我们选择:
ExistingSpringconfigurationfile。
因为我们已经添加了Spring的配置文件了,所以我们选择已存在的配置文件即可,Myeclipse自动回查找,然后输入MysessionFactory,点击Next
在对话框中输入Beanid数据源在Spring中的BeanID的名字:
datasource。
然后选择DBDriver里面我们之前配置的Myssh后,Myeclipse会自动完成其他的填写。
点击Next
在对话框中取消创新新的hibernatesessionfactory,点击Finish即可。
Myeclipse自动默认打开Spring配置文件:
applicationContext.xml
此时项目结构:
切换到MyeclipseDatabaseExplorer视图,双击打开数据库连接,找到表user,然后右击表格,选择HibernateReversEngineering..
在对话框中修改Javasrcfolder路径为我们建立的/Myssh/src,然后填写javapackage名称:
com.Myssh.user
选择CreatePOJO,选择javaDataObject,选择JavaDataAccessObject点击Next
在出现的对话框中选择IdGenerator为native,然后点击Finish
此时项目结构为下图所示,其中User.java是myeclipse生成的使用面向对象的java语言对数据库表格进行的抽象,User.hbm.xml是将数据库表格中的字段和POJO类的属性进行映射的定义,UserDAO.java封装了一些Myeclipse自动生成的对数据库的操作。
这是我们修改一下文件目录,新建一个dao包,将DAO类与POJO类分开,然后我们在Struts包下面建立action和form包。
为了将实现与接口进行解耦,我们在dao包下面添加接口,然后创建dao.impl包,将实际的DAO类放在这里,DAO类是直接与数据库打交道的类。
为了对业务逻辑进行封装,我们将业务逻辑全部写在Service类里面,和dao一样,我们建立service包,里面添加业务接口,具体实现放在service.impl里面。
将UserDAO.java移动到dao的Impl包下面,并在dao包下面建立接口IUserDAO:
packagecom.Myssh.dao;
importjava.util.List;
importjavax.xml.registry.infomodel.User;
publicinterfaceIUserDAO{
publicUserfindById(Integerid);
publicListfindByUsername(Objectusername);
publicvoidsave(Useruser);
}
UserDAO是自动生成的,我们可以简单的修改一下。
让UserDAO实现接口IuserDAO,不然在启动Spring的时候会报错。
publicclassUserDAOextendsHibernateDaoSupportimplementsIUserDAO{
privatestaticfinalLoglog=LogFactory.getLog(UserDAO.class);
//propertyconstants
publicstaticfinalStringUSERNAME="username";
publicstaticfinalStringPASSWORD="password";
protectedvoidinitDao(){
//donothing
}
publicvoidsave(Useruser){
log.debug("savingUserinstance");
try{
getHibernateTemplate().save(user);
log.debug("savesuccessful");
}catch(RuntimeExceptionre){
log.error("savefailed",re);
throwre;
}
}
publicvoiddelete(UserpersistentInstance){
log.debug("deletingUserinstance");
try{
getHibernateTemplate().delete(persistentInstance);
log.debug("deletesuccessful");
}catch(RuntimeExceptionre){
log.error("deletefailed",re);
throwre;
}
}
publicUserfindById(java.lang.Integerid){
log.debug("gettingUserinstancewithid:
"+id);
try{
Userinstance=(User)getHibernateTemplate().get(
"com.Myssh.user.User",id);
returninstance;
}catch(RuntimeExceptionre){
log.error("getfailed",re);
throwre;
}
}
publicListfindByExample(Userinstance){
log.debug("findingUserinstancebyexample");
try{
Listresults=getHibernateTemplate().findByExample(instance);
log.debug("findbyexamplesuccessful,resultsize:
"
+results.size());
returnresults;
}catch(RuntimeExceptionre){
log.error("findbyexamplefailed",re);
throwre;
}
}
publicListfindByProperty(StringpropertyName,Objectvalue){
log.debug("findingUserinstancewithproperty:
"+propertyName
+",value:
"+value);
try{
StringqueryString="fromUserasmodelwheremodel."
+propertyName+"=?
";
returngetHibernateT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 详细 ssh 框架 整合 讲解
![提示](https://static.bdocx.com/images/bang_tan.gif)