[JAVA] Entwurfsstreben2

Struts2 studieren

struts.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
  <!--Aktionspaketdefinition-->
  <package name="default" extends="struts-default">
    <!--Hallo Weltbeispielaktion-->
    <action name="hello" class="sample.HelloWorldAction" method="execute">
      <result name="success">/view/sample/HelloWorld.jsp</result>
    </action>
</struts>

index.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!--Aktivieren Sie die Struts2-Tag-Bibliothek-->
<%@ taglib prefix="s" uri="/struts-tags"%>
<!--Verwenden Sie die HTML5-Typdeklaration-->
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
  </head>
<body>
  <!--Das Eingabeformular verwendet Struts2-Tags-->
  <s:form action="hello">
    <s:textfield name="name" />
    <s:submit value="Gehen Sie zur Seite Hallo Welt" />
  </s:form>
</body>
</html>

HelloWorldAction.java


package sample;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

/**
 * [HelloWorld-Aktionsklasse]<br>
 * <br>
 * @author tarosa0001
 */
public class HelloWorldAction {
    /**Logger*/
    private Logger logger = LogManager.getLogger(HelloWorldAction.class);

    /**Name*/
    private String name;

    /**
     * [Aktionsausführungsprozess]<br>
     *Führen Sie den Prozess aus, um HelloWorld auszugeben.<br>
     *Die auszuführende Methode ist Streben.Implementieren Sie mit dem in xml angegebenen Methodennamen.<br>
     *In Struts2 wird das Seitenübergangsziel durch das Verarbeitungsergebnis der Aktion bestimmt.
     *Diesmal"success"Gibt die feste Zeichenfolge von zurück.<br>
     * <br>
     * @return
     */
    public String execute() {
        logger.info("Der eingegebene Parameter ist "{}"ist.", name);
        return "success";
    }

    /**
     * [Namenserfassungsprozess]<br>
     *Holen Sie sich den Namen.<br>
     *Wenn Struts2 den im Formular eingegebenen Wert als Parameter verwendet
     *Da Getter verwendet wird, lautet die Information, die Sie als Parameter verwenden möchten
     *Deklarieren Sie es als Eigenschaft der Action-Klasse und bereiten Sie einen Getter vor.
     * <br>
     * @Name zurückgeben
     */
    public String getName() {
        return name;
    }

    /**
     * [Namenseinstellungsprozess]<br>
     *Stellen Sie den Namen ein.<br>
     *Bereiten Sie wie bei Getter einen Setter für die Werte vor, die Sie zwischen den Seiten übergeben möchten.<br>
     * <br>
     * @Param Name Name
     */
    public void setName(String name) {
        this.name = name;
    }
}

HelloWorld.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Hello Struts2 world!</title>
  </head>
  <body>
    <!--Zeigt die zwischen Nachrichten übertragenen Daten an.-->
    Hello Struts2 world, <s:property value="name" />Herr.
  </body>
</html>

web.xml


<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>Struts2-01</display-name>
  <welcome-file-list>
    <!--Zeigen Sie die Dateieinstellungen an, wenn Sie sich gewöhnlich im Anwendungsstamm befinden-->
    <!--Es ist nicht notwendig, aber diesmal, um Fehler bei der URL-Eingabe, Index zu vermeiden.Nur jsp.-->
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

  <!--Struts2 Servlet Filter-->
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>

  <!--Festlegen des Filters für die URL-->
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

Andere

web.xml


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
  </head>
<body>
  <s:form action="sample_tag">
Seite<br/>
    s:textfield<s:textfield name="user_id" value="USER_ID" size="24" label="Benutzeridentifikation"/><br/><br/>
    s:password<s:password name="password" value="PASSWD" size="24" label="Passwort"/><br/><br/>
    s:hidden<s:hidden name="item_id" value="HIDDEN"/><br/><br/>
・ Test auswählen(Single)
    <select name="select1">
      <option value="1">Zur Seite von Ergebnis 1</option>
      <option value="2">Zur Seite von Ergebnis 2</option>
    </select><br/><br/>
・ Test auswählen(Multi)
    <select name="select2" multiple="multiple">
      <option value="A">Tippe A</option>
      <option value="B">Typ B.</option>
      <option value="O">O-Typ</option>
      <option value="AB">AB-Typ</option>
    </select><br/><br/>
・ Checkbox-Test
    <input type="checkbox" name="chbox1" value="1" checked="checked" />interessant
    <input type="checkbox" name="chbox1" value="2" />Nützlich
    <input type="checkbox" name="chbox1" value="3" checked="checked" />Nicht gut genug
    <br/><br/>
・ Funktest
    <input type="radio" name="radio1" value="1" checked="checked" />gut
    <input type="radio" name="radio1" value="2" />Schlecht
    <br/><br/>
    <s:submit value="SUBMIT!!" />
  </s:form>
</body>
</html>

Sample01Action.java


package sam.tag;

/**
 * @author
 */
public class Sample01Action extends AbstractAction{

    private String user_id;
    private String password;
    private String item_id;

    private String select1;
    private String select2;

    private String chbox1;
    private String radio1;

    /**
     * [Aktionsausführungsprozess]<br>
     * @return
     */
    public String execute() {
//        final String className = new Object(){}.getClass().getEnclosingClass().getName();
        final String methodName = new Object(){}.getClass().getEnclosingMethod().getName();
//        System.out.println("className::" + className);
//        System.out.println("methodName :" + methodName);

        logger.info("▼ Start ▼:{}",methodName);
        logger.info("Der eingegebene Parameter ist "{}"ist.", toString());

        short nextPage = Short.parseShort(select1);

        try {
            if (nextPage == 1) {
                return "success1";
            } else {
                return "success2";
            }
        } catch (Exception e) {
            return "error";
        } finally {
            logger.info("▲ Ende ▲: Ausführen()");
        }
    }

    @Override
    public String toString() {
        return "Sample01Action [user_id=" + user_id + ", password=" + password + ", item_id=" + item_id + ", select1="
                + select1 + ", select2=" + select2 + "]";
    }

    //Nachfolgend finden Sie automatisch generierte Getter und Setter
    public String getUser_id() {
        return user_id;
    }

    public void setUser_id(String user_id) {
        this.user_id = user_id;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getItem_id() {
        return item_id;
    }

    public void setItem_id(String item_id) {
        this.item_id = item_id;
    }

    public String getSelect1() {
        return select1;
    }

    public void setSelect1(String select1) {
        this.select1 = select1;
    }

    public String getSelect2() {
        return select2;
    }

    public void setSelect2(String select2) {
        this.select2 = select2;
    }

    public String getChbox1() {
        return chbox1;
    }

    public void setChbox1(String chbox1) {
        this.chbox1 = chbox1;
    }

    public String getRadio1() {
        return radio1;
    }

    public void setRadio1(String radio1) {
        this.radio1 = radio1;
    }

}

result1.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Ergebnisseite</title>
  </head>
  <body>
Ergebnis 1 Seite<br/>
    s:textfield:<s:property value="user_id" /><br/>
    s:password:<s:property value="password" /><br/>
    s:hidden:<s:property value="item_id" /><br/>
    select1:<s:property value="select1" /><br/>
    select2:<s:property value="select2" /><br/>
    checkbox:<s:property value="chbox1" /><br/>
    radio:<s:property value="radio1" /><br/>
  </body>
</html>

Recommended Posts

Entwurfsstreben2
Entwurf log4j2