struts2 使用注解方式配置
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 使用注解方式配置的更多相关文章
- 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 ...
- atitit.ajax bp dwr 3.的注解方式配置使用流程总结.....
atitit.ajax bp dwr 3.的注解方式配置使用流程总结..... 1. 下载 dwr.jar 1M 1 2. 配置注解方式..web.xml 1 3. Class 配置 2 4. 测试 ...
- SSH深度历险(十) AOP原理及相关概念学习+AspectJ注解方式配置spring AOP
AOP(Aspect Oriented Programming),是面向切面编程的技术.AOP基于IoC基础,是对OOP的有益补充. AOP之所以能得到广泛应用,主要是因为它将应用系统拆分分了2个部分 ...
- Spring Aop实例@Aspect、@Before、@AfterReturning@Around 注解方式配置
用过spring框架进行开发的人,多多少少会使用过它的AOP功能,都知道有@Before.@Around和@After等advice.最近,为了实现项目中的输出日志和权限控制这两个需求,我也使用到了A ...
- 跟着刚哥学习Spring框架--通过注解方式配置Bean(四)
组件扫描:Spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件. 特定组件包括: 1.@Component:基本注解,识别一个受Spring管理的组件 2.@Resposit ...
- SpringMVC的注解方式配置
SpringMVC支持使用注解方式配置,比配置文件方式更加灵活易用,是SpringMVC使用的主流模式. 1.在配置文件中开启SpringMVC的注解 <!-- 开启包扫描 --> < ...
- spring学习笔记 星球日two - 注解方式配置bean
注解要放在要注解的对象的上方 @Autowired private Category category; <?xml version="1.0" encoding=" ...
- Spring框架学习(6)使用ioc注解方式配置bean
内容源自:使用ioc注解方式配置bean context层 : 上下文环境/容器环境 applicationContext.xml 1 ioc注解功能 注解 简化xml文件配置 如 hibernate ...
- Spring boot 基于注解方式配置datasource
Spring boot 基于注解方式配置datasource 编辑 Xml配置 我们先来回顾下,使用xml配置数据源. 步骤: 先加载数据库相关配置文件; 配置数据源; 配置sqlSessionF ...
随机推荐
- jQuery Ajax请求提交 后台getParameter接收不到数据
今天遇到的问题,总结一下 jQuery的$ajax({ contentType:"application/json", //发送信息至服务器时内容编码类型. }) 这样的方式提交 ...
- unity, sceneview 中拾取球体gizmos
http://answers.unity3d.com/questions/745560/handle-for-clickable-scene-objects.html http://www.jians ...
- typeof和instanceof运算符
(1)typeof运算符用于判断某一个变量的数据类型,它可以作为函数来用,如typeof(a)可以返回变量a的数据类型:也可以作为一个运算符来使用,例如typeof a 也可以返回变量a的数据类型,不 ...
- angularjs实现IOS8自带计算器
最近看到一则面试题目,要求使用angularjs实现一个计算器,利用放假时间实现了一个仿iOS8风格的计算器,功能基本和iOS自带的计算器是一致的. 查看demo,接着给出实现过程. 首先创建angu ...
- CUICatalog: Invalid asset name supplied: (null) _configureCellForDisplay:forIndexPath
1.CUICatalog: Invalid asset name supplied: (null) 如果连续出现几个这样的错误,表示UIImageView为空 那么就需要检查UIImageView是否 ...
- IntelliJ IDEA配置svn
Settings→Version Control→General 输入svn客户端命令所在的路径 来自为知笔记(Wiz)
- 把docker当做绿色打包工具
如题,我只是把docker当成绿色版的各种环境的集成打包工具了 用到了docker的--net=host模式,这个暂时在mac下是有问题的,linux下正常使用,具体docker的网络模式参考这里,此 ...
- 冒泡算法C#
冒泡算法C# namespace数组排序 { classProgram { staticvoidMain(string[]args) { inttemp=; ,,,,,,,,}; #region该段与 ...
- android中的数据库操作
如何在android中调用数据库资源 在android中主要有两种方法来实现对数据库的访问,一种是adb shell方式,另一种是通过相关的android 的java类来间接的对数据库来进行操作.其中 ...
- Android SDK的docs访问速度很慢(新)
#设置环境变量 名称:ANDROID_SDK_HOME 值:我的为-->E:\android\android-sdk #代码编译及运行 1.把下面的代码保存为:AndroidDocRepair. ...