Struts学习总结(一)---搭建Struts框架
日期:2016-8-28
内容:搭建Struts开发框架
一、下载Struts2.3.24.1框架
本教程使用的是struts-2.3.24.1的版本演示,下载地址大家可以参照下载链接
下载后的压缩包如下:
包的目录结构如下:
二、使用Struts快速搭建框架:
1、使用Eclipse搭建JavaWeb项目:
之后点击“Finsh”完成项目的创建。
搭建成功的环境目录如下:
2、添加Struts2开发的基础jar包:
添加jar包的方式有两种选择,一种是直接在下载的struts-2.3.24.1-all的解压文件目录下的\lib目录下分别挑选需要使用的jar包;第二种方式是在\apps目录下有一个
名称为struts2-blank.war的war包,解压之后再目录\\struts-2.3.24.1-all\struts-2.3.24.1\apps\struts2-blank\WEB-INF\lib目录下有完成Struts2基本开发的jar包。
第一种方式:
具体的使用在开发中缺少什么包都可以在这个目录下自己查找添加;
第二种方式:
可以将这个war包下的所有jar包copy到项目下的WEB-INF\lib目录下;
添加"build Path"
在Java Build Path中全部勾选:
将可以勾选的选项全部勾选之后选择OK完成Struts环境的搭建。
三、 测试框架搭建是不是成
1、添加struts.xml配置文件:
在项目的src目录下添加struts.xml配置文件,关于struts.xml配置文件可以在下载的struts2压缩包的目录\struts-2.3.24.1-all\struts-2.3.24.1\apps\struts2-blank\WEB-INF\src\java目录下能够找到需要这个xml配置文件:
struts配置文件的内容如下:
<?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><constant name="struts.enable.DynamicMethodInvocation" value="false" /><constant name="struts.devMode" value="true" /><package name="default" namespace="/" extends="struts-default"><default-action-ref name="index" /><global-results><result name="error">/WEB-INF/jsp/error.jsp</result></global-results><global-exception-mappings><exception-mapping exception="java.lang.Exception" result="error"/></global-exception-mappings><action name="index"><result type="redirectAction"><param name="actionName">HelloWorld</param><param name="namespace">/example</param></result></action></package><include file="example.xml"/><!-- Add packages here --></struts>
整理之后的配置文件如下:
如此这般struts.xml配置文件就基本配置完成,具体使用的时候还需要做适当的修改。
2、在web.xml配置文件中添加Struts的核心控制器:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"><display-name>TestStrutsDemo</display-name><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><!-- 配置Struts2的核心控制器 --><filter><!-- 配置Struts2核心控制器的名字 --><filter-name>struts2</filter-name><!-- 配置struts2核心控制器的实现类 --><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><!-- 过滤器拦截去的名称 --><filter-name>struts2</filter-name><!-- 配置struts2核心过滤器拦截所有的用户请求 --><url-pattern>/*</url-pattern></filter-mapping>
</web-app>
3、编写TestStruts2Action.java
package com.onlyone.struts_test;import com.opensymphony.xwork2.ActionSupport;public class TestStruts2Action extends ActionSupport {/*** */private static final long serialVersionUID = 1L;//测试Struts2框架Action@Overridepublic String execute() throws Exception {//打印后台logSystem.out.println("Struts2成功被请求!");return ActionSupport.SUCCESS;}}
4、配置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><constant name="struts.enable.DynamicMethodInvocation" value="false" /><constant name="struts.devMode" value="true" /><package name="default" namespace="/" extends="struts-default"><!-- 配置Action --><action name="testStruts" class="com.onlyone.struts_test.TestStruts2Action"><result name="success">/jsp/HelloStruts.jsp</result></action></package>
</struts>
5、首页index.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body><h3>测试Struts2框架是不是搭建成功!</h3><center><a href="testStruts">点击超链接之后跳转到HelloStruts.jsp</a></center>
</body>
</html>
6、HelloStruts.jsp返回画面:
<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body><h1>成功跳转!</h1>
</body>
</html>
7、启动Tomcat服务器测试:
后台log:
从后台的红色框标注的log显示,Struts跳转确实成功了,证明Struts框架搭建确实成功了。但是美中不足的是绿色框标注的内容显示了一个ERROR(错误)。究竟是什么原因导致的呢?
通过查阅资料发现之所以出现这个原因是由于缺少了log4j2.xml配置文件导致的:
在\src目录下添加log4j2.xml配置文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN"><Appenders><Console name="Console" target="SYSTEM_OUT"><PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/></Console></Appenders><Loggers><Logger name="com.demo.NamedHierarchy" level="trace"><AppenderRef ref="Console"/>
</Logger>
<Logger name="com.demo" level="debug"><AppenderRef ref="Console"/>
</Logger><Root level="error"><AppenderRef ref="Console"/></Root> </Loggers>
</Configuration>
重新启动Tomcat服务器后台log如下:
从后台的log显示之前的错误已经解决!
测试完成之后的目录结构如下:
关于Struts2框架的搭建基本到此完成,欢迎大家指出不足!
Struts学习总结(一)---搭建Struts框架相关推荐
- Struts 学习笔记1 -Struts Framework 概览
作者: bruce -- Java研究组织 Tuesday, January 21 2003 11:06 AM Struts开始于2000年3月,1.0在2001年7月发布.采用Struts能开发出基 ...
- java 详解 搭建 框架_在Eclipse中搭建Struts框架过程详解
虽然用MyEclipse搭建Struts框架是更为便捷的方式,但是用Eclipse可以增强自己对Struts的理解.本文演示了使用Eclipse搭建Struts 1.2框架的过程.此项目实现了简单的功 ...
- Eclipse下搭建struts、spring、hibernate开发环境
开发环境的搭建,Myeclipse 下搭建 struts+spring+hibernate 开发环境:记得刚学struts.Spring.hibernate三大框架时就为这些基本环境的搭建发愁,那是使 ...
- Struts学习笔记总结
Struts学习笔记总结 一.Struts是由Apache开源联盟提供的一套用于构建 Java web应用程序的框架,它的目标是希望分离Web程序的表示层.控制层和模型层,即MVC框架,使程序员将更多 ...
- Struts和SpringMVC两种MVC框架比较
基于Web的MVC framework在J2EE的世界内已是空前繁荣.TTS网站上几乎每隔一两个星期就会有新的MVC框架发布.目前比较好的MVC,老牌的有Struts.Webwork.新兴的MVC框架 ...
- struts学习笔记(一):Struts相关基础理论介绍
为什么使用struts 建立在MVC这种公认的好的模式上的,Struts在M.V和C上都有涉及,但它主要是提供一个好的控制器和一套定制的标签库上,也就是说它的着力点在C和V上,有MVC的一系列优点,如 ...
- 基于深度学习的中文语音识别系统框架搭建
基于深度学习的中文语音识别系统框架 转自@https://blog.csdn.net/chinatelecom08/article/details/82557715 本文搭建一个完整的中文语音识别系统 ...
- [Struts]学习日记2 - 增加一些验证
使用struts的一个好处就是,很多传统jsp/servlet开发中十分琐碎的事情都有规范化的方法来处理了.例如表单验证.错误提示.HTML字符过滤等等.今天简单说一说在form类里进行验证. 在上一 ...
- Springboot框架学习笔记------项目搭建、程序解析、配置文件的作用
今天开始学习spring boot,这个框架整合spring和springmvc,简化了很多的配置,这是目前的理解. 搭建流程: 1.从idea搭建,利用maven创建项目,前提是联网,需要下载mav ...
- Java job interview:struts基于MVC的WEB开源框架解析
●struts是开源框架. ●使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间.如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个 ...
最新文章
- 多核处理器_AMD锐龙翻身!单核、多核CPU跑分均名列榜首
- bzoj千题计划248:bzoj3697: 采药人的路径
- 看懂OpenCV中IplImage转换成CvMat的语句:CvMat sstub, *src = cvGetMat(srcarr, sstub);
- pandas describe函数_SQL和Pandas同时掉到河里,你先救谁?
- 我也确实很向往深圳这种拼搏的精神
- 惊慌 Android!使用 3D 打印的头像可破解多款手机
- 计算机常见的户动方法有哪些,《360doc个人图书馆》常用操作方法
- C#设计模式之一单例模式(Singleton Pattern)【创建型】
- ExtJs布局学习笔记
- Hibernate事务与并发问题处理(乐观锁与悲观锁)
- python飞机大战怎么将图片保存_Python飞机大战完整素材包(字体音乐图片)
- python构造icmp数据包_python – 在scapy中发送ICMP数据包并选择正确的接口
- http://www.jdon.com/
- 用计算机画魔方的一个面,计算机求解魔方算法.pdf
- Python查询mysql返回序列化数据
- op手机计算机记录怎么找回,怎么定位被盗的oppo手机并查看其位置
- HyperLPR车牌识别库代码分析(9)
- 笑话:​我是个程序员,一天我坐在路边一边喝水一边苦苦检查程序。这时一个乞丐在我边上坐下了,开始要饭,我觉得可怜,就给了他1块钱...
- opencv读入灰度图片却显示三通道
- 手持终端可以下载在工作中的各类操作