1、导入convention 包

2、java:

package com.struts.base.hello;





import java.io.IOException;

import java.io.PrintWriter;

import java.util.ArrayList;

import java.util.List;





import javax.servlet.http.HttpServletResponse;





import net.sf.json.JSONArray;





import org.apache.struts2.ServletActionContext;

import org.apache.struts2.convention.annotation.Action;

import org.apache.struts2.convention.annotation.Namespace;

import org.apache.struts2.convention.annotation.ParentPackage;

import org.apache.struts2.convention.annotation.Result;





import com.opensymphony.xwork2.ActionSupport;

import com.struts.base.model.User;





@Namespace("/wangh/test")

@ParentPackage("struts-default")

@Action(value = "mytest", results = { @Result(name = "success", location = "/base/convention/test.jsp") })

public class TestAction extends ActionSupport {





@Override

public String execute() throws Exception {

// List<User> users = new ArrayList<User>();

// for (int i = 0; i < 3; i++) {

// User user = new User();

// user.setUserName("zhanghua" + i);

// user.setPWD("pwd" + i);

// users.add(user);

// }

//

// // 获得response

// HttpServletResponse response = ServletActionContext.getResponse();

// response.setContentType("text/html");

// PrintWriter pw = null;

// try {

// pw = response.getWriter();

// pw.print(JSONArray.fromObject(users).toString());

// return "success";

// } catch (Throwable e) {

// e.printStackTrace();

// } finally {

// if (pw != null) {

// pw.close();

// }

// }

return SUCCESS;

}





@Action(value = "outjson")

public void outJSON() {

List<User> users = new ArrayList<User>();

for (int i = 0; i < 3; i++) {

User user = new User();

user.setUserName("zhanghua" + i);

user.setPWD("pwd" + i);

users.add(user);

}





// 获得response

HttpServletResponse response = ServletActionContext.getResponse();

response.setContentType("text/html");

PrintWriter pw = null;

try {

pw = response.getWriter();

pw.print(JSONArray.fromObject(users).toString());

pw.flush();

} catch (IOException e) {

e.printStackTrace();

} finally {

if (pw != null) {

pw.close();

}

}

}

}

注意方法注解访问方式  :

http://localhost:8080/strutsDemo/wangh/test/outjson.action

-----完

struts2 使用注解方式配置的更多相关文章

  1. atitit.ajax bp dwr 3.的注解方式配置使用流程总结 VO9o.....

    atitit.ajax bp dwr 3.的注解方式配置使用流程总结 VO9o..... 1. 安装配置 1 1.1. 下载  dwr.jar 1M 1 1.2. 配置注解方式..web.xml 1 ...

  2. atitit.ajax bp dwr 3.的注解方式配置使用流程总结.....

    atitit.ajax bp dwr 3.的注解方式配置使用流程总结..... 1. 下载  dwr.jar 1M 1 2. 配置注解方式..web.xml 1 3. Class 配置 2 4. 测试 ...

  3. SSH深度历险(十) AOP原理及相关概念学习+AspectJ注解方式配置spring AOP

    AOP(Aspect Oriented Programming),是面向切面编程的技术.AOP基于IoC基础,是对OOP的有益补充. AOP之所以能得到广泛应用,主要是因为它将应用系统拆分分了2个部分 ...

  4. Spring Aop实例@Aspect、@Before、@AfterReturning@Around 注解方式配置

    用过spring框架进行开发的人,多多少少会使用过它的AOP功能,都知道有@Before.@Around和@After等advice.最近,为了实现项目中的输出日志和权限控制这两个需求,我也使用到了A ...

  5. 跟着刚哥学习Spring框架--通过注解方式配置Bean(四)

    组件扫描:Spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件. 特定组件包括: 1.@Component:基本注解,识别一个受Spring管理的组件 2.@Resposit ...

  6. SpringMVC的注解方式配置

    SpringMVC支持使用注解方式配置,比配置文件方式更加灵活易用,是SpringMVC使用的主流模式. 1.在配置文件中开启SpringMVC的注解 <!-- 开启包扫描 --> < ...

  7. spring学习笔记 星球日two - 注解方式配置bean

    注解要放在要注解的对象的上方 @Autowired private Category category; <?xml version="1.0" encoding=" ...

  8. Spring框架学习(6)使用ioc注解方式配置bean

    内容源自:使用ioc注解方式配置bean context层 : 上下文环境/容器环境 applicationContext.xml 1 ioc注解功能 注解 简化xml文件配置 如 hibernate ...

  9. Spring boot 基于注解方式配置datasource

    Spring boot 基于注解方式配置datasource 编辑 ​ Xml配置 我们先来回顾下,使用xml配置数据源. 步骤: 先加载数据库相关配置文件; 配置数据源; 配置sqlSessionF ...

随机推荐

  1. PHP使用libevent实现高性能httpServer

    今天发现php也有一个libevent的扩展,安装后尝试下了一个webserver(httpserver), 发现性能还不错,逻辑很简单,每秒响应速度1800~4000次/s 代码如下 <?ph ...

  2. 如何在Windows 下安装Python

    1.  安装源程序的选择 官网:https://www.python.org/downloads/ 选择版本下载,根据实际计算机位数(64位),下载的为: Python-2.7.10.amd64.ms ...

  3. Python 统计IIS日志行数

    __author__ = 'Administrator' import codecs def blocks(file, size=65536): while True: b = file.read(s ...

  4. webStorm 注册码 (备用)

    webStorm : UserName:William ===== LICENSE BEGIN ===== 45550-12042010 00001SzFN0n1bPII7FnAxnt0DDOPJA  ...

  5. Oracle中的不等于号

    今天碰到一个Oracle不等于的问题,最后搜索了一下,发现下面资料,拿来跟大家分享一下   关于Oracle中的不等于号: 在Oracle中, <> != ~= ^= 都是不等于号的意思. ...

  6. Saiku操作界面的简化

    在安装完毕Saiku后,由于是社区版本,所以界面上存在很多升级为商业版的文字.为了使得系统不那么碍眼,可通过如下方式更改来去除相应的内容: 1.去除查询页面的升级为商业版的提示 You are usi ...

  7. .NET,Cookie,写Cookie,取Cookie

    Cookie是一段文本信息,在客户端存储 Cookie 是 ASP.NET 的会话状态将请求与会话关联的方法之一.Cookie 也可以直接用于在请求之间保持数据,但数据随后将存储在客户端并随每个请求一 ...

  8. lucene.net helper类 【结合盘古分词进行搜索的小例子(分页功能)】

      转自:http://blog.csdn.net/pukuimin1226/article/details/17558247 添加:2013-12-25 更新:2013-12-26 新增分页功能. ...

  9. 【转】如何使用PhoneGap打包Web App

    如何使用PhoneGap打包Web App 最近做了一款小游戏,定位是移动端访问,思来想去最后选择了jQuery mobile最为框架,制作差不多以后,是否可以打包成App,恰好以前对PhoneGap ...

  10. 剑指offer系列44---只出现一次 的数字

    [题目]一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. * [思路]异或性质:数异或自己即为0: * 一个数组中,从头到尾异或的结果为不重复数字异或结果. ...