struts是开源框架。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。

想要运行struts必须先创建一个struts,在struts里面建一个action包,我的包名为Classwork,结构如下图所示:

在Classwork下新建一个class 继承 ActionSupport 方法,代码如下:

package Classwork;

import com.opensymphony.xwork2.ActionSupport;

public class loginAction1 extends ActionSupport {

    @Override
public String execute() throws Exception {
return "ok";
//返回值为ok,应该与配置文件的一致
}
}

然后配置文件Struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="default" extends="struts-default"> //这里的name用于最后的路径
<action name="beanlogin" class="Classwork.loginAction1">
//这里的name与action中的严格一致
<result name="ok">/bean.jsp</result>
</action>
</package>
<!-- <constant name="struts.i18n.encoding" value="gb2312"></constant> -->
</struts>

最后webRoot下新建一个jsp页面bean.jsp,代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'bean.jsp' starting page</title> </head> <body>
//这里的name是action的包名加类名
<s:bean name="Classwork.loginAction1" id="stu">
在bean标签内部可以直接输出:<br>
<s:param name="name">周何骏</s:param>
(1)第一种赋值方式:
<s:property value="name"/><br>
(2)第二种赋值方式:
<!-- 该方法为参数赋值字符串必须加引号 -->
<s:param name="name" value="'周何骏'"></s:param>
<s:property value="name"/>
</s:bean>
<br>
在bean标签外部利用id取值:
<s:property value="#stu.name"/>
</body>
</html>

然后运行action

这里需要注意的是路径问题;

最后的路径名应该是项目名+action包名+action的name.action

用struts的action运行jsp页面的更多相关文章

  1. IIS与TOMCAT协同工作---在IIS下运行JSP页面

    转载:http://www.cnblogs.com/sjpisaboy/archive/2006/12/07/585749.html 最近碰到一个问题:我们实验室的一台IBM EServer服务器被运 ...

  2. Struts2 后台action接收 jsp页面中checkbox中的值

    如前端页面jsp中的标签为: <form action="myurl"> <input type="checkbox" name=" ...

  3. Strut2 的 Action获取JSP 页面参数的方法

    struts2 Action获取表单传值1.通过属性驱动式JSP:<form action="sys/login.action" method="post" ...

  4. Struts中Action三种接收参数的方式?

    前言: 前面已经有一篇随笔介绍了Struts2的大概原理.本文就Struts2中Action与jsp页面进行数据对接时介绍几种常见方法! 值栈ValueStack 3个Action Action1 p ...

  5. struts框架中OGNL表达式的使用之jsp页面获取action中的属性值

    在jsp页面中获取action中的值: 1.写一个action类OgnlAction类: 需要注意的地方: 如果在aciton中直接使用ognl表达式,将值存储的值栈中,是不能通过跳转将值传到jsp页 ...

  6. struts2:JSP页面及Action中获取HTTP参数(parameter)的几种方式

    本文演示了JSP中获取HTTP参数的几种方式,还有action中获取HTTP参数的几种方式. 1. 创建JSP页面(testParam.jsp) <%@ page language=" ...

  7. struts2中怎么把action中的值传递到jsp页面

    对于如何把struts2的action中的值传到jsp页面中,主要的方法有2种: 使用转发视图利用request域中储存所需的值 使用重定向时存储数据进入session使其在jsp中可以获得 下面,让 ...

  8. Struts+Hibernate+jsp页面 实现分页

    dao层数据库代码: package com.hanqi.dao; import java.util.ArrayList; import java.util.List; import org.hibe ...

  9. spring3 jsp页面使用<form:form modelAttribute="xxxx" action="xxxx">报错,附连接数据库的spring MVC annotation 案例

    在写一个使用spring3 的form标签的例子时,一直报错,错误信息为:java.lang.IllegalStateException: Neither BindingResult nor plai ...

随机推荐

  1. Zabbix-部署

    目录 一. apt安装 Zabbix 部署结构图和主机环境 1.1 Zabbix-server 安装配置 1.1.1 安装zabbix仓库 1.1.2 安装Zabbix server.web前端.ag ...

  2. 挺好用的socks5库go-socks5

    1.挺好用的socks5库 github.com/armon/go-socks5 2.示例代码 // Create a SOCKS5 server conf := &socks5.Config ...

  3. 很好的awk教程

    讲的内容配合分析web log ,疗效很好! http://www.ibm.com/developerworks/cn/linux/l-cn-awk-httplog/ 出差归来,哈哈,吐槽的不必写了, ...

  4. python中copy与deepcopy的区别

    目录 区别 python代码举例 区别 高级语言中变量是对内存及其地址的抽象 copy.copy(object), 拷贝的是内嵌套结构的地址引用,当前到结构发生变化的时候,浅拷贝也相应的改变. cop ...

  5. Jquery学习2---倒计时

    以下代码是mvc4.0代码,其功能是让页面上的数字3,变2,变1 然后跳转页面 @{ ViewBag.Title = "LoginOut"; } <html> < ...

  6. 1.scrapy框架

    Scrapy 是一个基于 Twisted 的异步处理框架.异步就是说调用在发出之后,这个调用就直接返回,不管有没有结果.(非阻塞关注的是程序在等待调用结果(消息.返回值)时的状态,指在不能立刻得到结果 ...

  7. 【MySQL】Centos7 yum安装MySQL5.7.25

    在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB. 安装操作 下载并安装MySQL官方的Yum ...

  8. #!/usr/bin/python

    它是用来指定用什么解释器运行脚本以及解释器所在的位置. 参考链接:https://www.cnblogs.com/qmfsun/p/6291982.html

  9. Pyqt5_Python运用过程中一些问题和技巧

    安装python3&pyqt5 1.         网下载python3.7安装包,安装时选择自定义安装,勾选上PIP 直接去官网上下载,一路下一步就可以了,然后将D:\Python37.D ...

  10. 最全的ASCII码对照表

    转自https://blog.csdn.net/jinduozhao/article/details/75398793 十进制代码 十六进制代码 MCS 字符或缩写 DEC 多国字符名 ASCII 控 ...