最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中struts配置

 更新時(shí)間:2015年06月15日 10:23:16   投稿:hebedich  
本文給大家詳細(xì)分析了在java項(xiàng)目中配置Struts的方法和示例,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。

1.了解struts

Struts2框架中核心組件就是Action、攔截器等,Struts2框架使用包來管理Action和攔截器等。每個(gè)包就是多個(gè)Action、多個(gè)攔截器、多個(gè)攔截器引用的集合。
在struts.xml文件中package元素用于定義包配置,每個(gè)package元素定義了一個(gè)包配置。它的常用屬性有:
l name:必填屬性,用來指定包的名字。
l extends:可選屬性,用來指定該包繼承其他包。繼承其它包,可以繼承其它包中的Action定義、攔截器定義等。
l namespace:可選屬性,用來指定該包的命名空間。

2.配置struts

  首先新建一個(gè)web項(xiàng)目,在右擊一個(gè)項(xiàng)目,選擇myeclipse下add struts
在選擇 struts2.1 單擊下一步在選擇自己所需要的包 在保存

3.修改用戶登錄驗(yàn)證示例,多增加一個(gè)注冊(cè)用戶功能。

1.       修改Action類:

package org.qiujy.web.struts2.action;
 
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
 
/**
*@authorqiujy
*@version1.0
*/
publicclass LoginAction extends ActionSupport{
  private String userName;
  private String password;
  
  private String msg; //結(jié)果信息屬性
  
  /**
   *@returnthemsg
   */
  public String getMsg() {
    returnmsg;
  }
  /**
   *@parammsgthemsgtoset
   */
  publicvoid setMsg(String msg) {
    this.msg = msg;
  }
  /**
   *@returntheuserName
   */
  public String getUserName() {
    returnuserName;
  }
  /**
   *@paramuserNametheuserNametoset
   */
  publicvoid setUserName(String userName) {
    this.userName = userName;
  }
  /**
   *@returnthepassword
   */
  public String getPassword() {
    returnpassword;
  }
  /**
   *@parampasswordthepasswordtoset
   */
  publicvoid setPassword(String password) {
    this.password = password;
  }
  
  /**
   *處理用戶請(qǐng)求的login()方法
   *@return結(jié)果導(dǎo)航字符串
   *@throwsException
   */
  public String login() throws Exception{
    if("test".equals(123) && "test".equals(123)){
      msg = "登錄成功,歡迎" + 123;
      //獲取ActionContext實(shí)例,通過它來訪問Servlet API
      ActionContext context = ActionContext.getContext();
      //看session中是否已經(jīng)存放了用戶名,如果存放了:說明已經(jīng)登錄了;
//否則說明是第一次登錄成功
      if(null != context.getSession().get("uName")){
        msg = this.userName + ":你已經(jīng)登錄過了!!!";
      }else{
        context.getSession().put("uName", this.userName);
      }
      
      returnthis.SUCCESS;
    }else{
      msg = "登錄失敗,用戶名或密碼錯(cuò)";
      returnthis.ERROR;
    }
  }
  
  public String regist() throws Exception{
    //將用戶名,密碼添加到數(shù)據(jù)庫中
    //...
    msg = "注冊(cè)成功。";
    returnthis.SUCCESS;
  }
}

2.       struts.xml文件:沒有什么變化,跟以前一樣配置

<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
  <package name="my" extends="struts-default" namespace="/manage">
  <!-- 定義處理請(qǐng)求URL為login.action的Action -->
    <action name="userOpt" class="org.qiujy.web.struts2.action.LoginAction">
    <!-- 定義處理結(jié)果字符串和資源之間的映射關(guān)系 -->
      <result name="success">/success.jsp</result>
      <result name="error">/error.jsp</result>
    </action>
  </package>
</struts>

3.       頁面:
index.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
  <title>用戶登錄頁面</title>
</head>
 
<body>
 <h2>用戶入口</h2>
 <hr>
  <form action="manage/userOpt!login.action" method="post">
  <table border="1">
     <tr>
       <td>用戶名:</td>
       <td><input type="text" name="userName"/></td>
     </tr>
     <tr>
       <td>密碼:</td>
       <td><input type="password" name="password"/></td>
     </tr>
     <tr>
       <td colspan="2">
         <input type="submit" value=" 確定 "/>
       </td>
     </tr>
  </table>
  </form>
</body>
</html>

regist.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
  <title>用戶注冊(cè)頁面</title>
</head>
 
<body>
 <h2>用戶注冊(cè)</h2>
 <hr>
  <form action="manage/userOpt!regist.action" method="post">
  <table border="1">
     <tr>
       <td>用戶名:</td>
       <td><input type="text" name="userName"/></td>
     </tr>
     <tr>
       <td>密碼:</td>
       <td><input type="password" name="password"/></td>
     </tr>
     <tr>
       <td colspan="2">
         <input type="submit" value=" 注冊(cè) "/>
       </td>
     </tr>
  </table>
  </form>
