日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
使用MyEclipse整合SSH模式:登陸范例

ssh(struts、spring、hibernate)模式就是把三個(gè)框架合理地結(jié)合在一起,以發(fā)揮各自在不同位置上的作用,而如何把他們整合在一起就是關(guān)鍵。其實(shí)把他們整合在一起并不難,但不是任何時(shí)候都需要把他們整合來使用,這要看場(chǎng)合,我們應(yīng)該合理的使用,合適就好。但不管怎么說它都是一種不錯(cuò)的模式,用MyEclipse工具會(huì)很方便地把它們整合在一起。下面簡(jiǎn)單說一下過程:

MyEclipse整合SSH過程概述

1.先加struts包和配置文件??梢允謩?dòng)添加,也可以在myeclipse的myeclipse菜單里面把struts的環(huán)境添加上去,后面的spring會(huì)用到struts的配置文件。

2.添加spring,可以像添加struts一樣把spring的環(huán)境添加上去,不過一定要添加spring的web包??梢园裺pring的配置文件和struts的配置文件一起放在WEN-INF目錄下。

3.添加Hibernate,添加Hibernate的時(shí)候?qū)Υ鼿ibernate的配置文件我們有兩種處理方式:一:按往常一樣新建一個(gè)配置文件,把它放在src目錄下(一般情況);二:無需新建配置文件,而是把Hibernate的配置信息加入到spring的配置文件里面,這種方式需要建立一個(gè)dataSource數(shù)據(jù)庫連接。進(jìn)行ssh整合一般使用第二種方式。

4.把三個(gè)框架都添加上去之后,就需要把他們聯(lián)系起來,下面以一個(gè)登錄的例子說明他們是怎樣配合工作的:

MyEclipse整合SSH登陸范例

1)、首先從前臺(tái)發(fā)送一個(gè)登錄的請(qǐng)求,【如下】:

 
 
 
  1. < body>    
  2. < form action="loginAction.do" method="post">    
  3.       < table border="1">    
  4.     < tr>< td>name:< /td>    
  5.     < td>< input type="text" name="name"/>< /td>< /tr>    
  6.     < tr>< td>password:< /td>    
  7.     < td>< input type="password" name="password"/>< /td>< /tr>    
  8.     < tr>< td colspan="2" align="center">    
  9.          < input type="submit" value="login"/>    
  10.     < input type="reset" value="reset"/>    
  11.     < /td>    
  12.     < /tr>    
  13.       < /table>    
  14. < /form>    
  15. < /body>   

2)、請(qǐng)求被struts截獲,轉(zhuǎn)到struts的配置文件尋找相對(duì)應(yīng)的action【如下】,這時(shí)發(fā)現(xiàn)找到的是一個(gè)代理action,這個(gè)代理action就會(huì)找到用< plug-in>標(biāo)簽注冊(cè)的spring插件,從而找到spring的配置文件。

 
 
 
  1. < action-mappings>    
  2.     < !-- login action -->    
  3.         < action name="loginActionForm" path="/loginAction"    
  4.             scope="request"    
  5.             type="org.springframework.web.struts.DelegatingActionProxy">    
  6.             < forward name="success" path="/success.jsp">< /forward>    
  7.             < forward name="failed" path="/failed.jsp" redirect="true">< /forward>    
  8.         < /action>    
  9.     < /action-mappings>    
  10.         
  11.     < message-resources    
  12.         parameter="com.yourcompany.struts.ApplicationResources" />    
  13.     < plug-in    
  14.         className="org.springframework.web.struts.ContextLoaderPlugIn">    
  15.         < set-property property="contextConfigLocation"    
  16.             value="/WEB-INF/applicationContext.xml" />    
  17.     < /plug-in>   

3)、在spring的配置文件中尋找跟path屬性的名稱相同的action,【如下】。在action調(diào)用了userService類,userService又調(diào)用了userDAO。在userDAO中我們需要做用戶的登錄驗(yàn)證。

 
 
 
  1. < !-- 依賴注入action -->    
  2.     < bean name="/loginAction" class="com.dc.action.LoginAction">    
  3.         < property name="userService" ref="userService">< /property>    
  4.     < /bean>    
  5.         
  6.     < !-- 依賴注入U(xiǎn)serDAO -->    
  7.     < bean id="userDAO" class="com.dc.dao.UserDAOImpl">    
  8.         < property name="sessionFactory" ref="SessionFactory">< /property>    
  9.     < /bean>    
  10.         
  11.     < !-- 依賴注入U(xiǎn)serService -->    
  12.     < bean id="userService" class="com.dc.dao.UserServiceImpl">    
  13.         < property name="dao" ref="userDAO">< /property>    
  14.     < /bean> 

