IDEA配置Struts架構,ideastruts架構

來源:互聯網
上載者:User

IDEA配置Struts架構,ideastruts架構

對於剛接觸編程的同學,對架構只是還不是很瞭解,本文主要介紹在Idea上配置Struts,實現簡單的頁面跳轉,以及頁面參數傳遞。


在進行代碼編寫之前先對Idea進行一個簡單瞭解,對於長時間接觸編程的,對於Eclipse或者MyEclipse並不陌生,想當初剛接觸編程的時候配置Eclipse運行環境花費了大量的時間,但作為一個程式員來說,我還是建議大家盡量運用Idea,舉一個簡單的例子,在Idea中進行Debug,那是很簡單的,只需要在代碼進行點擊,就可以直接進入Debug狀態,對於整個進程的參數都可以看得到,一目瞭然,這隻是一個簡單的一個功能,還有很多等待著小夥伴去探索,我是感覺用了Idea就不想用Eclipse了,閑話說到這,下面看代碼,首先解釋一下,我用的是Idea社區辦2016.3

一、Struts簡單介紹

① 首先Struts是一個MVC架構,是Apache的一個開源架構,感覺哪裡都有Apache這個組織

② Struts 2以WebWork為核心,採用攔截器的機制來處理使用者的請求

二、Struts工作流程

① 用戶端(瀏覽器)發送請求

② 請求通過http協議發送給伺服器

③ 伺服器對請求進行攔截,這個是在web.xml檔案中進行配置

④ web.xml檔案對struts.xml檔案對應

⑤ 映射到指定的action,返回resoult

⑥ 根據resoult指定對應的jsp頁面

 三、 Struts詳細配置

1 建立Java項目,這一步比較簡單,大家看一下就知道了

2 選擇Java,並勾選Struts2,預設選擇Doweload,這樣就不用添加Jar包了

 

3 添加項目名稱,點擊下一步即可,這時頁面會顯示在下載Jar包

 

4 整個項目的效果,這樣Jar包以及設定檔都已經好了

5 設定管理員,點擊右上方的,對伺服器進行配置,我用的是Tomcat伺服器,點擊+選擇Tomcat Server,選擇Local

6 對伺服器進行配置,指定Tomcat路徑,連接埠等

7 點擊Deployment,點擊+,點擊Artifact,進行路徑配置,該路徑相當於Eclipse項目Web Root中的路徑,添加名字,點擊apply儲存,伺服器配置完成。

 

8 對於web.xml配置

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"         version="3.1">    <filter>        <filter-name>struts2</filter-name>        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>    </filter>    <filter-mapping>        <filter-name>struts2</filter-name>        <url-pattern>/*</url-pattern>    </filter-mapping></web-app>
View Code

9 index.jsp頁面

<%@ page contentType="text/html;charset=UTF-8" language="java" %><html>  <head>    <title>登入頁面</title>  </head>  <body>  <form action="${pageContext.request.contextPath}/test" method="post">    username:<input name="username" type="text"><br>    password:<input name="password" type="password"><br>    <input type="submit" value="提交">  </form>  </body></html>
View Code

10 struts.xml配置

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"        "http://struts.apache.org/dtds/struts-2.5.dtd"><struts>    <package name="Struts" extends="struts-default">        <action name="test" class="com.Demo">            <result name="success">                success.jsp            </result>            <result name="error">                error.jsp            </result>        </action>    </package></struts>
View Code

11 建立在com package下建立class Demo

package com;/** * Created by admin on 2018/3/30. */public class Demo {    private String username;    private String password;    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    public String execute(){        if(username.equals("wyy")&password.equals("123456")){            return "success";        }        return "error";    }}
View Code

四、總結

當項目進行部署以後,會直接跳轉到index.jsp頁面,當頁面輸入使用者名稱,密碼以後,會發送http://localhost:8080/demo/test請求,首先需要注意該請求首先會被web.xml檔案的url攔截,符合要求進行攔截,進行下一步,然後跳轉到com.Demo類中,對使用者名稱和密碼進行判斷,我現在用的是虛擬資料,實際情況會訪問資料庫,看看資料庫中是否存在該使用者,並且密碼是否正確,真正的項目還會對密碼進行加密,符合要求後返回success,這時候struts.xml中的action對返回結果進行判斷,看看返回結果是否有success,然後進行頁面跳轉。

註:關於頁面資料傳遞,首先在form表單中配置欄位的name,在com.Demo對欄位提供get set方法,這樣就可以擷取頁面資料,注意欄位的名字和類中屬性的名字必須保持一直。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.