struts,hibernate,spring集成开发示例一个网站登录的例子。工具:jdk1.5、eclipse3.2、myeclipse5.0GA、mysql5.0及其JDBC驱动、tomcat5.5下面是具体操作步骤:预备工作:1、用mysql创建一个test数据库,再创建一个user表,再创建两个字段username和password。脚本如下DROPDATABASEIFEXISTS`test`;CREATEDATABASE`test`USE`test`;CREATETABLE`user`(`id`int(11)NOTNULLauto_increment,`username`varchar(30)NOTNULLdefault'',`password`varchar(30)default'',PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=gb2312;在表中输入一条记录供测试用:username=admin,password=1234562、打开myeclipse的databaseexplore透视图右键单击左侧的空白区域,点击new按钮单击“configuredatabasedriver”来配置数据库的驱动。完成以后,做如下操作:测试数据库配置是否成功。准备工作完毕。1.新建一个myeclipse的web项目testSpring2.引入Spring包右键项目名:注意:这里为了省得以后再添加spring的相关包,所以一次性的选中了所有的包。选中Copy选项,它会把这些包拷贝到/WebRoot/WEB-INF/lib目录下,方便以后的实际部署。其余选下一步,完成。3.添加hibernate包注:系统会检测到该工程已经添加了Spring包,选择使用Spring的配置文件点击next点击next点击next最后点击Finish按钮即可。4、切换到databaseexplore视图,右键点击user表的“HibrnateReverseEngineering”弹出如下窗口点击“next”再单击finish。在包视图中可以看到src下多了一个名为vo的package以及该包下的四个文件为了更加直观地显示分层,另建一个名为dao的package,并把UserDAO.java移到dao中同时注意在applicationContext.xml中把对UserDAO的引用部分也作相应修改。另外,在自动生成的映射文件中,把classname=vo.Usertable=usercatalog=test这行的catalog=”test”删除,否则会出现sql异常。5、建立业务逻辑层代码新建一个名为service的包,再在里面建立一个Service类,代码如下packageservice;importjava.util.List;importvo.User;importdao.UserDAO;publicclassService{privateUserDAOuserDao;publicUserDAOgetUserDao(){returnuserDao;}publicvoidsetUserDao(UserDAOuserDao){this.userDao=userDao;}publicbooleanisValid(Useruser){//判断用户是否合法Listresult=userDao.findByExample(user);if(result.size()0)returntrue;elsereturnfalse;}}同时在applicationContext.xml中添加如下配置beanid=serviceclass=service.Servicesingleton=falsepropertyname=userDaorefbean=UserDAO//property/bean6.配置UI层添加struts包,方法同添加spring一样配置struts-config.xml文件,在空白区域右键单击new一个action,actionForm,jsp下一步,在出现的画面中,对forward作设置:增加succeed转到welcome.jsp,fail转到login.jsp在WebRoot目录下建立一个welcome.jsp文件,显示用户登录成功后的欢迎信息。7、把struts和spring连接起来7.1、修改struts-config.xml,注意红色字体部分:actionattribute=loginForminput=/login.jspname=loginFormpath=/loginscope=requesttype=org.springframework.web.struts.DelegatingActionProxyforwardname=failpath=/login.jsp/forwardname=succeedpath=/welcome.jsp//action再在strut-config.xml中添加如下代码:plug-inclassName=org.springframework.web.struts.ContextLoaderPlugInset-propertyproperty=contextConfigLocationvalue=/WEB-INF/classes/applicationContext.xml//plug-in7.2、修改applicationContext,增加以下内容:beanname=/loginclass=web.action.LoginActionsingleton=falsepropertyname=servicerefbean=service//property/bean7.3、修改LoginAction.java部分代码,增加一个service变量,以及其get/set方法(主要用于SpringIOC)。代码如下:packageweb.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;importweb.form.LoginForm;importservice.Service;importvo.User;publicclassLoginActionextendsAction{privateServiceservice;publicvoidsetService(Serviceservice){this.service=service;}publicServicegetService(){returnservice;}publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){LoginFormloginForm=(LoginForm)form;//TODOAuto-generatedmethod//stubUseruser=newUser();user.setPassword(loginForm.getPassword());user.setUsername(loginForm.getUserName());if(service.isValid(user))returnmapping.findForward(succeed);elsereturnmapping.findForward(fail);}}7.4、找一个log4j.properties文件放在项目的src目录下8、至此一个简单的登录已经做成。剩下的工作就是部署你的应用到Tomcat5.5上,然后访问login.jsp,输入admin和123456,看看会发生什么