首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Struts 1.1 入門實戰:配置第一個用戶註冊應用 (含資料庫、Tomcat、Classpath 完整設定)

     編輯:Java 程式設計入門

專案規格

  • 資料庫:SQL Server 2000
  • Web 容器:Tomcat 4.1
  • 框架:Struts 1.1 (jakarta-struts-1.1)
  • 編輯器:EditPlus
  • 功能:用戶註冊,資料存入資料庫

資料庫準備

CREATE DATABASE dba;
CREATE TABLE Tuser (
    uname VARCHAR(64),
    upassword VARCHAR(64),
    uage INT
);

Tomcat Context 設定

<Context path="/struts" docBase="E:/struts" debug="0"
    reloadable="true" crossContext="true">
</Context>

放置於 server.xml 或 Catalina/localhost/struts.xml

CLASSPATH 完整設定 (EditPlus 手動配置)

.;E:\struts\WEB-INF\classes;E:\struts\WEB-INF\lib;
D:\WebSet\jdk\lib\dt.jar;D:\WebSet\jdk\lib\tools.jar;
D:\WebSet\jdk\lib\msbase.jar;D:\WebSet\jdk\lib\mssqlserver.jar;D:\WebSet\jdk\lib\msutil.jar;
E:\struts\WEB-INF\lib\struts.jar;
E:\struts\WEB-INF\lib\commons-beanutils.jar;
E:\struts\WEB-INF\lib\commons-collections.jar;
E:\struts\WEB-INF\lib\commons-digester.jar;
E:\struts\WEB-INF\lib\commons-fileupload.jar;
E:\struts\WEB-INF\lib\commons-lang.jar;
E:\struts\WEB-INF\lib\commons-logging.jar;
E:\struts\WEB-INF\lib\commons-validator.jar

Struts 必要 JAR 清單 (WEB-INF/lib)

JAR 檔案大小用途
struts.jar498 KB核心框架
commons-beanutils.jar119 KBBean 工具
commons-collections.jar165 KB集合擴展
commons-digester.jar109 KBXML 解析
commons-fileupload.jar22 KB檔案上傳
commons-lang.jar64 KB語言工具
commons-logging.jar32 KB日誌抽象
commons-validator.jar47 KB驗證框架

TLD 標籤庫 (WEB-INF/tld)

  • struts-bean.tld
  • struts-html.tld
  • struts-logic.tld
  • struts-nested.tld
  • struts-template.tld
  • struts-tiles.tld

web.xml 完整設定

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "https://java.sun.com/j2ee/dtds/web-app_2_3.dtd">
<web-app>
    <display-name>Struts Blank Application</display-name>
    
    <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        <init-param>
            <param-name>config</param-name>
            <param-value>/WEB-INF/struts-config.xml</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>2</param-value>
        </init-param>
        <init-param>
            <param-name>detail</param-name>
            <param-value>2</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    
    <taglib>
        <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
        <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
    </taglib>
    <!-- 其他 TLD 同理 -->
</web-app>

struts-config.xml 關鍵設定

<struts-config>
    <form-beans>
        <form-bean name="regForm" type="com.example.RegForm"/>
    </form-beans>
    
    <action-mappings>
        <action path="/register" type="com.example.RegisterAction"
                name="regForm" scope="request" validate="true" input="/register.jsp">
            <forward name="success" path="/success.jsp"/>
            <forward name="failure" path="/error.jsp"/>
        </action>
    </action-mappings>
    
    <message-resources parameter="resources.ApplicationResources"/>
    
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames"
            value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
    </plug-in>
</struts-config>

關鍵檢查清單

  1. 資料庫驅動 JAR (msbase.jar, mssqlserver.jar, msutil.jar) 是否在 CLASSPATH
  2. Tomcat Context path 與專案部署路徑一致
  3. struts-config.xml 中 input 屬性以 / 開頭
  4. Form Bean 名稱與 Action name 屬性一致
  5. Validator 外掛正確載入兩個設定檔
  6. web.xml 中 *.do 對映 ActionServlet

啟動驗證

  1. 啟動 Tomcat
  2. 瀏覽器訪問 https://localhost:8080/struts/register.jsp
  3. 填寫表單提交,觀察資料庫 Tuser 表是否新增記錄
  4. 檢查驗證錯誤是否正確顯示於 register.jsp
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved