zoukankan      html  css  js  c++  java
  • Struts2整理+课堂代码+注意事项

    1.在Struts配置文件的<package   中的 namespace默认是namesopace="/".

        当生成namespace=“abc/”(abc是自己定义的,类似于html里的css样式中的class)那么在index.jsp测试跳转的<a  href ="abc/test01.action"></a>

      注意:.action后缀,在没有更改默认的情况下,可以不写,默认就是.action。

       这时候就必须在前面加abc/   解释:也就是当action在处理请求的时候是寻找abc/下的test01.action,然后执行系一部的转发跳转操作。

      在Struts.xml 配置文件的<action   中的 name=“test01”前面可以不加abc/。

    2.修改默认值

    要在<struts>标签下加<constant></constant>.   constant里面name="struts.action.extension"是默认值,不可以改,value=""可以更改(指更改默认后缀.action)

    解释:上图中的valu=“do,action,,”只的是后缀可以说.do或.action或者是什么都不加的

    3.result

    result中的name=“success”是默认返回值,类型是String型

    4.action 中的class指的是com.hanqi.action包下的TestAction类,method="test"指的是类中的test方法

    具体代码如下:

     

      

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    首页
    <br><br>
    
    <a href="abc/test01.do">测试页面01</a>
    
    <br><br>
    <a href="test02.action">测试页面02</a>
    
    </body>
    </html>
    

      

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    测试页面01
    
    </body>
    </html>
    

      

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    登录页
    <br><br>
    <form action="Login.action" method="post">
    
    用户名:<input type="text"  name="username" />
    <br><br>
    密码:<input type="password"  name="password" />
    <input  type="submit"  value="登录">
    </form>
    </body>
    </html>
    

      

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC
    	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    	"http://struts.apache.org/dtds/struts-2.3.dtd">
    
    <struts>
    <!-- 修改默认值 -->
    <constant name="struts.action.extension" value="do,action,,"></constant>
    
    <!-- package对功能模块进行分组管理 -->
        <package name="index" extends="struts-default"
        namespace="/">
        
        	<!-- action 处理的请求 -->
        	
        	<!-- action 处理的默认请求 -->
        	<action name="test01" class="com.opensymphony.xwork2.ActionSupport" 
        	method="execute">
        		<result name="success">/WEB-INF/pages/test01.jsp</result>
        	</action>
        	
        	<action name="test02" class="com.hanqi.action.TestAction"
        	method="test">
        		<result name="ok" >/WEB-INF/pages/test02.jsp</result>	
        		<result name="notok">/WEB-INF/pages/error.jsp</result>
        		
        	</action>
        	<!-- 登入 -->
        	<action name="Login" class="com.hanqi.action.TestAction"
        	method="login">
        		<result>/WEB-INF/pages/Main.jsp</result>	
        		<result name="fail" >/WEB-INF/pages/error.jsp</result>
        	</action>
        
        </package>
        
    </struts>
    

      

    package com.hanqi.action;
    //自定义的Action 类
    public class TestAction {
    
    	//Action 方法
    	public String test()
    	{
    		int i=1;
    		if(i==1)
    		{
    			return "ok";
    		}
    		else
    		{
    			return "notok";
    		}
    	}
    	
    	//验证登录的方法
    	public String login ()
    	{
    		String rtn ="fail";//定义返回值,<result name="fail">
    		//验证登录
    		System.out.println("username="+username+ "   password="+password);
    		
    		if(username!=null&&password!=null
    				&&username.equals("admin")&&password.equals("123456"))
    		{
    			rtn="success";
    		}
    		return rtn;
    	}
    	
    	private  String username;
    	private  String password;
    	
    	public String getUsername() {
    		return username;
    	}
    
    	public void setUsername(String username) {
    		this.username = username;
    	}
    
    	public String getPassword() {
    		return password;
    	}
    
    	public void setPassword(String password) {
    		this.password = password;
    	}
    	
    	
    }
    

      

  • 相关阅读:
    【leetcode】416. Partition Equal Subset Sum
    【leetcode】893. Groups of Special-Equivalent Strings
    【leetcode】892. Surface Area of 3D Shapes
    【leetcode】883. Projection Area of 3D Shapes
    【leetcode】140. Word Break II
    【leetcode】126. Word Ladder II
    【leetcode】44. Wildcard Matching
    【leetcode】336. Palindrome Pairs
    【leetcode】354. Russian Doll Envelopes
    2017.12.22 英语面试手记
  • 原文地址:https://www.cnblogs.com/liuyanzeng/p/6058353.html
Copyright © 2011-2022 走看看