对于刚接触编程的同学,对框架只是还不是很了解,本文主要介绍在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. 芝麻HTTP:Python爬虫实战之抓取淘宝MM照片

    本篇目标 1.抓取淘宝MM的姓名,头像,年龄 2.抓取每一个MM的资料简介以及写真图片 3.把每一个MM的写真图片按照文件夹保存到本地 4.熟悉文件保存的过程 1.URL的格式 在这里我们用到的URL ...

  2. pat1051-1060

    1051 自己写的非常麻烦 http://blog.csdn.net/biaobiaoqi/article/details/9338397 的算法比较好,我的就贴下吧,主要对入栈出栈不够理解 #inc ...

  3. ajax面试题

    1.ajax是什么?如何创建一个ajax? ajax并不算是一种新的技术,全称是asynchronous javasript and xml,可以说是已有技术的组合,主要用来实现客户端服务器的异步通信 ...

  4. ASP.NET 初识Cookie

    1.ASP.NET中使用Cookie 0.说明 Cookie存在客户端电脑上,Session存在服务器上,所以保存登录信息等敏感信息时不能使用Cookie,用户个性化设置可以使用Cookie 1.新建 ...

  5. 【转载】Java并发编程:volatile关键字解析(写的非常好的一篇文章)

    原文出处: 海子 volatile这个关键字可能很多朋友都听说过,或许也都用过.在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果.在Java 5之后,volat ...

  6. 第三篇:数据可视化 - ggplot2

    前言 R语言的强大之处在于统计和作图.其中统计部分的内容很多很强大,因此会在以后的实例中逐步介绍:而作图部分的套路相对来说是比较固定的,现在可以先对它做一个总体的认识. 在上一篇文章中,介绍了使用gr ...

  7. 【NOIP2015】斗地主(搜索,贪心)

    题面戳我 题解 我原来也觉得是一道不可做的难题.. 其实,,,很简单的啦... 对于当前状态 我们出牌的方式大致分为两类 一类是不用考虑点数的,包括单张,对子,三带一等 另一类就是需要考虑点数的,包括 ...

  8. git上传项目到github简易步骤

    第一步: 在github创建仓库,创建完成进入该仓库,仓库地址如:https://github.com/winerss/wcMall格式 第二步:使用git,cd到本地项目目录下,执行git明令: g ...

  9. ubuntu中eclipse 不支持gbk编码问题解决办法

    今天在ubuntu 下, 把Windows下工程导入Linux下Eclipse中,由于工程代码,是GBK编码,而Ubuntu默认不支持GBK编码,所以,要让Ubuntu支持GBK. 方法如下: 1.修 ...

  10. AJAX跨域问题解决方法(1)——禁止浏览器进行跨域限制

    思路:通过命令行修改浏览器启动参数,使得浏览器不进行跨域检查,从而允许跨域 方法:命令行参数启动浏览器后添加参数--disable-web-security 例:chrome --disable-we ...