1、在struts.xml里加入 package、action、result标签

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
 3 <struts>
 4     <package name="default" namespace="/action" extends="struts-default">
 5         <action name="Login" class="com.jeson.action.Login">
 6             <result name="Success">../Success.jsp</result>
 7             <result name="Error">../Error.jsp</result>
 8         </action>
 9      </package>
10</struts>    

action name就是这个action的名字,在form表单中的action里就写这个。class就是你的处理相应活动的class文件在哪里,我的这个就是在com.jeson.action包下的Login.class文件。

意思是当java文件返回Success时跳转到Success.jsp,当java文件返回Error时跳转到Error.jsp。

2、写Java类

package com.jeson.action;import java.util.List;import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.jeson.po.*;
import com.jeson.po.Login;
import com.opensymphony.xwork2.ActionSupport;public class Delete extends ActionSupport
{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;}@Overridepublic String execute() throws Exception{Session session = HibernateSessionFactory.getSession();Transaction tr=session.beginTransaction();String u;u = getUsername();//p = getPassword();//com.jeson.po.Login l = new com.jeson.po.Login();com.jeson.po.Login l =(Login) session.get(com.jeson.po.Login.class,u);//l.setUsername(u);        try{session.delete(l);tr.commit();return "Success";}catch(HibernateException e){e.printStackTrace();tr.rollback();return "Error";}finally{session.close();}}
}

首先要继承ActionSupport类,

其次这个类的成员变量要和网页中form表单提交的东西名字一样,比如我提交的是username和password,所以这个类两个成员变量也是这两个。

之后要重写public String execute() throws Exception ,这个方法是自动执行的,返回值就是刚才的success或者error。

3、在网页的form表单中使用就行了:

<form name="form2" method="post" action="action/Delete.action"><label>用户名:<input type="text" name="username"></label><p><label><input type="submit" name="Submit" value="删除"></label></p></form> <br>

值得注意的是,struts中的<package name="default" namespace="/action" extends="struts-default"> namespace=“/action”,所以,form表单的action也要加上action/。如果namespace=“/*” 在form里action直接写Delete.action就好了。

转载于:https://www.cnblogs.com/hehejeson/articles/6605970.html

S2SH框架入门之使用struts2相关推荐

  1. S2SH框架入门之使用hibernate进行基础的增删改查

    1.先建session: Session session = HibernateSessionFactory.getSession();Transaction tr=session.beginTran ...

  2. java struts2 框架 入门简介

    目录 一.Struts2框架执行流程 二.Struts2的快速入门 1.导入jar包 2.配置web.xml文件 3.配置struts.xml文件 4.创建Action来完成逻辑操作 三.Struts ...

  3. Struts2入门第一讲——Struts2框架的快速入门

    Struts2框架的概述 Struts2是一种基于MVC模式的轻量级Web框架,它自问世以来,就受到了广大Web开发者的关注,并广泛应用于各种企业系统的开发中.目前掌握Struts2框架几乎成为Web ...

  4. 『Scrapy』爬虫框架入门

    框架结构 引擎:处于中央位置协调工作的模块 spiders:生成需求url直接处理响应的单元 调度器:生成url队列(包括去重等) 下载器:直接和互联网打交道的单元 管道:持久化存储的单元 框架安装 ...

  5. c++框架有哪些_Java Mybatis框架入门教程_v20200726

    MyBatis 的前身是 Apache 的开源项目 iBatis.MyBatis 几乎可以代替 JDBC,是一个支持普通 SQL 查询,存储过程和高级映射的基于 Java 的优秀持久层框架.MyBat ...

  6. Python Django框架入门第一课

    Python Django框架入门 1.Django简介 Django使用python开发的一个免费的Web框架,几乎囊括了Web应用的方方面面,用于快速搭建高性能.优雅的网站. 2.配Django运 ...

  7. [Python] Django框架入门

    说明:Django框架入门 当前项目环境:python3.5.django-1.11 项目名:test1 应用名:booktest 命令可简写为:python manager.py xxx => ...

  8. python web 框架例子_最快的 Python Web 框架入门

    原标题:最快的 Python Web 框架入门 来源:Python开发 ID:PythonPush 速度比较 框架 实现基础 每秒请求数 平均时间 Sanic Python 3.5 + uvloop ...

  9. SpringBatch批处理框架入门(二)

    这篇文章接上一篇SpringBatch批处理框架入门(一),继续讲解SpringBatch基础知识. 目录 SpringBatch 核心类介绍 SpringBatch 核心类Job SpringBat ...

最新文章

  1. Windows中配置java变量环境
  2. 【Codeforces】1065B Vasya and Isolated Vertices (无向图的)
  3. plus 什么是mybais_MyBatis和MyBatisPlus的区别是什么?
  4. unity shader 纹理透明效果
  5. springboot 打卡功能_实战:如果让你用SpringBoot实现签到奖励的功能,你会怎么做?...
  6. Algorithms学习笔记-Chapter0序言
  7. Ext 中 radiogroup 的布局问题,当点击fieldLabel时,界面整体会向左移
  8. pytorch选出数据中的前k个最大(最小)值及其索引
  9. 如何使用MySQL和JPA使用Spring Boot构建Rest API
  10. KerasSeq2seqGeneration:基于seq2seq模型的文本生成任务项目
  11. Java Web-网页基础-HTML-CSS
  12. Linux的常用网络命令
  13. Atitit 文件远程传输读写协议 scp http ftp nfs webdav smb D:\Program Files\Git\usr\bin\scp.exe 4.密码安全策略不完善 在
  14. PPPOE拨号691的问题
  15. 16进制高精度计算的加减乘20211001
  16. xp桌面计算机在哪个文件夹,windows桌面文件路径 windows xp 桌面文件默认存放路径...
  17. C++中int、long和double的取值范围和最大值,以及32位和64位的差异解读
  18. 卡特兰数Catalan number的应用
  19. C++(数据结构与算法):42---优先级队列的实现(扩充二叉树、高度优先左高树(HBLT)、重量优先左高树(WBLT))
  20. kingbase人大金仓常用sql命令(自用总结)

热门文章

  1. csg显示寻找专用服务器失败,支持邻近发现过程的方法和装置
  2. 云原生架构下日志服务数据预处理
  3. 2021研发效能实践案例征集大赛
  4. “数据驱动”时代来临,阿里云数据中台如何赋能金融业?(附重磅报告下载)
  5. 关于类DOTA游戏多样化技能系统的设计思考
  6. pmp每日三题(2022年3月14日)
  7. Undo TableSpace ②.回滚段研究
  8. Oracle数据块原理深入剖析
  9. python守护线程t.setDaemon(True)
  10. Spring之使用外部属性文件