日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ssh实际操作指导

發布時間:2024/4/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ssh实际操作指导 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、生成的struts配置文件struts-config.xml文件中,要把spring的配置文件引入,說明spring配置文件在哪兒放著。
???注意:value值可以換的

  • <plug-in?className="org.springframework.web.struts.ContextLoaderPlugIn">??
  • ???<set-property?property="contextConfigLocation"? ??
  • ?????value="/WEB-INF/applicationContext.xml"?/>??
  • ??</plug-in>??
  • 二、將struts-config.xml中自動生成的action配置type屬性改為???

    org.springframework.web.struts.DelegatingActionProxy

    xml 代碼
  • <action??
  • ??????attribute="loginForm"??
  • ??????input="login.jsp"??
  • ??????name="loginForm"??
  • ??????path="/login"??
  • ??????scope="request"??
  • ??????type="org.springframework.web.struts.DelegatingActionProxy"?>??

  • 三、在spring的配置文件applicationContext 中會自動添加hibernate自動生成的dao的bean配置。例如

    xml 代碼
  • <bean?id="UsersDAOImp"?class="com.ssh.dao.impl.UsersDAOImp">??
  • ??<property?name="sessionFactory">??
  • ???<ref?bean="SpringSessionFactory"?/>??
  • ??</property>??
  • ?</bean>??
  • 但是不會自動生成action 的配置,所以需要增加action的配置

    xml 代碼
  • <bean?name="/login"?class="com.ssh.action.LoginAction"?singleton="false">??
  • <property?name="dao">??
  • <ref?bean="UsersDAOImp"/>??
  • </property>??
  • </bean>??
  • 相應的com.ssh.action.LoginAction的實現:

    java 代碼
  • public?class?LoginAction?extends?Action?{ ??
  • ?/* ?
  • ??*?action與daoImp類之間是依賴注入 ?
  • ??*?daoImp與SessionFactory類之間是依賴注入 ?
  • ??*/??
  • ??
  • ?/**? ?
  • ??*?Method?execute ?
  • ??*?@param?mapping ?
  • ??*?@param?form ?
  • ??*?@param?request ?
  • ??*?@param?response ?
  • ??*?@return?ActionForward ?
  • ??*/??
  • ?public?UsersDAOImp?dao; ??
  • ? ??
  • ?public?UsersDAOImp?getDao()?{ ??
  • ??return?dao; ??
  • ?} ??
  • ??
  • ?public?void?setDao(UsersDAOImp?dao)?{ ??
  • ??this.dao?=?dao; ??
  • ?} ??
  • ??
  • ?public?ActionForward?execute(ActionMapping?mapping,?ActionForm?form, ??
  • ???HttpServletRequest?request,?HttpServletResponse?response)?{ ??
  • ??LoginForm?loginForm?=?(LoginForm)?form; ??
  • ??Users?user=new?Users(); ??
  • ??user.setUsername(loginForm.getUsername()); ??
  • ??user.setPassword(loginForm.getUserpwd()); ??
  • ??UsersDAOImp?dao=this.getDao(); ??
  • ??if(dao.findByExample(user).size()>0){ ??
  • ???return?mapping.findForward("right"); ??
  • ??} ??
  • ?? ??
  • ?? ??
  • ??return?mapping.findForward("wrong"); ??
  • ??
  • ?} ??
  • } ??
  • ??
  • 在這里可以看到spirng的依賴注入中的設值注入:配置文件和set/get方法相配合

    四、如果你用的是mysql數據庫,則需要把映射文件例如Users.hbm.xml中的配置改一下。

    xml 代碼
  • <class?name="com.ssh.entity.Users"?table="users"?catalog="test">??
  • 改為
    ?

    xml 代碼
  • <class?name="com.ssh.entity.Users"?table="users">??

  • 一定要把這個catalog目錄刪掉,要不它會把表名生成為test__users' 會報下面的錯誤
    javax.servlet.ServletException: Hibernate operation: could not execute query; bad SQL

    grammar [select this_.id as id0_, this_.username as username0_0_, this_.password as

    password0_0_ from test__users this_ where (this_.username=? and this_.password=?)]; nested

    exception is java.sql.SQLException: Table 'test.test__users' doesn't exist

    :?

    xml 代碼

    總結

    以上是生活随笔為你收集整理的ssh实际操作指导的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。