入门struts2.0
框架是什么?
1.应用程序的半成品。
2.可重用行公共的结构。
3.按一定规则组织的一组组件。
model2 其实并不是一种全新的概念,很对人指出model2其实正好是经典的"模型(model) - 控制器(controller)- 视图(view)"
即mvc设计模式(mvc设计模式最早是从smalltalk语言中的mvc框架抽象出来的)。对于javaweb开发人员,mvc设计模式和model2模型是等效的。
model2在很多地方还被称为"基于action的框架";
struts的简单配置。
工具(MyEclipse)→ 创建web工程 → 右击工程名字选到myeclipse,然后在添加,add struts....
创建完成后,工具会自动创建好struts.xml 还会配置好WEB-INF下的web.xml,!ps:web,xml.文件不需要修改
package com.obtk.struts; import java.util.Map; import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionContext; /**
* 计算两个叔的结果
* */
public class add implements Action {
private int x; // 第一个数
private int y; // 第二个数
private int cunot; // 结果
private String op; // 方法 public String execute() throws Exception {
String reslt = "defeated";
// 如果op等于add,那么就是相加
if (this.getOp().equals("add")) {
this.setCunot(this.getX() + this.getY());
reslt = "successs";
}
// 保存放map里面。作用域是request
Map<String, Object> request = (Map) ActionContext.getContext().get(
"request");
request.put("count", getCunot());
return reslt;
} public int getX() {
return x;
} public void setX(int x) {
this.x = x;
} public int getY() {
return y;
} public void setY(int y) {
this.y = y;
} public String getOp() {
return op;
} public void setOp(String op) {
this.op = op;
} public int getCunot() {
return cunot;
} public void setCunot(int cunot) {
this.cunot = cunot;
} }
实现Action 接口
<?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="test" extends="struts-default" namespace="/">
<action name="add" class="com.obtk.struts.add">
<result name="successs">/successs.jsp</result>
</action>
</package>
</struts>
配置struts.xml的代码
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>结果页面</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
计算结果 ${param.x }+${param.y }=${count}
</body>
</html>
successs.jsp页面代码
敲完代码.在浏览器敲 http://localhost:8080/Struts1/add.action?x=10&y=20&op=add 就会显示结果,
入门struts2.0 ,今天刚刚学的,勿喷,谢谢。
218786602QQ群,欢迎大家一起讨论。
入门struts2.0的更多相关文章
- Struts2.0笔记二
Mvc与servlet 1.1 Servlet的优点 1. 是mvc的基础,其他的框架比如struts1,struts2,webwork都是从servlet基础上发展过来的.所以掌握servle ...
- struts2.0整合json
框架:struts2.0+hibernate2+spring 今天写代码时,需要用到json,我就直接加了两个jar包:json-lib-2.1-jdk15.jar,struts2-json-plug ...
- [转]初探Struts2.0
本文转自:http://blog.csdn.net/kgd1120/article/details/1667301 Struts作为MVC 2的Web框架,自推出以来不断受到开发者的追捧,得到用广泛的 ...
- Struts2.0 去掉action后缀名
刚刚接触Struts2.0,发现默认请求都会带着后缀名:action 就如下图,url地址中会暴露login.action(请原谅struts拼写错误..) 作为一个URL简洁爱(chu)好(nv)者 ...
- (转)struts2.0配置文件、常量配置详解
一.配置: 在struts2中配置常量的方式有三种: 在struts.xml文件中配置 在web.xml文件中配置 在sturts.propreties文件中配置 1.之所以使用struts.prop ...
- struts2.0 struts.xml配置文件详解
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&quo ...
- Struts2.0+Spring3+Hibernate3(SSH~Demo)
Struts2.0+Spring3+Hibernate3(SSH~Demo) 前言:整理一些集成框架,发现网上都是一些半成品,都是共享一部分出来(确实让人很纠结),这是整理了一份SSH的测试案例,完全 ...
- struts2.0中struts.xml配置文件详解
先来展示一个配置文件 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration ...
- struts2.0 s标签_小小鸟_百度空间
struts2.0 s标签 1. Struts2页面开发中常用标签使用说明 1.1.往action里传值的使用方式: <input name="userName" type= ...
随机推荐
- java的4种代码块
一.普通代码块 直接在一个方法中出现的{}就称为普通代码块,例子程序如下: public class CodeDemo01{ public static void main(String[] args ...
- DG的Switchover切换
用户可以使用角色管理服务,进行主.备库的计划中的角色切换,这个叫switchover,或者是非计划中的角色切换,叫failover. 目的:实现主库(orcl)和从库(standby)的切换 主库参数 ...
- PBOC金融IC卡,卡片与终端交互的13个步骤,简介-第一组(转)
两个PPT结合起来--一些基础介绍--每一步的详细细节还要去研读文档 EMV-全球标准PBOC-国内标准 ----------------------一:必选:应用选择应用选择的方法:目录选择法.AI ...
- iOS开发 点击某处横屏竖屏切换
typedef NS_ENUM(NSInteger, UIInterfaceOrientation) { UIInterfaceOrientationUnknown = UIDe ...
- HashSet和HashMap的区别
HashSet和HashMap的区别.Java的HashSet类是由哈希表支持.它不保证 set 的迭代顺序:特别是它不保证该顺序恒久不变.此类允许使用 null 元素.HashSet类为基本操作提供 ...
- swift_Dictionary 字典
// // main.Swift // 字典 // // Created by zhangbiao on 14-6-15. // Copyright (c) 2014年 理想. All rig ...
- centos7查看端口命令
查看Centos端口命令: # netstat -lntp #查看监听(Listen)的端口# netstat -antp #查看所有建立的TCP连接其他关于查看服务器网络信息命令:1.查看Linux ...
- sqlite字段属性删除方法
Sqlite 不支持直接修改字段的名称. 我们可以使用别的方法来实现修改字段名. 1.修改原表的名称 ALTER TABLE table RENAME TO tableOld; 2.新建修改字段后的表 ...
- ArcGIS创建tpk切片缓存
一. 背景知识 1. tpk是什么? 从地图或底图生成切片,并将切片进行打包从而创建单个压缩的 .tpk 文件.切片包(.tpk)是在地图或栅格数据集中能作为 Web 切片或 Web 高程图层发布的一 ...
- MEF 生命周期PartCreationPolicy
为什么要单独把这个生命周期捞出来单独说一说呢?因为我今天就被这个东东坑了一把……新加了一个界面,第二次打开界面的时候会报错“指定的元素已经是另一个元素的逻辑子元素”.好嘛,我一看,哟,感觉就是xaml ...