プログラミングマガジン

プログラミングを中心にIT技術をできるだけわかりやすくまとめます。

  • ホーム
  • Java
  • 【Struts】EclipseにStrutsをインストールし、「Hello World!」…
 
 
     
  • サーバー言語  
    • Python
    • Ruby
    • PHP
    • SQL
  •  
  • インフラ  
       
    • AWS
    •  
    • 基本
    • Git
  • Web
       
    • Web開発
    • JavaScript
    • Vue.js
    • React
  •  
  • 設計  
       
    • 実装設計
    • DB設計
  • 問い合わせ
  

【Struts】EclipseにStrutsをインストールし、「Hello World!」を実行してみる。

06.19

  • miyabisan2
  • コメントを書く

この記事は2分で読めます

Eclipseへのインストール

下記のStrutsの公式ページにアクセスして、「Download」ボタンを押します。

https://struts.apache.org/

少し古いですが、「Struts 2.3.34」の「struts-2.3.34-apps.zip」をクリックします。(Struts2のサンプルアプリになります。)

ファイル→インポート→Web→WARファイルを選択して、「次へ」を押します。

ダウンロードしたstruts2のサンプルアプリの中から「struts2-blank.war」というアプリを指定して、「完了」をクリックします。

Tomcatにインポートしたサンプルアプリをデプロイして、Tomcatを起動します。

「http://localhost:8080/struts2-blank/example/HelloWorld.action」にアクセスすると、サンプルアプリを起動できています。

Hello Worldを試す。

それでは、実際にWebアプリケーションを作ってみましょう。

編集及び、新規作成するファイルは、下記の3ファイルになります。

Test1.java(アクション)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package example;
 
import com.opensymphony.xwork2.ActionSupport;
 
public class Test1 extends ActionSupport {
private static final long serialVersionUID = 1L;
 
//Struts2によって実行されるメソッド
public String execute() throws Exception {
setMessage("Hello World!");
        return SUCCESS;
    }
    private String message;
//ゲッターメソッド
    public String getMessage() {
        return message;
    }
//セッターメソッド
    public void setMessage(String message) {
        this.message = message;
    }
}

アクションで必要になるメソッド

メソッド名 説明
execute() リクエストされた際に実行されるメソッドです。戻り値の「SUCCESS」は、struts.xmlの「resultタグ」のname属性と対応します。
getMessage() ゲッターメソッド
setMessage() セッターメソッド

test.jsp(viewとなるJSP)

1
2
3
4
5
6
7
8
9
10
11
12
13
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello Wolrd!</title>
<head>
</head>
<body>
「<s:property value="message"/>」
</body>
</html>

<s:property value="message"/>

本記述により、アクションの中のgetMessageを呼ぶことができます。

struts.xml(設定ファイル)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
 
<struts>
 
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="false" />
 
    <package name="example" extends="struts-default">
 
        <action name="Test1" class="example.Test1">
            <result>/test.jsp</result>
        </action>
    </package>
 
 
    <!-- Add packages here -->
 
</struts>

struts.xmlの具体的な書き方に関しては下記の記事で詳しく解説していますので、ご確認下さい。

【Struts】struts.xmlの書き方

実行結果

Tomcatを起動して、下記のURLにアクセスすると、Hello World!と表示されていることを確認できます。

http://localhost:8080/struts2-blank/example/Test1.action

スポンサーリンク
  • 2018 06.19
  • miyabisan2
  • コメントを書く
  • Java
  • Tweets Twitter
  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2018 05.04

    【Java】Apache Mavenの基礎知識

  2. 2018 05.13

    【GoFのデザインパターン】「Facade(ファザード)」ってどんなパターン?、設計方針なども。

  3. 2018 04.22

    【Java】JDBCプログラムを理解する。

  4. 2018 05.12

    【GoFのデザインパターン】「Builder」ってどんなパターン?

  5. 2018 04.15

    【JSP】基礎的なこと(暗黙オブジェクト等)

  6. 2018 05.04

    【Webセキュリティ】ハッシュ関数(digest)、実装方法、パスワード運用について

  • コメント ( 0 )
  • トラックバック ( 0 )
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

返信をキャンセルする。

【Java】例外処理の基本と、「独自例外」を作成するか…

【Struts】画面遷移させる。

RETURN TOP

著者プロフィール

エンジニア歴10年で過去に業務系、Webデザイン、インフラ系なども経験あります。現在はWeb系でフロントエンド開発中心です。

詳細なプロフィールはこちら

スポンサーリンク

カテゴリー

  • Android
  • AngularJS
  • API
  • AWS
  • C++
  • CSS
  • cursor
  • C言語
  • DDD
  • DevOps
  • Django
  • Docker
  • Figma
  • Git
  • GitLab
  • GraphQL
  • gRPC
  • Hasura
  • Java
  • JavaScript
  • Kubernetes
  • Laravel
  • linux
  • MySQL
  • Next.js
  • nginx
  • Node.js
  • NoSQL
  • Nuxt.js
  • Oracle
  • PHP
  • Python
  • React
  • Redux
  • Rspec
  • Ruby
  • Ruby on Rails
  • Sass
  • Spring Framework
  • SQL
  • TypeScript
  • Unity
  • Vue.js
  • Webサービス開発
  • Webデザイン
  • Web技術
  • インフラ
  • オブジェクト指向
  • システム開発
  • セキュリティ
  • その他
  • データベース
  • デザインパターン
  • テスト
  • ネットワーク
  • プログラミング全般
  • マイクロサービス
  • マイクロソフト系技術
  • マルチメディア
  • リファクタリング
  • 副業
  • 未分類
  • 業務知識
  • 生成AI
  • 設計
  • 関数型言語
RETURN TOP

Copyright ©  プログラミングマガジン | プライバシーポリシー