SSH与SSM简介
SSM:Spring+SpringMVC+Mybatis
SSH:Struts2+Hibernate+Spring
Struts2:是侧重于控制层的框架
Hibernate:是一个ORM(Object Relation Mapping)的产品,专职于做DAO层
Spring:是一个项目的大管家或者是大容器。它负责各个层次的融合

为什么要用框架来开发项目?
1.简化开发流程
2.标准化开发流程
3.增强项目的扩展性和维护性

Struts2的开发流程:
1.新建web项目,加入struts2的核心jar包

2.在项目中的web.xml中加入struts2的核心过滤器

<?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_06</display-name><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list>
</web-app>

3.在src目录下创建一个struts.xml的配置文件

4.在src目录下新建Action普通类,在类中写一个public String execute() 返回一个字符串

package com.action;import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupport{public String execute(){System.out.println("我的struts2第一个action");return "success";}
}

5.在struts.xml中完成Action的注册配置

<?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><package name="my" namespace="/" extends="struts-default"><action name="login" class="com.action.LoginAction"><result name="success">/jsp/success.jsp</result></action></package>
</struts>

注意:name="login"是指action的访问路径
    <result name="success">/jsp/success.jsp</result>:是返回后的跳转结果

6.login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html>
<html>
<head>
<base href="<%=basePath%>"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body><form action="login">用户名:<input name="username"><br>密码:<input type="password" name="pwd"><br><input type="submit" value="提交"></form>
</body>
</html>

  点击提交即可跳转至success.jsp页面

转载于:https://www.cnblogs.com/wlxslsb/p/10769568.html

一 Struts2 开发流程相关推荐

  1. 简述Web程序开发流程

    总体开发流程 分析需求, 列出功能清单或写需求说明书. 设计程序功能, 写功能规格书和技术规格书. 进入开发与测试的迭代. 调试和性能等专项测试. 部署上线 运维 前端开发流程 根据功能规格绘制页面草 ...

  2. 移动端开发者眼中的前端开发流程变迁与前后端分离

    写在最开始 这是一篇面向移动端开发者的科普性文章,从前端开发的最初流程开始,结合示范代码,讨论开发流程的演变过程,希望能覆盖一部分前端开发技术栈,从而对前端开发的相关概念形成初步的认识. 本文会提供一 ...

  3. node.js的开发流程_Node.js子流程:您需要了解的一切

    node.js的开发流程 by Samer Buna 通过Samer Buna Node.js子流程:您需要了解的一切 (Node.js Child Processes: Everything you ...

  4. 软件开发流程包含哪些内容

    2019独角兽企业重金招聘Python工程师标准>>> 能否开发出一个好的软件,关键是看软件开发前期所做的工作,重点是这个软件有没有一个好的 软件开发流程,因为一个好的软件开发流程关 ...

  5. TCP 网络应用程序开发流程

    TCP 网络应用程序开发流程 1. TCP 网络应用程序开发流程的介绍 TCP 网络应用程序开发分为: TCP 客户端程序开发 TCP 服务端程序开发 说明: 客户端程序是指运行在用户设备上的程序 , ...

  6. web开发流程 - 网上商城示例

    一.需求确定 1:通过各种手段确定系统的功能与性能    1)功能:注册.浏览.搜索...    2)性能:可同时支持n个并发访问,并且响应时间不低于m毫秒...    3)手段:头脑风暴(brain ...

  7. Leangoo阶段式硬件产品开发流程

    一.概述 本场景描述的是基于阶段式硬件研发流程以及在Leangoo中如何实现. 二.硬件产品开发流程 下图所示的是一个硬件产品开发大体上所需要经历的全部流程: 1)立项 在立项之前首先需要确定产品定位 ...

  8. 究竟什么样的开发流程是规范的?

    概述 有读者反馈,读了文章 一线技术管理者究竟在管什么事?收获满满,但还有点不过瘾,还想了解更细的东西... 这篇文章分享开发流程规范,目的是提高产品质量,优化开发流程,供大家参考. 规范是死的,人是 ...

  9. 敏捷开发流程的8个步骤

    一.敏捷开发流程的8个步骤包括: 1.目标制定,目标对齐:通过市场调研.业务思路.风险评估制定公司规划和目标,根据这一目标产生所有部门的目标并实现对齐: 2.产品规划:产品研发部门根据目标制定产品关键 ...

最新文章

  1. SAP事务码f-02做账界面显示“页数”字段
  2. linux 下 C 编程和make的方法 (十、C版的try catch 捕捉段错误和异常处理)
  3. idea lombok安装后还是标红_小辣椒神器Lombok
  4. 计算机启动软件,计算机软件及应用启动会-20210703001237.pptx-原创力文档
  5. 建立在线社区:Numenta
  6. 简述人工智能的发展历程图_简述华强北airpods的发展历程
  7. JDBC基础篇(MYSQL)——自定义JDBCUtil工具类
  8. sql server book
  9. 2022年新出的Python学习神器,强烈推荐
  10. 利用Word2Vec在语料中构建种子词集同类词
  11. VMware安装deepin
  12. Latex排版学习笔记(4)——Latex插入项目符号和编号
  13. 免费的个人网路监控软体 NetLimiter 2 Monitor
  14. 用JS 输出 正三角形
  15. Windows10系统重装后必不可少的优化步骤
  16. 基于Java Web的在线考试系统的实现
  17. 将拥有相同字段的数据项合并
  18. python - alipay sdk 使用 及 注意点
  19. 设计分享 | 基于51单片机实现温度监测报警系统
  20. cocos creator 3D学习(六)光照+阴影

热门文章

  1. Sql获取表信息(包括结构及字段说明)
  2. 一文带你弄懂普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法
  3. Vulnhub靶机渗透之 RAVEN: 1
  4. 用户自定义一个异常,编程创建并抛出某个异常类的实例。运行该程序并观察执行结果。
  5. cordova自定义一个简单的alert的插件(android平台)
  6. 程序员面试系列——冒泡排序
  7. contiki源码阅读之list
  8. 一文看懂Python(四)-----os.path模块篇
  9. c/c++反混淆方法
  10. 基于语义嵌入模型与交易信息的智能合约自动分类系统