对于刚接触编程的同学,对框架只是还不是很了解,本文主要介绍在Idea上配置Struts,实现简单的页面跳转,以及页面参数传递。


在进行代码编写之前先对Idea进行一个简单了解,对于长时间接触编程的,对于Eclipse或者MyEclipse并不陌生,想当初刚接触编程的时候配置Eclipse运行环境花费了大量的时间,但作为一个程序员来说,我还是建议大家尽量运用Idea,举一个简单的例子,在Idea中进行Debug,那是很简单的,只需要在代码进行点击,就可以直接进入Debug状态,对于整个进程的参数都可以看得到,一目了然,这只是一个简单的一个功能,还有很多等待着小伙伴去探索,我是感觉用了Idea就不想用Eclipse了,闲话说到这,下面看代码,首先解释一下,我用的是Idea社区办2016.3

一、Struts简单介绍

① 首先Struts是一个MVC框架,是Apache的一个开源框架,感觉哪里都有Apache这个组织

② Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求

二、Struts工作流程

① 客户端(浏览器)发送请求

② 请求通过http协议发送给服务器

③ 服务器对请求进行拦截,这个是在web.xml文件中进行配置

④ web.xml文件对struts.xml文件映射

⑤ 映射到指定的action,返回resoult

⑥ 根据resoult指定对应的jsp页面

三、 Struts详细配置

1 建立Java项目,这一步比较简单,大家看一下就知道了

2 选择Java,并勾选Struts2,默认选择Doweload,这样就不用添加Jar包了

3 添加项目名称,点击下一步即可,这时页面会显示在下载Jar包

4 整个项目的效果,这样Jar包以及配置文件都已经好了

5 配置服务器,点击右上角的,对服务器进行配置,我用的是Tomcat服务器,点击+选择Tomcat Server,选择Local

6 对服务器进行配置,指定Tomcat路径,端口等

7 点击Deployment,点击+,点击Artifact,进行路径配置,该路径相当于Eclipse项目Web Root中的路径,添加名字,点击apply保存,服务器配置完成。

8 对于web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>

9 index.jsp页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>登录页面</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/test" method="post">
username:<input name="username" type="text"><br>
password:<input name="password" type="password"><br>
<input type="submit" value="提交">
</form>
</body>
</html>

10 struts.xml配置

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd"> <struts>
<package name="Struts" extends="struts-default">
<action name="test" class="com.Demo">
<result name="success">
success.jsp
</result>
<result name="error">
error.jsp
</result>
</action>
</package>
</struts>

11 创建在com package下创建class Demo

package com;

/**
* Created by admin on 2018/3/30.
*/
public class Demo {
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("wyy")&password.equals("123456")){
return "success";
}
return "error";
}
}

四、总结

当项目进行部署以后,会直接跳转到index.jsp页面,当页面输入用户名,密码以后,会发送http://localhost:8080/demo/test请求,首先需要注意该请求首先会被web.xml文件的url拦截,符合要求进行拦截,进行下一步,然后跳转到com.Demo类中,对用户名和密码进行判断,我现在用的是虚拟的数据,实际情况会访问数据库,看看数据库中是否存在该用户,并且密码是否正确,真正的项目还会对密码进行加密,符合要求后返回success,这时候struts.xml中的action对返回结果进行判断,看看返回结果是否有success,然后进行页面跳转。

注:关于页面数据传递,首先在form表单中配置字段的name,在com.Demo对字段提供get set方法,这样就可以获取页面数据,注意字段的名字和类中属性的名字必须保持一致。

