MyEclipseStruts+Spring+Hibernate入门实.docx

上传人:b****5 文档编号:7647164 上传时间:2023-01-25 格式:DOCX 页数:20 大小:223.71KB
下载 相关 举报
MyEclipseStruts+Spring+Hibernate入门实.docx_第1页
第1页 / 共20页
MyEclipseStruts+Spring+Hibernate入门实.docx_第2页
第2页 / 共20页
MyEclipseStruts+Spring+Hibernate入门实.docx_第3页
第3页 / 共20页
MyEclipseStruts+Spring+Hibernate入门实.docx_第4页
第4页 / 共20页
MyEclipseStruts+Spring+Hibernate入门实.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

MyEclipseStruts+Spring+Hibernate入门实.docx

《MyEclipseStruts+Spring+Hibernate入门实.docx》由会员分享,可在线阅读,更多相关《MyEclipseStruts+Spring+Hibernate入门实.docx(20页珍藏版)》请在冰豆网上搜索。

MyEclipseStruts+Spring+Hibernate入门实.docx

MyEclipseStruts+Spring+Hibernate入门实

MyEclipse开发SSH(Struts+Spring+Hibernate)入门实例

1.准备

工具:

MyEclipse6.0.1GA、mysql-connector-java-5.0.4-bin.jar、MySqlGUITools5.0(便于管理MySql数据库,不是必须)

环境:

Tomcat5.5、MySql5.0

1.1.新建工程

操作:

[Menu]File/New/WebProject

工程名:

login

2.Struts部分

2.1.添加Struts功能支持

操作:

[Menu]MyEclipse/ProjectCapabilities/AddStrutsCapabilities

2.2.创建ActionForm类

操作:

[Ctrl+N]MyEclipse/Web-Struts/Struts1.2Form

类名:

LoginForm

在“FormProperties”选项卡为loginForm新增两个属性:

username、password;

在“JSP”选项卡钩选“CreateJSPform”选项,将新建路径改为“/login.jsp”(login.jsp文件将被自动创建)。

2.3.创建Action类

操作:

[Ctrl+N]MyEclipse/Web-Struts/Struts1.2Action

类名:

LoginAction

在“Form”选项卡的“Name”项选择“loginForm”,”InputSource”项输入“/login.jsp”。

2.4.创建index.jsp文件

如果没有,创建index.jsp文件,并添加一个指向login.jsp的链接:

Login。

2.5.创建Forword类

操作:

[Ctrl+N]MyEclipse/Web-Struts/Struts1.2Forword

类名:

indexForword

“Name”项输入“indexForword”,”Path”项输入“/index.jsp”。

2.6.修改LoginAction.java文件

修改LoginAction类的execute方法:

publicclassLoginActionextendsAction{

publicActionForwardexecute(ActionMappingmapping,ActionFormform,

HttpServletRequestrequest,HttpServletResponseresponse){

LoginFormloginForm=(LoginForm)form;

Stringusername=loginForm.getUsername();

Stringpassword=loginForm.getPassword();

if(username.equals(”test”)||password.equals(”test”)){

returnmapping.findForward(”indexForword”);

}else{

returnmapping.getInputForward();

}

}

}

2.7.修改login.jsp文件

修改

form>标签:

formaction=”/login”>。

2.8.测试

操作:

[Menu]Run/Run,选择MyEclipseServerApplication方式运行

