1. 程式人生 > >一步步學習SSH框架

一步步學習SSH框架

本人雖然上學階段接觸過SSH,但大家知道的,一知半解的。今天重新開始學習SSH框架。今天在此講的也是個人的一個學習的過程,如果錯誤,還請各位大牛指點。

首先第一步我們從第一個S開始,也就是struts2!

什麼是struts2:Struts2整合了MCV和Webwork兩種優秀的MVC框架的框架

struts2的作用:方便開發人員和減小了框架內部耦合度。

struts的用法:它是通過核心控制器接收使用者請求然後交給大量的攔截器來處理使用者請求。

核心控制器有兩個部分:FilterDispatcher業務控制器Action

FilterDIspatcher就是一個Servlet的過濾器,需要提前在XML中配置。

Action是一個POJO,有良好的程式碼重用性。

下面來嘗試一個簡單的struts2的加法器

第一步:配置業務控制器,首先要去網上下載它的5個核心jar。

第二步:在web.xml檔案中配置核心控制器。

  <filter>
      <filter-name>struts2</filter-name>
      <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
  </filter>
  <filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>/*</url-pattern>
  </filter-mapping>

第三步:配置完成後就可以開始建立使用者輸入的jsp介面了,這個就看你自己個人喜好了,只有有兩個text輸入框和一個按鈕就行。

第四步:在輸入頁面設計完成後,開始設計實現業務邏輯,可以在src下新建一個biz(自己命名)包,然後新建一個java函式。

這裡只寫了個實現加法的。

public class Calculator {


public double add(double num1, double num2) {
	// TODO Auto-generated method stub
	return num1+num2;
}
}
第五步:業務邏輯實現之後,就可以開始建立業務控制器了(當用戶點選按鈕提交資料之後,就會到業務控制器,然後呼叫業務邏輯進行運算)。
package SSH.action;
import com.opensymphony.xwork2.ActionContext;
public class addAction {
 private double num1;
 private double num2;
 public double getNum1()
 {
  return num1;
 }
 public void setNum1(double num1)
 {
  this.num1=num1;
 }
 public double getNum2()
 {
  return num2;
 }
 public void setNum2(double num2)
 {
  this.num2=num2;
 }
 
 @SuppressWarnings("unchecked")
 public String execute()
 {
  Calculator biz=new Calculator();
  double result=biz.add(this.num1,this.num2);
  ActionContext.getContext().getSession().put("result",result);
  return "cal";
 }
}

第六步:在src裡新建一個struts.xml來配置剛新建的業務控制器(通過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>
    <constant name="struts.devMode" value="true" />
    <package name="p2" extends="struts-default">
        <action name="add" class="SSH.action.addAction">
            <result name="cal">/add_result.jsp</result>
        </action>
    </package>
</struts>

到這裡這個簡單的加法器就完成了,從使用者輸入的jsp介面執行就可以看到效果了。

我個人遇到的問題就是:把struts錯寫成了structs.

接觸SSH的第一步到這裡就結束了。



相關推薦

步步學習SSH框架

本人雖然上學階段接觸過SSH,但大家知道的,一知半解的。今天重新開始學習SSH框架。今天在此講的也是個人的一個學習的過程,如果錯誤,還請各位大牛指點。 首先第一步我們從第一個S開始,也就是struts2! 什麼是struts2:Struts2整合了MCV和Webwork兩種

SSH之旅】步步學習Hibernate框架):關於持久化

stc localhost 對象 schema hbm.xml java let pass [] 在不引用不論什麽框架下,我們會通過平庸的代碼不停的對數據庫進行操作,產生了非常多冗余的可是又有規律的底層代碼,這樣頻繁的操作數據庫和大量的底層代碼的反復

基於asp.net + easyui框架步步學習easyui-datagrid——實現分頁和搜尋(二)

目錄:        上篇部落格我只是將介面的部分完成了,繼續上篇部落格的內容,這篇部落格我們需要將資料庫中的記錄顯示到介面上,並實現資料的分頁顯示。        曾經我寫過分頁的部落格,分頁很簡單, 本質區別在於分頁時從資料庫讀取資訊的方式:假分頁:一次性讀取

步步學習EF Core(1.DBFirst)

sin then tle foreach delete tro log -h num 前言 很久沒寫博客了,因為真的很忙,終於空下來,打算學習一下EF Core順便寫個系列, 今天我們就來看看第一篇DBFirst. 本文環境:VS2017 Win7 .NET

步步學習並發:了解並發是如何發生的

精益 進行 招商銀行 臟讀 銀行卡 事務 沒有 個數 余額 十年河東,十年河西,莫欺少年窮 學無止境,精益求精 數據庫操作的並發問題是沒法避免的,並發會引起如下問題: 舉例說明: 數據庫事務並發帶來的問題有:更新丟失、臟讀、不可重復讀、幻象讀。假設張三辦了一張招商銀行卡,余

Struts2+Spring+Hibernate實現員工管理增刪改查功能()之ssh框架整合

pri support scrip ext ack efault ring src 兩張 前言 轉載請標明出處:http://www.cnblogs.com/smfx1314/p/7795837.html 本項目是我寫的一個練習,目的是回顧ssh框架的整合以及

步步學習Linux多任務編程

blog 緩沖 dup system pan 無名管道 gpo 重入 get 系統調用 01、什麽是系統調用? 02、Linux系統調用之I/O操作(文件操作) 03、文件描述符的復制:dup(), dup2() 多進程實現多任務 04、進程的介紹 05、Linu

No.5步步學習vuejs之事件監聽和組件

sage 應該 shift vuejs 進行 編譯器 add round mage 一監聽事件 可以用 v-on 指令監聽 DOM 事件,並在觸發時運行一些 JavaScript 代碼。 <div id="demo1"> <button v-on:cli

JAVA開發血淚之路:步步搭建spring框架

適配 param 實例 list ans oca 容器管理 simple inf 前言 作為一個服務端開發感覺一直挺排斥框架這種東西的,總覺得什麽實現邏輯都幫你封裝在裏面了,你只需要配置這配置那個,出了問題也不知道怎麽排查,之前即使寫web程序也寧願使用jetty這樣的嵌入

不使用 vue-cli 與 vue 模版,使用 Vue2.x + webpack4.x 從零開始步步搭建專案框架

說明 這是我根據慕課網上的一個課程 Vue+Webpack打造todo應用 過程一步步搭下來的框架,去掉了業務相關的邏輯。 專案最終的效果包括了引入vue框架;使用CSS前處理器;使用babel;引用圖片等靜態資源;區分開發環境與生成環境,並做相應優化等。基本接近真正做專案時候的配置

freeRTOS 步步學習

源自:http://www.FreeRTOS.org     文件名:  USING THE FREERTOS REAL TIME KERNEL   中文: FREERTOS實時核心實用指南  翻譯作者----》》》》》》》》》》》》》》》》》》》》》》》》》》 硬實

步步學習kotlin for android(三) kotlin省略findviewById

findViewById      今天的內容涉及到findViewByID,android語言原來這個特別繁瑣,現在好了,kotlin語言,直接拿來佈局裡面的id用,省去好多重複工作量啊 在使用kotlin的id之前,需要先在builde.gradle裡引入這個 app

跟著例子步步學習redux+react-redux

前言 本文不會拿redux、react-redux等一些react的名詞去講解,然後把各自用法舉例說明,這樣其實對一些react新手或者不太熟悉redux模式的開發人員不夠友好,他們並不知道這樣使用的原因。本文通過一個簡單的例子展開,一點點自己去實現一個redux+reac

步步學習基於Linux4.4的TINY4412開發--uboot的移植

開發板:tiny4412-1506 儲存4G、記憶體1G系統:ubuntu16.04 虛擬機器u-boot: u-boot 2010.12compiled tool: arm-none-linux-gnueabi-gcc (gcc version 4.8.3 20140320

步步學習彙編(10)之jmp指令原理分析

jmp指令 解釋: n       jmp為無條件轉移,可以只修改IP,也可以同時修改CS和IP; n       jmp指令要給出兩種資訊: n       轉移的目的地址 n       轉移的距離(段間轉移、段內短轉移,段內近轉移) 格式: 一.Jump shor

學習SSH框架記錄片4----Spring 宣告式事務整合 Hibernate

1.配置事務管理器 1-1. XML配置示例 <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionM

步步學java框架之Spring-SpringMVC-Hibernate在idea的使用(三)

本專題主要學習Spring-SpringMVC-Hibernate的使用,作者我也是最近開始學習java框架,所以有什麼錯的請提出。 這節我們來寫spring-dispatcher-servlet檔案和寫Controller(控制器) 我們先把原來要

SSH框架學習------struts2(

str struts2 oct 簡單 src package efi struts2配置 html 1.總的目錄 2.所有程序 1)index.jsp很簡單 <%@ page language="java" contentType="text/html; chars

SSH框架學習)——匯入框架所需jar包

SSH框架學習(一)——匯入框架所需jar包 一、建立一個web專案 二、匯入Struts2的jar包 三、匯入Hibernate的jar包 四、匯入Spring的jar包 IOC開發: AOP開發: 五、引入整合

unittest框架學習步步生成html格式測試報告

主要參考文章: https://blog.csdn.net/xiaoquantouer/article/details/75089200 unittest中最核心的四部分是: 1.test fixture(測試韌體) 2.test case(測試用例) 3.te