MyEclipse项目有红色感叹号的解决方法

问题:MyEclipse 项目有红感叹号

原因:工程中classpath中指向的包路径错误

解决办法:
右键项目名称 BuildPath ---> Configure Build Paht...中,然后上面有几个选项卡找到 Libraries中出现红色叉号的包为路径错误的包。到classpath中修改相应包的当前路径。然后回到eclipse中F5刷新工程。

- 阅读全文 -

Struts2:使用Struts2实现简单的权限校验

案例描述:

使用Struts2实现权限拦截,未登录用户不可以访问后台管理页面,用户已登录则显示后台管理页面。

  1. 新建Web Project,并配置Struts2相关环境
  2. 新建后台管理页面manager.jsp

为了安全manager.jsp所在位置为/WEB-INF/page/

  1. 新建用户登录页面login.jsp
<body>
    <h2>用户登录</h2>
    ${loginError }
    <form action="login.action" method="POST">
        用户名:<input type="text" name="username"> 
        密码:<input type="password" name="password"> 
           <input type="submit" value="登录">
    </form>
</body>

- 阅读全文 -

Struts2:自定义拦截器

继承AbstractInterceptor类
提供了init()和destory()方法的空实现
只需要实现interceptor()方法即可

拦截器案例

计算Action的执行时间

- 阅读全文 -

Struts2 : [5] 上传单个文件

  • Struts2的上传组件是一个拦截器(这个拦截器不用配置,是自动装载的)。
  • 要用Struts2实现上传单个文件的功能非常容易实现,只要使用普通的Action即可。但为了获得一些上传文件的信息,如上传文件名、上传文件类型以及上传文件的Stream对象,就需要按着一定规则来为Action类增加一些getter和setter方法。
  • 在Struts2中,用于获得和设置java.io.File对象(Struts2将文件上传到临时路径,并使用java.io.File打开这个临时文件)的方法是getUpload和setUpload。获得和设置文件名的方法是getUploadFileName和setUploadFileName,获得和设置上传文件内容类型的方法是getUploadContentType和setUploadContentType。

- 阅读全文 -

Struts2 : [4] 使用validate验证数据

本篇文章还没更新完 . . .

   在Struts2中最简单的验证数据的方法是使用validate。我们从ActionSupport类的源代码中可以看到,ActionSupport类实现了一个Validateable接口。这个接口只有一个validate方法。如果Action类实现了这个接口,Struts2在调用execute方法之前首先会调用这个方法,我们可以在validate方法中验证,如果发生错误,可以根据错误的level选择字段级错误,还是动作级错误。并且可使用addFieldError或addActionError加入相应的错误信息,如果存在Action或Field错误,Struts2会返回“input”(这个并不用开发人员写,由Struts2自动返回),如果返回了“input”,Struts2就不会再调用execute方法了。如果不存在错误信息,Struts2在最后会调用execute方法。

这两个add方法和ActionErrors类中的add方法类似,只是add方法的错误信息需要一个ActionMessage对象,比较麻烦。除了加入错误信息外,还可以使用addActionMessage方法加入成功提交后的信息。当提交成功后,可以显示这些信息。

以上三个add方法都在ValidationAware接口中定义,并且在ActionSupport类中有一个默认的实现。其实,在ActionSupport类中的实现实际上是调用了ValidationAwareSupport中的相应的方法,也就是这三个add方法是在ValidationAwareSupport类中实现的,代码如下:

- 阅读全文 -

Struts2 : [3] struts.xml常用配置

struts.xml是Struts2中最重要的配置文件。

1. < include >

struts.xml是Struts2的默认配置文件,当项目太大情况下把所有配置放到struts.xml显得太繁杂而且太乱。
比如一个网上购物程序,可以把用户配置、商品配置、订单配置分别放到3个配置文件user.xml、goods.xml、order.xml,然后通过include标签引入:

struts.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
    <include file="user.xml" />
    <include file="goods.xml" />
    <include file="order.xml" />
</struts>

- 阅读全文 -

Struts2 : [2] 处理一个form多个submit

  教程1中,一个form表单只能完成一个submit工作,在实际工作中很有可能出现一个form多个submit的情况,例如下面这个代码:

<html action="handle" method="post">
do something
<input type="submit" value="保存"/>
<input type="submit" value="打印"/>
</html>

下面演示如何处理多个submit的form:

- 阅读全文 -