(要正常执行Run操作,需先安装Tomcat5.5。

点击index.jsp页面的“Login”链接,跳转到login.jsp页面。

在login.jsp页面输入“test/test”,应该会登录成功,然后跳转到index.jsp页面;输入“test/123″,应该保持在login.jsp页面。

如果测试成功,证明Structs运行正常。

3.Spring部分

3.1.添加Spring功能支持

操作:

[Menu]MyEclipse/ProjectCapabilities/AddSpringCapabilities

Spring版本(Springversion)选择“Spring1″;

开发包(libraries)选择“Spring1.2AOPLibraries、Spring1.2CoreLibraries、Spring1.2PersistenceCoreLibraries、Spring1.2PersistenceJDBCLibraries”四项;

JARLibraryInstallation选择“copychecked…”,”LibraryFolder”项选择“/WebRoot/WEB-INF/lib”(这样的话所需的类库都将拷贝到项目目录,方便以后的布署)。

点击“下一步(Next)”创建配置文件,修改文件路径(Folder)到“WebRoot/WEB-INF”目录(以便和Struts配置文件一起管理),文件名称为默认的”applicationContext.xml”。

点击“完成(Finish)”。

3.2.配置struts-config.xml文件

添加Spring插件(在标签后面添加):

修改LoginAction的配置(只需修改type属性):

attribute=”loginForm”

input=”/login.jsp”

name=”loginForm”

path=”/login”

scope=”request”

type=”org.springframework.web.struts.DelegatingActionProxy”/>

绿色字体部份为被修改过的内容,这里将使用spring的代理器DelegatingActionProxy来对Action进行控制。

3.3.修改Spring配置文件applicationContext.xml

xmlversion=”1.0″encoding=”UTF-8″?

>

DOCTYPEbeansPUBLIC“-//SPRING//DTDBEAN//EN”“http:

//www.springframework.org/dtd/spring-beans.dtd”>

绿色字体是关于接受和处理Action控制权的配置内容,”com.login.struts.action.LoginAction”即为原struts里的配置。

3.4.测试

同上一次测试。

测试成功证明Spring运行正常。

4.Hibernate部分

下面开始Hibernate部分,将原例修改为使用数据库进行用户名/密码验证。

4.1.创建mysql数据库和表

添加表的代码如下:

CREATETABLEuser_table(

IDintNOTNULLauto_increment,

USERNAMEvarchar(45)NOTNULLdefault”,

PASSWORDvarchar(45)NOTNULLdefault”,

PRIMARYKEY(ID)

再添加一条记录:

insertintouser_table(USERNAME,PASSWORD)values(’test’,'test’)

4.2.创建MyEclipse数据库驱动(DBDriver)

操作:

[Menu]MyEclipse/Prefrences/MyEclipse/DatabaseExplorer/DatabaseDriver/DBBrower

在DBBrower的菜单中选择“New”,”DriverName”项输入“login-conn”,”ConnectionURL”项输入“jdbc:

mysql:

//localhost:

3306/test”,然后输入正确的用户名(UserName)和密码(Password)按实际情况输入;

在“DriverJARs”项添加“mysql-connector-java-5.0.4-bin.jar”(可从网上下载),在“Driverclassname”里选择“com.mysql.jdbc.Driver”,其它自选。

点击“完成(Finish)”。

4.3.添加Hibernate功能支持

操作:

[Menu]MyEclipse/ProjectCapabilities/AddHibernateCapabilities

Hibernate版本(HibernateSpecification)选择“Hibernate3.1″,开发包(libraries)选择Hibernate3.1CoreLibraries一项;

JARLibraryInstallation选择“copychecked…”,”LibraryFolder”选择“/WebRoot/WEB-INF/lib”。

点击“下一步(Next)”设置配置文件,选择“Springconfigurationfile(applicationContext.xml)”。

“下一步(Next)”设置Spring-Hibernate,选择“ExistingSpringconfigurationfile”,”SessionFactoryID”项输入“sessionFactory”。

“下一步(Next)”创建数据源对象,在BeanId中输入dataSource,”DataSource”项选择“UseJDBCDirver”,DBDriver项选择“login-conn”,其余项会自动填充;

记得选中“CopyDBdriverjar(s)toprojectandaddtobuidpath”项,以便将数据连接的库文件复制到项目,方便以后的布署。

“下一步(Next)”创建SessionFactory类,”Javapackage”项设置为“com.login.Hibernate”(没有则点击”New”按钮添加),”Classname”项修改为”SessionFactory”,JavaComplianceLevel选择和创建项目时选择的Java版本。

(本例中并没有用到SessionFactory类,留作今后扩展)

点击“完成(Finish)”。

4.4.创建对象关系映射(ORM)的相关文件

操作:

[Menu]Window/OpenPerspective/MyEclipseDatabaseExplorer

选中user_table表,点击右键,在出现的菜单中选择“HibernateReverseEngnieering”。

在弹出的窗口中保持“Javapackage”项为“com.login”;

选中“Hibernatemappingfile(*.hbm.xml)foreachdatabasestable”,并保持“Updatehibernate…”项选中;

选中“JavaDataObject”项,并保持“Createabstractclass”选中;

“Basepersistentclass”项留空;

取消“JavaDataAccessObject…”项和“Usecustomtemplates”项。

点击“下一步(Next)”,再点击“下一步(Next)”,在“Configurereverseengineeringdetails”页选中“user_table”表,在右边出现的“ClassName”项中输入“com.login.User”,其它不变。

点击“完成(Finish)”。

完成此操作,会在“com.login”包下创建三个文件:

AbstractUser.java、User.java、User.hbm.xml。

4.5.创建UserDAO.java接口和UserDAOImpl.java类

UserDAO和UserDAOImpl通过Hibernate访问数据库。

UseDAO.java内容如下:

packagecom.login;

publicinterfaceUserDAO{

publicabstractbooleanisValidUser(Stringusername,Stringpassword);

}

UserDAOImpl.java内容如下:

packagecom.login;

importjava.util.List;

importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;

publicclassUserDAOImplextendsHibernateDaoSupportimplementsUserDAO{

privatestaticStringhql=“fromUseruwhereu.username=?

“;

publicbooleanisValidUser(Stringusername,Stringpassword){

//验证用户

ListuserList=this.getHibernateTemplate().find(hql,username);

if(userList.size()>0){

returntrue;

}

returnfalse;

}

}

4.6.修改LoginAction.java文件

使用UseDAO对象来验证:

packagecom.login.struts.action;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importorg.apache.struts.action.Action;

importorg.apache.struts.action.ActionForm;

importorg.apache.struts.action.ActionForward;

importorg.apache.struts.action.ActionMapping;

importcom.login.struts.form.LoginForm;

importcom.login.UserDAO;

publicclassLoginActionextendsAction{

privateUserDAOuserDAO;

publicUserDAOgetUserDAO(){

returnuserDAO;

}

publicvoidsetUserDAO(UserDAOuserDAO){

this.userDAO=userDAO;

}

publicActionForwardexecute(ActionMappingmapping,ActionFormform,

HttpServletRequestrequest,HttpServletResponseresponse){

LoginFormloginForm=(LoginForm)form;

Stringusername=loginForm.getUsername();

Stringpassword=loginForm.getPassword();

if(userDAO.isValidUser(username,password)){

returnmapping.findForward(“indexForword”);

}else{

returnmapping.getInputForward();

}

}

}

绿色字体为修改部分。

4.7.Spring的最终配制文件applicationContext.xml

xmlversion=”1.0″encoding=”UTF-8″?

>

DOCTYPEbeansPUBLIC“-//SPRING//DTDBEAN//EN”“http:

//www.springframework.org/dtd/spring-beans.dtd”>

class=”mons.dbcp.BasicDataSource”>

mysql:

//localhost:

3306/test”>

–配置sessionFactory,注意这里引入的包的不同–>

com/login/User.hbm.xml

org.hibernate.dialect.MySQLDialect

true

PROPAGATION_REQUIRED

PROPAGATION_REQUIRED,readOnly

PROPAGATION_REQUIRED,readOnly

4.8.测试

同第一次测试。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1