对于刚接触编程的同学,对框架只是还不是很了解,本文主要介绍在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配置
struts2 org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter struts2 /*
9 index.jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>登录页面
10 struts.xml配置
success.jsp error.jsp
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方法,这样就可以获取页面数据,注意字段的名字和类中属性的名字必须保持一致。