新建一个maven项目
添加maven依赖
org.apache.struts
struts2-core
2.3.33
org.projectlombok
lombok
1.16.8
javax.servlet.jsp.jstl
jstl
1.2
javax.servlet
jsp-api
2.0
provided
javax.servlet
servlet-api
2.5
provided
然后建好java和resources根目录包
然后这个时候可以看到当右键resources根目录时多了一个Struts Config的选项
这时就可以新建一个名为struts的struts配置文件了(因为导了包)
如果之前没有在idea中用过struts2的话需要先下载插件:
idea左上角file—settings
然后左边Plugins,输入struts2,下载一下插件
在web.xml设置struts2的过滤器
Archetype Created Web Application struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* index.jsp
然后创建如图项目结构
tips:因为只有struts2框架所以没办法连后端数据库,所以dao和service就这样空着了
然后先来写一个测试是否能够访问的小例子
action相当于controller
在action包下创建一个测试action
package com.r.action;/*** @Author Tuerlechat,* @Date 2022/11/8*/
public class TestAction {public String execute() {System.out.println("TestAction类被调用了。");return "test"; //返回的结果}
}
然后在webapp中新建一个test.jsp
<%--Created by IntelliJ IDEA.User: Tuerlechat,Date: 2022/11/8Time: 19:27To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
Test
我是test页面
然后配置struts2的配置文件
/test.jsp
这时候可能会爆红,但不需要管
然后部署tomcat,运行
控制台显示
可以看到控制台显示的时候说明成功访问了test路径,也就是成功进入到了TestAction这个类中的方法
说明搭建struts2框架环境成功
package com.r.action;import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.r.model.User;
import lombok.Getter;
import lombok.Setter;import java.util.Map;/*** @Author Tuerlechat,* @Date 2022/11/8*/
@Getter
@Setter
public class HelloStrutsAction extends ActionSupport {private User user;@Overridepublic String execute() throws Exception {System.out.println("用户名:" + user.getUserName());System.out.println("密码:" + user.getPassword());if ("admin".equals(user.getUserName()) && "1234567".equals(user.getPassword())) {// 将user对象保存在session中Map session = null;session = ActionContext.getContext().getSession();session.put("user_session", user);return "success";} else {return "fail";}}}
实体类
package com.r.model;import lombok.Data;@Data
public class User {private String userName;private String password;}
前端页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
登录
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" language="java" %>
登录成功
欢迎您,${sessionScope.get("user_session").userName}
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
登录失败
用户名或密码不匹配。
struts2配置文件
/success.jsp /fail.jsp /test.jsp
登录页面
登录成功
登录失败
开启服务器即开启无限404报错循环模式
无论是action,jsp,html什么都不行
全部404,而且后端不报错
说明是项目结构有问题
具体原因不清楚
点击idea左面file下的Project Structure
然后点击Facets,添加Struts2
然后ok
然后按图步骤添加
这两个项目结构配置,添加删除,然后tomcat也重新配置一下,无限循环到好了为止(一般是重新改一次就好了)
上一篇:爱面包没得到句子