</body>
</html>

現(xiàn)在就可以使用sturts。

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • http調(diào)用controller方法時(shí)openfeign執(zhí)行流程

    http調(diào)用controller方法時(shí)openfeign執(zhí)行流程

    這篇文章主要為大家介紹了http調(diào)用controller方法時(shí)openfeign執(zhí)行流程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • SpringBoot中Aware接口使用及原理解析

    SpringBoot中Aware接口使用及原理解析

    在Spring中存在一個(gè)Aware接口,實(shí)現(xiàn)該接口可以讓我們的Bean獲取到Spring容器中特定的資源,但該接口只是個(gè)標(biāo)記接口,不存在任何方法,本文將給大家詳細(xì)介紹一下SpringBoot中Aware接口使用及原理,需要的朋友可以參考下
    2023-08-08
  • 詳解APP微信支付(java后臺(tái)_統(tǒng)一下單和回調(diào))

    詳解APP微信支付(java后臺(tái)_統(tǒng)一下單和回調(diào))

    這篇文章主要介紹了APP微信支付(java后臺(tái)_統(tǒng)一下單和回調(diào)),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • MyBatis如何使用(三)

    MyBatis如何使用(三)

    這篇文章主要介紹了MyBatis如何使用(三)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • Java實(shí)現(xiàn)簡(jiǎn)單郵件發(fā)送

    Java實(shí)現(xiàn)簡(jiǎn)單郵件發(fā)送

    這篇文章主要介紹了Java實(shí)現(xiàn)簡(jiǎn)單郵件發(fā)送的相關(guān)資料,實(shí)例講解了java郵件發(fā)送實(shí)現(xiàn)方法,感興趣的小伙伴們可以參考一下
    2016-02-02
  • java集成kafka實(shí)例代碼

    java集成kafka實(shí)例代碼

    文章介紹了如何在Java項(xiàng)目中集成Apache Kafka以實(shí)現(xiàn)消息的生產(chǎn)和消費(fèi),通過添加Maven依賴、配置生產(chǎn)者和消費(fèi)者、使用SpringBoot簡(jiǎn)化集成以及控制消費(fèi)者的啟動(dòng)和停止,可以實(shí)現(xiàn)高效的消息處理
    2024-12-12
  • 基于java使用JavaMail發(fā)送郵件

    基于java使用JavaMail發(fā)送郵件

    這篇文章主要介紹了基于java使用JavaMail發(fā)送郵件 ,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。
    2016-12-12
  • SpringBoot超詳細(xì)講解事務(wù)管理

    SpringBoot超詳細(xì)講解事務(wù)管理

    事務(wù)的作用就是為了保證用戶的每一個(gè)操作都是可靠的,事務(wù)中的每一步操作都必須成功執(zhí)行,只要有發(fā)生異常就 回退到事務(wù)開始未進(jìn)行操作的狀態(tài)。事務(wù)管理是Spring框架中最為常用的功能之一,我們?cè)谑褂肧pring Boot開發(fā)應(yīng)用時(shí),大部分情況下也都需要使用事務(wù)
    2022-08-08
  • IDEA中Maven依賴下載失敗的完美解決方案

    IDEA中Maven依賴下載失敗的完美解決方案

    使用IDEA進(jìn)行Maven項(xiàng)目開發(fā)時(shí),時(shí)不時(shí)會(huì)遇到pom.xml報(bào)錯(cuò)的情況,其中很大概率是因?yàn)镸aven依賴的jar包下載失敗,找來找去也沒有找到是什么問題,困擾了很多程序猿,這里給出IDEA中Maven依賴下載失敗解決方案,給大家參考,實(shí)測(cè)有用
    2020-04-04
  • SpringBoot高并發(fā)下控制限流的幾種實(shí)現(xiàn)方法

    SpringBoot高并發(fā)下控制限流的幾種實(shí)現(xiàn)方法

    隨著業(yè)務(wù)的發(fā)展,高并發(fā)成為很多系統(tǒng)不得不面對(duì)的問題,限流作為一種常用的技術(shù)手段,可以幫助我們有效地控制請(qǐng)求的流量,避免系統(tǒng)因過載而崩潰,本文將介紹在Spring Boot應(yīng)用中實(shí)現(xiàn)限流的幾種方法,需要的朋友可以參考下
    2024-06-06

最新評(píng)論

高清| 彩票| 五家渠市| 嘉黎县| 富裕县| 北安市| 托克逊县| 渭源县| 涿鹿县| 邵东县| 赞皇县| 巩义市| 中山市| 湟源县| 阜宁县| 龙南县| 昌乐县| 黑水县| 南江县| 商洛市| 吴堡县| 永年县| 右玉县| 星座| 峨边| 镇巴县| 习水县| 麻栗坡县| 琼结县| 陆良县| 绍兴县| 商城县| 陵川县| 漳州市| 临猗县| 隆回县| 宝山区| 都匀市| 三台县| 乾安县| 确山县|