zoukankan      html  css  js  c++  java
  • Struts2学习笔记-基本结构

    一个普通的的web应用文件结构如下:

    1. 最上层是应用名,区分大小写,在浏览器输入应用名的时候,必须与应用名的大小一样,例如:localhost:8080/HelloWorld

    2. 在应用下,放有很多文件,其中WEB-INF文件夹为必须有的,其余的文件包括一些页面文件,或者样式文件,例如*.jsp,*.css文件等

    3. WEB-INF里面放有2个文件夹,lib和classes,和一个文件,web.xml,lib是放一些类库文件,classes是放.class文件,web.xml文件内,编写一些配置内容

    按照以上的文件结构编写后,会得出一个普通的web应用,如果想使用struts框架,只需要做一下的几个步骤

    1. 把struts2框架的类库放到WEB-INF/lib下

    2. 在web.xml文件中,添加struts2的核心过滤器Filter

    3. 在WEB-INF/classes下添加struts.xml配置文件

    下面看看具体实行

    我们先来写一个Action类,action类相当于MVC的控制器control,当用户发出请求信息到服务器时,struts2的机制,拦截器filter就会根据配置访问相应的action,struts2与struts1的区别是后者比较紧耦合,action类都要继承Action这个类,就是说,依赖servlet api,这样的话,这个类除了能在servlet api使用,而不能在其它不带这个框架的地方使用这个类,在struts2的action类里面,不需要继承Action这个类

    public class NewHelloWorld {
    
        private String userName;
        private String userPassword;
    
        public String getUserName() {
            return userName;
        }
    
        public String getUserPassword() {
            return userPassword;
        }
    
        public void setUserName(String userName) {
            this.userName = userName;
        }
    
        public void setUserPassword(String userPassword) {
            this.userPassword = userPassword;
        }
    
        public String execute() throws Exception {
    
            if (userName.equals("peter") && userPassword.equals("123456")) {
                return "success";
            } else {
                return "error";
            }
        }
    }

    现在有了Action类,但是用户请求的信息,struts2是无法知道它是如何处理的,必须配置这个类,与对应的请求地址对应,这样的映射配置在WEB-INF/classes/struts.xml里面

  • 相关阅读:
    Java集合(容器)学习
    Java中最基本的集合接口:初识Collection
    Java中的Overload和Override有什么区别
    Java程序国际化学习代码一
    Java中的io流学习(了解四大基类和基本步骤)
    忘记电脑连过的WiFi的密码了,但又想知道,该怎么办?
    你真的理解了for循环吗?反正我是没有
    Java中的“==操作符”和equals方法有什么区别
    Java中final、finally、finalize有什么区别?
    Thread--线程工作万花筒
  • 原文地址:https://www.cnblogs.com/oscar1987121/p/5307214.html
Copyright © 2011-2022 走看看