MyException - 我的异常网
当前位置:我的异常网» J2EE » J2EE学习札记——Struts2的部署和使用

J2EE学习札记——Struts2的部署和使用

www.MyException.Cn  网友分享于:2013-01-08  浏览:2次
J2EE学习笔记——Struts2的部署和使用

首先在 Struts2官网上下载 struts2的 包 网址 :http://struts.apache.org/download.cgi#struts221

用这个Full Distribution:

  • struts-2.3.8.-all.zip (76mb) [PGP] [MD5]

解压以后找到 lib里的jar 文件: 主要用 以下几个:



把这几个包 导入   你的web网站下的WEB-INF\lib中   ;      Struts部署完成:


下面开始使用    新建一个  webproject,   包含以下几项:



首先更改web.xml  文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
  
  <!-- 定义struts2的核心Filter -->
  
  <filter>
  
  <filter-name>struts2</filter-name>
  <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  
  
  </filter>
  
  <!-- 让Struts2的核心Filter拦截所有请求 -->
  
  
  
  <filter-mapping>
  
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
  
  </filter-mapping>
  
  
  
  
  
</web-app>
-------------------------------------------------------------------------------------
Login.jsp页面:


<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

<%@taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>Login.jsp</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
   <s:form action="login">
   
   <s:textfield name="username" key="用户名"></s:textfield>
   <s:textfield name="password" key="密码"></s:textfield>
   
   <s:submit key="login" value="登陆"></s:submit>
   
   
   </s:form>
  </body>
</html>


---------------------------------------------------------------------
error.jsp


<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'error.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
  登陆异常!!
  </body>
</html>

-------------------------------

welcome.jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'welcome.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
    登陆成功!!
  </body>
</html>



好,然后  开始写     LoginAction.java    主要是登录验证用:


package xuyan.struts;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport{
       
	//定义封装请求参数的username和password属性
	
	private String username;
	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;
	}
	private String password;
	
	//定义用户请求的execute方法
	public String execute()throws Exception
	{
		//当用户名为ADMIN  和密码为 1234时  登陆成功
		
		
		if(getUsername().equals("Admin")&&getPassword().equals("1234"))
		{
			ActionContext.getContext().getSession().put("user", getUsername());
			return SUCCESS;
		}
		
		else
		{
			return  ERROR;
		}
		
	}
}

-----------------------------------

然后  开始写   struts.xml   文件:


<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
	"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<!-- 指定Struts 2配置文件的根元素 -->
<struts>
	<!-- 指定全局国际化资源文件 -->
	<constant name="struts.custom.i18n.resources" value="mess"/>
	<!-- 指定国际化编码所使用的字符集 -->	
	<constant name="struts.i18n.encoding" value="GBK"/>
	<!-- 所有的Action定义都应该放在package下 -->
	
	<package  name="xuyan.struts" extends="struts-default">
	
	  <action  name="login"  class="xuyan.struts.LoginAction" >
	     
	     <!-- 定义三个逻辑视图和物理资源之间的映射 -->
	     
	     <result  name="input">/Login.jsp</result>
	     <result  name="error">/error.jsp</result>
	     <result  name="success">/welcome.jsp</result>
	  
	  
	  </action>
	
	
	</package>
	
	
	
	
</struts>


至此    ,Struts2的   配置  和使用    已完成 ,希望对朋友们有帮助!!


文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有