[JavaWeb基础] 007.Struts2的配置和简单使用

1.框架简介

采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架,用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。。目前为止,有Struts1和Struts2,用户可以根据自己的需求进行选择。

2.所需的lib包

可以去网上下载所有Struts需要的包,我这边是基于struts-2.3.24-all的。有以下的包:struts2-core-2.3.24,xwork-core-2.3.24,ognl-3.0.6,freemarker-2.3.22,commons-logging-1.1.3,commons-fileupload-1.3.1,commons-io-2.2

把这些包放置到WebRoot/WEB-INF/lib下面.

3.首先创建Action

package com.babybus.sdteam.action;

import java.util.List;

import com.babybus.sdteam.bo.ManageServlet;
import com.babybus.sdteam.vo.Student;
import com.opensymphony.xwork2.Action;

public class LoginAction implements Action
{
	// 用户名
	private String username; 
	// 密码
    private String password;
    // 存放列表集合
    private List<Student> resultList;
 
	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;
	}

	public List<Student> getResultList() {
		return resultList;
	}

	public void setResultList(List<Student> resultList) {
		this.resultList = resultList;
	}

	//执行
	@Override
	public String execute() throws Exception {
        
        String result = "loginSuccess";   
        System.out.println("登录成功,姓名:" + username + " 密码:" + password);
        
		ManageServlet manageservlet = new ManageServlet();
        resultList = manageservlet.getStudentByCondition(null);
        
		return result;
	}
}

4.配置struts.xml,必须放置在src下面,并保证文件名称正确

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"     "http://struts.apache.org/dtds/struts-2.0.dtd"> 
<struts>  
    <package name="MyWebProject1" namespace="/" extends="struts-default">   
  	<action name="login" class="com.babybus.sdteam.action.LoginAction">    
  	  <result name="loginSuccess">/UserList.jsp</result>    
	</action> 
    </package> 
</struts>

 5.配置Web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.0" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 <display-name />

 <filter>   
	<filter-name>struts2</filter-name>  
  	<filter-class>  
 		org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter   
	</filter-class> 
 </filter> 
  <filter-mapping>   
  	<filter-name>struts2</filter-name>   
  	<url-pattern>/*</url-pattern>  
  </filter-mapping> 

  <servlet>
    <servlet-name>Mangage</servlet-name>
    <servlet-class>com.babybus.sdteam.bo.ManageServlet</servlet-class>
  </servlet>
  

  <servlet-mapping>
    <servlet-name>Mangage</servlet-name>
    <url-pattern>/Mangage</url-pattern>
  </servlet-mapping>
  
  
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

6.如何遍历属性和列表

<body>
	<h1>欢迎${username}登陆成功!</h1> 
 	<table border="1" width="100%" >
 		<tr><th>uid</th><th>学生姓名</th><th>年龄</th><th>班级</th><th>操作</th></tr>
 		<s:iterator value= "resultList" id="student">
    	<tr>   
     		<td><s:property value="#student.id"/></td>   
     		<td><s:property value="#student.studentname"/></td>   
     		<td><s:property value="#student.age"/></td>   
     		<td><s:property value="#student.classname"/></td>   
     		<td>
     			<a href="AddUser.jsp?id=${student.id}">修改</a>|
     			<a href="Mangage?method=del&userid=${student.id}" onclick="return confirm('确定要删除么?')" }>删除</a>
     		</td>
    	</tr> 
		</s:iterator>
 	</table>
  	<a href="AddUser.jsp">增加<a/>
</body>

 通过以上的步骤我们就简单学会了Struts2的配置了,更深入的研究全靠自学了。

结语

  • 受益,掌握了Struts2的初级应用

 

本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 

转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4622269.html

原文地址:https://www.cnblogs.com/superdo/p/4622269.html