jsp引入外部css样式无效_jsp引入外部css样式无效

jsp引入外部css样式无效_jsp引入外部css样式无效软件项目实训及课程设计指导——如何在Web应用系统中实现Velocity与Struts2框架相互集成的应用实例1、Struts2应用框架提供对Velocity和FreeMarker模板引擎的支持在Struts2应用框架

软件项目实训及课程设计指导——如何在Web应用系统中实现Velocity 与Struts2框架相互集成的应用实例

1、Struts 2应用框架提供对 Velocity 和 FreeMarker 模板引擎的支持

在Struts 2应用框架中不仅继续保留有对Velocity模板引擎的支持,而且也提供对 另一个广泛应用的FreeMarker 模板引擎的支持。

在Struts 2应用框架中集成Velocity模板引擎的实现过程比在Struts应用框架中集成Velocity模板引擎要简单的多,因为Struts 2应用框架系统内带有对Velocity模板引擎的技术支持。

2、集成Struts 2应用框架和Velocity模板引擎时所需要的系统配置

(1)添加有关的系统JAR包文件

实现Struts 2应用框架集成Velocity模板引擎时所需要的系统JAR包,除了Struts2应用框架本身所需要的系统包文件以外,还需要与Velocity模板引擎有关的系统包文件——主要为velocity-1.6.1-dep.jar、velocity-tools-1.4.jar和velocity-tools-view-1.4.jar,请参考如下示图所示。

5b225cc02ef7d38f687fd3228676e067.png

(2)在web.xml部署描述文件中配置定义VelocityViewServlet组件

在Web项目的部署描述符web.xml部署描述文件中除了要配置定义出Struts 2应用框架本身的org.apache.struts2.dispatcher.FilterDispatcher组件类外,也还需要配置定义出org.apache.velocity.tools.view.servlet.VelocityViewServlet组件类,请参考如下代码示例中对VelocityViewServlet类的配置示例。

velocityorg.apache.velocity.tools.view.servlet.VelocityViewServletorg.apache.velocity.properties/WEB-INF/velocity.propertiesvelocity*.vm

3、在Web项目中添加/WEB-INF/velocity.properties文件

(1)在Web项目的WEB-INF目录中新建一个文件名称为velocity.properties的文件,参看如下示图所示

967551c3372fe29c46ffad72dea66971.png

(2)velocity.properties文件中的内容如下

file.resource.loader.path = /runtime.log = /velocity.logdefault.contentType=text/htmlinput.encoding=GBKoutput.encoding=GBK
7d0d9fdc3bc8d8b3f6fbd1366f35fcda.png

4、在Web项目中添加一个请求页面velocityUserLogin.jsp

(1)在MyEclipse开发工具中新增加一个velocityUserLogin.jsp页面文件,参看如下示图所示

f4126f13fb27a32dd5cb608a86087202.png

(2)velocityUserLogin.jsp页面文件中的代码示例如下

My JSP 'fmtUserLogin.jsp' starting page          您的名称:
您的密码:

(3)velocityUserLogin.jsp页面静态预览效果参看如下示例图所示

97e7e1731635256f171769f16926bc5f.png

5、在Web项目中再设计一个处理的Action类VelocityUserInfoAction

(1)VelocityUserInfoAction所在的程序包名称为com.px1987.struts2.action,并继承于com.opensymphony.xwork2.ActionSupport的基类,参看如下示例图所示的创建过程。

90639991d6422d7ca799666a43e62598.png

(2)VelocityUserInfoAction程序类的代码示例如下

