struts
baother0
这个作者很懒,什么都没留下…
展开
-
OGNL
package ognl;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class OgnlTest { public static void main(String[] args) throws Exception {原创 2013-04-30 16:01:28 · 990 阅读 · 0 评论 -
struts2分层体系架构
service包:package service;public interface LoginService { //用户登陆 public boolean isLogin (String username,String password);}service.impl包:package service.impl;import service.LoginSer原创 2013-05-05 20:39:47 · 1944 阅读 · 0 评论 -
struts2核心工作流程与原理
一个请求在Struts2框架中的处理大概分为以下几个步骤:1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求;2 这个请求经过一系列的过滤器(Filter)(主要是三层)的过滤器(Filter),如(ActionContextCleanUp、其他过滤器(SiteMesh等)、 FilterDispatcher)。注意这里是有顺序的,先ActionContextCl转载 2013-12-09 13:49:46 · 1255 阅读 · 0 评论 -
struts2输入校验
My JSP 'regist.jsp' starting page <!-- --> 用户注册 ---------------------------- <!-- username: password: repassword:原创 2013-05-05 20:38:42 · 715 阅读 · 0 评论 -
struts2拦截器
interceptor:自定义的拦截器必须要实现Interceptor接口1:编写实现Interceptor接口的类2:在struts.xml中文件中定义拦截器3:在action中使用拦截器package interceptor;import com.opensymphony.xwork2.ActionInvocation;import com.opensym原创 2013-05-05 20:39:30 · 668 阅读 · 0 评论 -
struts2文件上传
在进行文件上传的时候必须将表单的method属性设为post,将enctype的属性设为mutipart/form-data;package servlet;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;im原创 2013-05-05 20:42:49 · 964 阅读 · 0 评论 -
struts2文件下载
public class StreamResultextends StrutsResultSupportA custom Result type for sending raw data (via an InputStream) directly to the HttpServletResponse. Very useful for allowing users to download原创 2013-06-02 16:55:45 · 648 阅读 · 0 评论 -
struts2实现异步调用(xml与json)
处理xml<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%> "> My JSP 'getXML.j原创 2013-05-25 00:05:08 · 1034 阅读 · 0 评论 -
OGNL的使用方式
OGNL(Object Graph Navigation language)OgnlContext:上下文对象,存在一个唯一的叫做根的对象(root),可以通过程序设定上下文当中的那个对象作为根对象。在OGNL中,如果表达式没有使用#号,那么OGNL会从根对象中寻找该属性对应的get方法,如果寻找的不是根对象中的属性,那么则需要以#号开头告诉OGNL,去寻找你所指定原创 2013-05-06 20:14:36 · 876 阅读 · 0 评论 -
struts2 package标签属性
package元素的abstract属性表示该包是抽象的,不能直接使用,需要子包继承才可以使用。struts-default这个package就是abstract的,因此需要我们继承这个包来使用。package元素的namespace 属性起到命名空间分割的作用。通常我们将namespace的属性定义成页面所在的目录。原创 2013-05-05 20:42:32 · 1163 阅读 · 0 评论 -
struts2访问servlet API
服务器端代码测试单元测试有二种模式:1:):容器内测试(Jetty)2:):Mock测试(继承HttpServletRequest,HttpSession,HttpServletResponse等Servlet API)Preparable 接口的作用是让Action完成一些初始化的工作,这些初始化工作是放在Preparable接口的prepare方法中完成的,该方法会在execu原创 2013-05-05 20:40:12 · 689 阅读 · 0 评论 -
struts2异常处理
login.jsp username: password: LoginAction.javapackage action;import com.opensymphony.xwork2.ActionSupport;import exception.PasswordException;import exc原创 2013-05-05 20:39:11 · 701 阅读 · 0 评论 -
ActionContext
在Struts2中使用ValueStack、ActionContext、ServletContext、request、session等目录(?)[-]ValueStack如何得到值栈:如何将对象存入值栈:让值栈执行表达式来获得值:在JSP中跳过栈顶元素直接访问第二层:在JSP中访问值栈对象本身(而不是它们的属性)ActionContextValu转载 2013-05-05 20:41:56 · 1233 阅读 · 0 评论 -
struts2结果类型分析
采用请求转发的方式完成表单内容的插入会造成表单的数据的重复插入。}else if (path.equals("/add")) { try { Emp emp = this.getEmp(request); dao.addEmp(emp); request.getRequestDispatcher("list.do").forward原创 2013-05-05 20:40:40 · 618 阅读 · 0 评论 -
struts2结果类型分析
采用请求转发的方式完成表单内容的插入会造成表单的数据的重复插入。}else if (path.equals("/add")) { try { Emp emp = this.getEmp(request); dao.addEmp(emp); request.getRequestDispatcher("list.do").forward原创 2013-05-05 20:40:27 · 734 阅读 · 0 评论 -
防止表单重复提交二种方式
1)通过重定向:详解结果分析一章2)通过Session Token (Session 令牌)分析第二种首先必须用struts2提供的表单标签库。 My JSP 'token.jsp' starting page <!-- --> username:原创 2013-05-05 20:37:22 · 691 阅读 · 0 评论 -
struct2的类型转换
1:struts2 的类型转换,对于8个原生的数据类型以及Date,String等常见的类型,struts2 可以使用内建的类型转化器实现自动的转换;但是对于自己定义的对象类型来说,就需要我们自己制定类型转换方式了。2:对于自定义的类型转换器来说需要提供3个信息:action的名字,action中要转换的属性的名以及该属性的类型转换器。其中Action的名字是通过属性文件名来获原创 2013-05-05 20:36:35 · 973 阅读 · 0 评论 -
拦截器应用例子
用户是否登录拦截器:package interceptor;import action.LoginAction;import com.opensymphony.xwork2.Action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionInvocation;im原创 2013-05-05 20:37:43 · 714 阅读 · 0 评论