IntelliJ IDEA中使用综合使用Maven和Struts2

在Intellij IDEA中手动使用Maven创建Web项目并引入Struts2

创建一个新的Maven项目

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

建好项目之后点击左下角的enable auto import

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

项目部署

IntelliJ IDEA中使用综合使用Maven和Struts2

在Moudules中添加组件

IntelliJ IDEA中使用综合使用Maven和Struts2

配置webapp的路径

IntelliJ IDEA中使用综合使用Maven和Struts2

配置web.xml的路径

IntelliJ IDEA中使用综合使用Maven和Struts2

Facts: 表示当前项目的适配服务组件。可看到此项目已是一个Web项目了。

IntelliJ IDEA中使用综合使用Maven和Struts2

Aftifacts: 这个Aftifacts描述了当前项目发布的信息。现在进行添加,从Modeles中选择。

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

预览web exploded

IntelliJ IDEA中使用综合使用Maven和Struts2

说明:A: 现在Artifacts已有了发布的项目了(idea中准确的说应是Modele) B:output root目录描述了当前项目的编译目录及适配服务。

如有需要添加lib目录

IntelliJ IDEA中使用综合使用Maven和Struts2

项目结构一览

IntelliJ IDEA中使用综合使用Maven和Struts2

部署服务器

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

添加artifact

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

添加tomcat依赖包

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

IntelliJ IDEA中使用综合使用Maven和Struts2

添加Struts2.2.1依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.action</groupId>
<artifactId>action</artifactId>
<version>1.0-SNAPSHOT</version> <!-- 属性配置 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies> <!-- struts2依赖包 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.2.1</version>
</dependency> <!-- junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency> </dependencies> <build>
<finalName>action</finalName>
</build> </project>

在src/main/java下添加一个包,包名为controller

IntelliJ IDEA中使用综合使用Maven和Struts2

在controller包中添加如下的类login.java

package controller;

public class login {

    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;
} public String execute() {
if (username.equals("tuhooo") && password.equals("123")) {
return "toTrue";
}
else {
return "toFalse";
}
} }

在webapp下添加如下的几个jsp页面:

login.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form name="login" method="post" action="login.action">
<p>
用户:
<input type="text" name="username" id="textfield" />
<br/>
<br/>
密码:
<input type="text" name="password" id="textfield2" />
<br/>
<br/>
<input type="submit" name="button" value="提交" />
</p>
</form>
</body>
</html>

true.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
welcome! :)
</body>
</html>

false.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
wrong! :(
</body>
</html>

添加strutt配置文件

将其直接放在resources目录下面

IntelliJ IDEA中使用综合使用Maven和Struts2

struts.xml的内容为:

<?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> <package name="default" extends="struts-default" namespace="/"> <action name="login" class="controller.Login">
<result name="toTrue">/true.jsp</result>
<result name="toFalse">/false.jsp</result>
</action> </package> </struts>

配置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"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list> <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> </web-app>

java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

后来在Moudule中发现Maven的中添加的依赖包都没有加进去

之前这个还可以运行,然后就报这个错了

com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration

后来分析是jass这个包有问题

上一篇:DataTable和DataRow利用反射直接转换为Model对象的扩展方法类


下一篇:Golang源码学习:使用gdb调试探究Golang函数调用栈结构