栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

SSH之Struts入门

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SSH之Struts入门

一、配置struts 1、相关jar依赖

            org.apache.struts
            struts2-core
            2.5.13
        


        
            javax.servlet
            javax.servlet-api
            4.0.1
            provided
        
2、web.xml配置

  Archetype Created Web Application
	
		struts
		org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
	
	
		struts
		*.action
	


3、框架配置文件配置(三个)

 struts-base.xml   




	
	
	
	
	

	
		regex:.*
	

 struts.xml 




	
	
	
	
	
	

struts-sy.xml 里面做配置




	
		
		
			/bookEdit.jsp
		
	
二、动态方法调用 1、第一种调用方式

		
		
			/bookEdit.jsp
		
	

 新增
修改
删除

Demo1Action :

package com.ysq.web;
import com.opensymphony.xwork2.ActionSupport;

public class Demo1Action extends ActionSupport{
	
	public String add() throws Exception {
		System.out.println("add方法....");
		return "bookEdit";
	}
	public String del() throws Exception {
		System.out.println("del方法....");
		return "bookEdit";
	}
	public String edit() throws Exception {
		System.out.println("edit方法....");
		return "bookEdit";
	}
}

demo1.jsp(操作界面):

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


struts的动态方法调用
新增 
修改
删除
删除

运行结果:

 

 

2、第二种调用方式
      
      /{2}.jsp
    

 删除

三、传参 1、Modeldriver接口传参

①、新建实体类

package com.ysq.entity;

public class User {
	private String uid;
	private String uname;
	public String getUid() {
		return uid;
	}
	public void setUid(String uid) {
		this.uid = uid;
	}
	public String getUname() {
		return uname;
	}
	public void setUname(String uname) {
		this.uname = uname;
	}
	@Override
	public String toString() {
		return "User [uid=" + uid + ", uname=" + uname + "]";
	}
}

②、Demo1Action 继承 ActionSupport 实现 ModelDriven

package com.ysq.web;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.ysq.entity.User;

public class Demo1Action extends ActionSupport implements ModelDriven,ServletRequestAware,ServletResponseAware{
	private User user1=new User();
	
	public String list() throws Exception {
		System.out.println("list方法....");
		System.out.println(user1);
		return "bookEdit";
	}
	public User getModel() {
		return user1;
	}	
}

③、 demo1.jsp:

Modeldriver传参

运行结果:

 

2、set方法传参

①、Demo1Action

package com.ysq.web;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.ysq.entity.User;

public class Demo1Action extends ActionSupport implements ModelDriven,ServletRequestAware,ServletResponseAware{
	private User user1=new User();
	private String sex;
	
	public String getSex() {
		return sex;
	}
 
	public void setSex(String sex) {
		this.sex = sex;
	}
	
	public String list() throws Exception {
		System.out.println("list方法....");
		System.out.println(sex);
				return "bookEdit";
	}

	
	public User getModel() {
		return user1;
	}	
}

②、 demo1.jsp :

set方法传参

 

运行结果:

 

 

3、通过对象属性传参(可同时传多个对象)

①、Demo1Action

package com.ysq.web;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.ysq.entity.User;

public class Demo1Action extends ActionSupport implements ModelDriven,ServletRequestAware,ServletResponseAware{
	private User user1=new User();
	private String sex;
	private User user2;
	 
	public User getUser2() {
		return user2;
	}
 
	public void setUser2(User user2) {
		this.user2 = user2;
	}
 
	public String list() throws Exception {
		System.out.println("list方法....");
//		System.out.println(user1);
//		System.out.println(sex);
		System.out.println(user2);
		return "bookEdit";
	}

	
	public User getModel() {
		return user1;
	}
	

}

②、demo1.jsp

对象属性传参

 

运行结果:

四、Struts与Tomcat的集成

两种方式:

1、类置类(偶尔用一下,用的不多)
public String list() throws Exception {
		//内置类
		HttpServletRequest request = ServletActionContext.getRequest();
		request.setAttribute("age", 18);
	}

在bookEdit.jsp界面接收 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


成功界面
内置类:${age}

运行结果:

 2、实现接口

①、 Demo1Action 继承ActionSupport 实现ModelDriven,ServletRequestAware,ServletResponseAware
②、重写ServletRequestAware,ServletResponseAware方法

package com.ysq.web;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.ysq.entity.User;

public class Demo1Action extends ActionSupport implements ModelDriven,ServletRequestAware,ServletResponseAware{
	private User user1=new User();
	private String sex;
	private User user2;
	private HttpServletRequest req;
	private HttpServletResponse resp;	
	public String list() throws Exception {
		System.out.println("list方法....");
		System.out.println(user1);
//		System.out.println(sex);
//		System.out.println(user2);
		//内置类
		HttpServletRequest request = ServletActionContext.getRequest();
		request.setAttribute("age", 18);
		//实现接口
		req.setAttribute("hobby", "xxxxxxxxxx");

		return "bookEdit";
	}
	
	public User getModel() {
		return user1;
	}
	
	@Override
	public void setServletResponse(HttpServletResponse  arg0) {
		this.resp=arg0;
		
	}
 
	@Override
	public void setServletRequest(HttpServletRequest arg0) {
		this.req=arg0;
		
	}
}

bookEdit.jsp页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


成功界面
内置类:${age}
接口:${hobby}

运行结果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/321073.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号