package com.px1987.struts2.action;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;import com.px1987.struts2.actionform.UserInfoActionForm;public class VelocityUserInfoAction extends ActionSupport {    private String userName=null;    private String userPassWord=null;    private UserInfoActionForm oneUserInfo=null;    public VelocityUserInfoAction() {    }    /** 在该方法中进行用户登陆的功能实现 */    public String execute(){        String resultMessage=null;        boolean returnResult=        getUserName().equals("yang") &&getUserPassWord().equals("1234");        if(returnResult){          resultMessage =getUserName()+"您登录成功!";        }        else{        resultMessage =getUserName()+"您的身份信息无效!";        }        HttpServletRequest request=ServletActionContext.getRequest();        request.setAttribute("showResultInfo", resultMessage);        return this.SUCCESS;    }    public String getUserName() {    return userName;    }    public void setUserName(String userName) {    this.userName = userName;    }    public String getUserPassWord() {    return userPassWord;    }    public void setUserPassWord(String userPassWord) {    this.userPassWord = userPassWord;    }}

6、在Web项目中的系统配置文件struts.xml文件中配置出该Action类

(1)最终配置的代码示例

    /userManage/showInfoTemplate.vm/userManage/velocityUserLogin.jsp
1b3d3e9e0714abab70e22e027c12444d.png

由于Struts2应用框架使用Velocity作为其默认的模板技术,因此Struts2应用框架对Velocity模板技术的支持是非常良好的。为了在Struts2应用框架中使用Velocity模板技术,只需要在struts.xml文件中进行简单配置。

(2)将Action类的配置定义中的标签内的type属性设置为velovity

由于在Struts 2 应用框架中是把各种类型的结果视图——如 JSP、Velocity、FreeMarker 等都封装成 ResultType 的子类。也就是说对于每一种类型的视图,在J2EE Struts 2应用框架中都有与之对应的 ResultType 的实现类,而本示例中的Velocity 视图对应的类是 org.apache.struts2.dispatcher.VelocityResult。

Struts 2 应用框架中的Action类的配置定义中的标签内的type属性默认值是”dispatcher”(也就是对请求的转发Forward方式)。开发人员可以根据自己的应用需要指定不同的类型,如redirect、stream等。

上面的代码示例中的配置代码示例是将标签内的type属性设置为velocity,也就是将标签内的type属性设置为velocity的Action类的定义示例,注意其中黑体标识的语句。

7、在Web项目中设计Velocity的模板页面showInfoTemplate.vm

(1)在Web项目中新增加模板页面showInfoTemplate.vm文件,创建过程参看如下示例图所示

f208c4d6a24220cb745f55faed7d04f2.png

(2)模板页面showInfoTemplate.vm文件的代码示例如下,注意其中黑体标识的语句

  用户登录成功信息显示页面

采用标准的方式获得参数值: $showResultInfo


由于Velocity模板引擎系统采用简单而强大的模板语言VTL实现对Web页面的渲染,因此能保证在Dreamwaver之类的Web页面可视化编辑器中都能够正常显示(参看如下示例图所示)。

另外,模板文件可以是任意的文件扩展名,采用*.vm、*.html或者*.xml都是可以的(本示例采用*.vm文件扩展名),这样就能直接在Web浏览器中看到Web页面的预览的效果。

843f5d4866366aab3601286cb8aba9dd.png

8、部署并测试本示例Web项目

(1)部署本示例的Web项目相关程序到Web服务器中,部署后的结果参看如下示例图所示

3644156fd573bebfe2e1ed3a5221fdc8.png

(2)在Web浏览器中启动待测试的Web页面

在Web浏览器的URL地址栏中输入如下的URL地址信息http://127.0.0.1:8080/Struts2Web/userManage/velocityUserLogin.jsp,然后启动待测试的Web页面,参看如下示图所示。

7a426ab0b6b84f96b94ee86de27d9620.png

如何实现Velocity模板引擎与Struts 框架相互集成

如何在J2EE平台开发基于Velocity模板的Web应用

如何在Web应用系统表示层开发中应用Velocity模板技术

应用XML+XSLT技术分离Web应用表示层数据和样式的实例

如何应用CSS+Div分离Web表示层数据处理逻辑和展现逻辑

今天的文章jsp引入外部css样式无效_jsp引入外部css样式无效分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/84899.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注