对于刚接触编程的同学,对框架只是还不是很了解,本文主要介绍在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. Django学习-5-模板渲染

    1. {{ 变量名 }}                          def func(request):                     return render(request, ...

  2. xml的Dom4j解析规则

    一,xml的样本 <?xml version="1.0" encoding="utf-8"?> <contactList> <co ...

  3. spring boot redis分布式锁

    随着现在分布式架构越来越盛行,在很多场景下需要使用到分布式锁.分布式锁的实现有很多种,比如基于数据库. zookeeper 等,本文主要介绍使用 Redis 做分布式锁的方式,并封装成spring b ...

  4. Bzoj4237:稻草人

    题面 传送门 Sol \(CDQ\)分治 先对\(x\)排序,对\(y\)在\(CDQ\)分治是从大到小排序 从大到小加入,右边用单调栈维护\(x\)递增,\(y\)递减的序列 左边就是找到\(x\) ...

  5. [BZOJ3293] [Cqoi2011] 分金币 (贪心)

    Description 圆桌上坐着n个人,每人有一定数量的金币,金币总数能被n整除.每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数目相等.你的任务是求出被转手的金币数量的最小值. Inpu ...

  6. python迭代和切片

    from collections import Iterable #切片************************ # #取一个list或tuple的部分元素是非常常见的操作 ,Python提供 ...

  7. c#开发wps插件(2)

    上一篇,我们谈了插件开发原理,现在该是应用原理的时候了.工欲善其事必先利其器,首先安装wps 2016专业版,然后再开发. 第一步:打开vs2010,新建一个类库项目,项目结构如下: 说明:其中Res ...

  8. Django---第三方

    第三方: 3.富文本编辑器:此处以tinymce为例 使用编辑器的显示效果为: 1.下载安装 在网站pypi网站搜索并下载"django-tinymce-2.4.0" 解压 tar ...

  9. Chrome游览器使用时,修改文件和网页刷新后,不能显示效果

    一:因为游览器缓存问题 有时候在写完代码后,刷新游览器,发现自己写的目标是让某一个东西隐藏,但是结果是依旧显示着,打开调试工具在Sources中发现,文件依旧是上次的旧的文件,新文件没有加载进去,无论 ...

  10. 如何彻底关闭windows update

    对于我个人来说,我并不喜欢更新windows,打补丁对于我来说是一件没必要的事情,所以每次我装完系统之后的第一件事情就是在联网之前关闭windows更新,我通常是进去服务里面关闭,方法是win+R,然 ...