前面說過,Hibernate的配置信息是添加在spring的配置文件里的,在上面的userDAO中引用的sessionFactory就需要用到這些信息【如下】。

 
 
 
  1. < !-- 配置連接數(shù)據(jù)庫和事物管理參數(shù) -->    
  2.     < bean id="dataSource"    
  3.         class="org.apache.commons.dbcp.BasicDataSource">    
  4.         < property name="driverClassName"    
  5.             value="com.mysql.jdbc.Driver">    
  6.         < /property>    
  7.         < property name="url"    
  8.             value="jdbc:mysql://127.0.0.1:3306/test">    
  9.         < /property>    
  10.         < property name="username" value="root">< /property>    
  11.         < property name="password" value="root">< /property>    
  12.     < /bean>    
  13.     < bean id="SessionFactory"    
  14.         class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">    
  15.         < property name="dataSource">    
  16.             < ref bean="dataSource">< /ref>    
  17.         < /property>    
  18.         < property name="hibernateProperties">    
  19.             < props>    
  20.                 < prop key="hibernate.dialect">    
  21.                     org.hibernate.dialect.MySQLDialect    
  22.                 < /prop>    
  23.                 < prop key="hibernate.show_sql">true< /prop>    
  24.                 < prop key="hibernate.format_sql">true< /prop>    
  25.             < /props>    
  26.         < /property>    
  27.         < property name="mappingResources">    
  28.             < list>    
  29.                 < value>com/dc/pojo/User.hbm.xml< /value>< /list>    
  30.         < /property>    
  31.     < /bean> 

userDAO的驗(yàn)證方法【如下】:在這個(gè)類中繼承了一個(gè)HibernateDaoSupport類,繼承后在配置文件中就可以添加一個(gè)sessionFactory屬性,用于獲取HibernateSessionFactory。

 
 
 
  1. public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {    
  2.     public User checkUser(String name, String password) {    
  3.         String sql = "from User u where u.name=? and password=?";    
  4.         List userList = this.getHibernateTemplate().find(sql.toString(),    
  5.                 new Object[]{name, password});    
  6.         return userList.size() == 0 ? null : (User) userList.get(0);    
  7.     }    

4)、找到action后處理用戶的登錄,【如下】。 userService調(diào)用了getUserByParam方法,而在getUserByParam方法中又調(diào)用了userDAO的checkUser方法。驗(yàn)證通過后轉(zhuǎn)到成功頁面,否則轉(zhuǎn)到失敗頁面。

 
 
 
  1. //用戶登錄驗(yàn)證    
  2.     public ActionForward execute(ActionMapping mapping, ActionForm form,    
  3.             HttpServletRequest request, HttpServletResponse response) {    
  4.         LoginActionForm laf = (LoginActionForm) form;    
  5.         String name = laf.getName();    
  6.         String password = laf.getPassword();    
  7.         User user=userService.getUserByParam(name, password);    
  8.         if(user!=null){    
  9.             HttpSession session=request.getSession();    
  10.             session.setAttribute("user", user);    
  11.             return mapping.findForward("success");    
  12.         }    
  13.         return mapping.findForward("failed");    
  14.     } 

這就是一個(gè)簡(jiǎn)單的流程,當(dāng)然還有一些細(xì)節(jié)的東西需要我們?nèi)ッ?。在這過程中,三個(gè)框架都發(fā)揮了各自的作用,如果在一些比較復(fù)雜的應(yīng)用里面這是很方便的。這種模式使一個(gè)系統(tǒng)變得靈活、易于擴(kuò)展和維護(hù),所以得到了比較廣泛的應(yīng)用。

以上就介紹了MyEclipse整合SSH的流程。本文來自seekereye的博客:《SSH整合》。

【編輯推薦】

  1. MyEclipse構(gòu)建SSH框架淺析
  2. MyEclipse+Flex+Blzeds入門淺談
  3. MyEclipse Flex環(huán)境配置詳解
  4. MyEclipse下CVS應(yīng)用淺析
  5. MyEclipse CVS配置詳解

網(wǎng)站欄目:使用MyEclipse整合SSH模式:登陸范例
網(wǎng)站URL:http://www.5511xx.com/article/cojgids.html