IDEA配置Struts框架的更多相关文章

  1. 【Struts】Struts框架配置详解

    1.首先将所必须的Jar包放到项目的WebRoot/WEB-INF/lib目录下. 如果你没有这些Jar文件,你可以到Struts官网上下载:http://struts.apache.org/.因为经 ...

  2. Spring+mybatis+struts框架整合的配置具体解释

    学了非常久的spring+mybatis+struts.一直都是单个的用他们,或者是两两组合用过,今天总算整合到一起了,配置起来有点麻烦.可是配置完一次之后.就轻松多了,那么框架整合配置具体解释例如以 ...

  3. Struts框架中struts-config.xml文件配置小结

    弄清楚struts-config.xml中各项元素的作用,对于我们构建web项目有莫大的好处.<struts-config>是struts的根元素,它主要有8个子元素,DTD定义 如下: ...

  4. Struts框架的核心业务

    Struts的核心业务 Struts核心业务有很多,这里主要介绍了比较简单一些的: 请求数据的处理,和数据自动封装,类型自动转换 1.Struts中数据处理 1.1.方式1:直接过去servletap ...

  5. Struts框架

    Struts是最早的Java开源框架之一,它是MVC设计模式的一个优秀实现. Struts定义了通用的Controller(控制器),通过配置文件(通常是 Struts -config.xml) Ec ...

  6. 使用Struts框架,实现用户登陆功能

    前言:本篇文章是本人这周学习的一个小结,在自我总结的同时,希望也能够给其他同学带来一点帮助.本文主要知识是参照书本上的知识点以及网上其他博客文章,在上机操练后的所得,具体源码主要来自http://bl ...

  7. Struts框架2ActionError类 内部资料 请勿转载 谢谢合作

    ActionError类从不独立进行错误处理,它们总是被存储在ActionErrors对象中.ActionErrors对象保存ActionError类的集合以及它们特定的属性值,我们可以使用自己定义的 ...

  8. Struts框架 内部资料 请勿转载 谢谢合作

    Struts框架 struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发. 本章详细讨论struts架构.我们将看到struts是如何清晰地区分控制,事务逻 ...

  9. Eclipse/JavaWeb (一)三大框架之struts框架 持续更新中...

    最近主要把javaweb的三大框架过一遍. (一)发展历史 传统的Java Web应用程序是采用JSP+Servlet+Javabean来实现的,这种模式实现了最基本的MVC分层,使得程序分为几层,有 ...

随机推荐

  1. js call的方法

    call 方法 请参阅 应用于:Function 对象 要求 版本 5.5 调用一个对象的一个方法,以另一个对象替换当前对象. call([thisObj[,arg1[, arg2[, [,.argN ...

  2. 九九乘法表的实现--JAVA基础

    JAVA算法实现:输出九九乘法表 Jiujiu.java: package com.qkys.www; public class Jiujiu { public static void main(St ...

  3. HAproxy负载均衡

    HAproxy 简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy特别适用于那些负载特大的web站点,这 ...

  4. Redis之PHP操作

    一.Redis连接与认证 //连接参数:ip.端口.连接超时时间,连接成功返回true,否则返回false $ret = $redis->connect('127.0.0.1', 6379, 3 ...

  5. 开发中使用Gson的实例(时间格式错误解决方法)

    ...... // 通过GSON解析,使用4个实体类来接受(TotalResponse.TradeRateResponse.TradeRatess.TbTradeRates) GsonBuilder ...

  6. 关系型数据库工作原理-查询优化器之数据访问方式(翻译自Coding-Geek文章)

    本文翻译自Coding-Geek文章:< How does a relational database work>.原文链接:http://coding-geek.com/how-data ...

  7. 2016最热门的PHP框架

    每个PHP框架都拥有各自独特的地方.同时PHP语言已经获得了巨大的认同并且成为了世界上最通用的服务器脚本语言.PHP也俨然成为了最容易学习的web动态开发语言.在PHP发展的同时,PHP框架也迅速崛起 ...

  8. 《Linux命令行与shell脚本编程大全》- 读书笔记1 - 基本的bash shell 命令

    这本书买了好久了,除了刚到手的那几天翻看了一下以外,竟然到今天都没有看过.突然想要写一个shell脚本,发现什么也不会,是时候开始学习了,今天先把最简单的一章再看一遍顺便做一些笔记,明天继续后面的! ...

  9. Java 中 利用正则表达式 获取 网页图片

    import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.net.URL;i ...

  10. Android proguard (混淆)

    混淆(Proguard)用法 最近项目中遇到一些混淆相关的问题,由于之前对proguard了解不多,所以每次都是面向Stackoverflow的编程.copy别人的答案内心还可以接受,但是copy了之 ...