`
jakey0613
  • 浏览: 24380 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

自己的一些手记

    博客分类:
  • java
阅读更多
[size=xx-small]

㈠在Structs中如何解决中文乱码问题



1.在工程下建一个Servlet,让它实现javax.servlet.filter接口

2.在doFilter方法中添加如下代码:

    request.setCharacterEncoding("gbk");//设置编码方式为gbk

    chain.doFilter(request,response);//表示调用下一个过滤器,但必须在最后写,也表示在它后面能够再添加其它的过滤器

3.在web.xml中添加配置信息:

    <filter>

        <filter-name>给过滤器命一个名</filter-name>

        <filter-class>过滤器类的路径</filter-class>

    </filter>

    <filter-mapping>

        <filter-name></filter-name>

        <url-pattern>/*</url-pattern>

    </filter-mapping>

======================================================================================================

㈡在Structs中弹出错误信息



1.在Structs-config.xml中添加配置信息,在<action>中添加属性:

    <action validate="true"         //表示支持ActionForm中验证方法

        input="页面路径"    //当验证不通过时,在这个页面显示错误信息

    ></action>



2.在ActionForm中的validate方法中添加对表单中输入的值验证,对于错误信息

    ActionErrors errors=new ActionErrors();

    errors.add("键",new ActionMessage("ApplicationResources.properties中的键"));

注意:在添加错误信息时,也可以这样写:

    errors.add("(页面输出错误信息的)键",new ActionMessage("键",数组或多个参数));

此时在ApplicationResources.properties资源文件中改为:

        键=……{0}…{1}……

这里的{0}、{1}等等代表数组中下标元素或参数的位置。



3.在ApplicationResources.properties资源文件中添加:

    errors.header=<span style="color:red">

    errors.footer=</span>

    键=错误信息



4.在页面中输出:

    <html:errors property="errors集合中的键">



5.提示:

①在读取资源文件时,假如资源文件名为:ApplicationResources.properties,并且客户端为中国用户,则会先读取

    ApplicationResources_zh_CN.proterties(zh表示中文,CN表示中国),如果不存在则读取ApplicationResources_zh.properties,

    如果还不存在,最后才会支读取ApplicationResources.properties。

    ②如果要修改客户端的语言:打开浏览器→工具→Internet选项→在选项卡中点击语言按钮修改相关信息。



6.如何将中文错误信息显示:

    用文本编辑器来编辑资源文件,并保存,再将资源文件转换为unicode编码,在DOS命令下先找到资源文件目录,再输入以下代码

    native2ascii [-unicode] 源文件 目标文件                   或

    native2ascii [-encoding gbk] 源文件 目标文件           并运行该命令就可

========================================================================================================

㈢在Action中业务有效性验证:



需注意:在Action中的execute方法中定义错误集合,并保存

    ActionErrors errors=new ActionErrors();

    saveErrors(request,errors);

========================================================================================================

㈣DispatchAction:



1.修改struts-config.xml文件中的<action>节点中添加一个 “parameter="参数名"” 属性。



2.修改Action时继承于DispatchAction,而其中的方法名应和上述的参数名相同



例:如果传递过来的参数是add,则会调用这个Action中的add方法,如果传递过来的是edit,则调用edit方法。

        /********add方法********/

        public ActionForward add(ActionMapping mapping, ActionForm form,

            HttpServletRequest request, HttpServletResponse response) {

        }

        /********edit方法********/

        public ActionForward add(ActionMapping mapping, ActionForm form,

            HttpServletRequest request, HttpServletResponse response) {

        }



3.再在各方法中进行操作和如何跳转。





注:由一个Action跳转到另一个Action时,在Structs-config.xml中的Action节点中,配置<forward>时:

    <forward name="" path="另一个Action的path"/>

=======================================================================================================

㈤structs标签库:



1.<logic:iterate>标签:首先导入包

    <%@ taglib uri="http://structs.apache.org/tags-logic" prefix="logic" %>

在页面中嵌入:

    ①.如果把查询到的数据封装到ActionForm中的属性中时,<logic:iterate>配置如下:

        <logic:iterate id="名" name="指ActionForm的name" property="ActionForm的属性">

        </logic:iterate>

    在<logic:iterate>中id用于来输出时作为变量名,name表示指向哪个ActionForm,property则指的是ActionForm中拥有的属性

    ②.如果把查询到的数据封装到request.setAttribute("键",值); 中时,<logic:iterate>配置如下:

        <logic:iterate id="名" name="request中的键">

        </logic:iterate>



2.<bean:write>标签:导入包

    <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>

标签语法:

    <bean:write name="输出用到的键" property="属性名" format="格式化的格式" />

对于时间或金钱的输出时,我们可以用到<bean:write>中的format属性对它们进行格式化,例:

    时间:<bean:write name="输出用到的键" property="属性名" format="yyyy年MM月dd日" />

    金钱:<bean:write name="输出用到的键" property="属性名" format="#,###或####.00" />



3.<html:link>标签:导入包

    <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>

标签语法:

    <html:link page="jsp页面或其它的Action的path" paramId="用于传送的参数名"

        paramName="需绑定的参数" paramProperty="属性名">

    </html:link>



4.<html:select>标签:

标签语法:

    <html:select property="ActionForm中需绑定的属性">

        <html:optionsCollection property="ActionForm中集合属性" lable="用于显示的值" value="需用于传递的值"/>

    </html:select>

注:如果集合不保存在ActionForm中的属性,而保存在request的属性中,则也可以用

    <html:options>
[color=darkred]
[size=xx-small]
[/size][/size][/color]
分享到:
评论

相关推荐

    匠人手记(全集)(共包括24篇)part1

    除此之外,《匠人手记》还可能包含了一些实战案例,通过实际项目的介绍,让读者了解如何将理论知识应用到实践中,提升解决实际问题的能力。这些案例可能涵盖了从简单的小型控制系统到复杂的嵌入式系统设计。 总的来...

    《匠人手记》11《按键漫谈》

    《匠人手记》11《按键漫谈》一文由程序匠人撰写,深入探讨了按键处理在单片机编程中的重要性及其基础技术。文章不仅为新手提供了入门指导,同时也涵盖了按键处理中的一些高级概念和技术细节。 ### 按键时序分析 ...

    Symbian S60 手记软件源码

     经常会有随手记录一些事情的习惯,可是手机自带的日历用得不够方便,于是想按照自己的使用习惯来开发一个程序,取名“手记”,随想随记! 功能列表:  手记增删查改及持久化 附件源码,情枫版权,侵权不究! ...

    【MATLAB GUI设计学习手记】源代码.rar

    以下是一些关于MATLAB GUI设计的重要知识点: 1. **组件库**:在GUIDE中,你可以找到各种组件,如按钮、文本框、滑块、菜单等,它们是构建GUI的基础元素。 2. **回调函数**:当用户与GUI组件交互时,比如点击按钮...

    匠人手记:一个单片机工作者的实践与思考 20181128

    书中可能讲解了如何使用C语言进行单片机编程,并介绍了一些常用的开发环境,如Keil、IAR或GCC等,以及如何使用它们进行代码编写、编译和调试。 此外,单片机的应用实例是学习过程中的宝贵资源。作者可能会分享他在...

    匠人的手记

    最后,匠人手记可能会探讨一些软技能,如如何有效地学习新的硬件或软件技术,如何与团队协作,以及如何持续改进自己的工作流程。这些软技能对于任何工程师的成长都是至关重要的。 总的来说,“匠人的手记”是一个...

    Fedora 15安装实战手记

    为了提升Fedora系统的网络功能,可以安装一些插件来增强使用体验。例如,fastestmirror插件能够让yum包管理器自动检测并使用最快源来下载软件包,而yum-presto插件则能够加速下载过程。这些插件的安装通过简单的yum...

    iBATIS 3 试用手记三

    在《iBATIS 3 试用手记三》中,作者可能还会分享一些实战经验,如如何解决常见的问题,如何优化性能,以及如何利用iBATIS 3的高级特性进行复杂业务的处理。通过对iBATIS 3的深入学习和实践,开发者可以提升自己的...

    MATLAB GUI设计学习手记第2版(上)

    在"MATLAB GUI设计学习手记第2版"中,作者深入浅出地介绍了如何利用MATLAB构建自己的用户界面。 首先,MATLAB GUI设计的核心在于 GUIDE(Graphical User Interface Development Environment),这是一个可视化工具...

    感受Linux桌面魔力:Mandrake9.0试用手记.pdf

    该版本的发布,是在Red Hat之后,但它试图打破传统的束缚,塑造自己独特的品牌形象,这一点从发布时间上的安排便可见一斑。 在个人使用体验方面,作者在手记中回顾了Mandrake Linux 8.0给他们带来的深刻印象,并对...

    信号完整性揭秘 于博士SI设计手记 352ҳ 83.0M 高清书签版-综合文档

    《信号完整性揭秘——于博士SI设计手记》是一本深入探讨信号完整性的专业书籍,适合电子工程师、硬件设计师以及对高速数字系统感兴趣的读者。信号完整性是现代电子设计中不可或缺的一个重要概念,它涉及到如何在高速...

    匠人手记:一个单片机工作者的实践与思考

    本书的作者通过自己的实践经验和深入思考,为我们揭示了单片机设计与应用的诸多奥秘。以下是基于标题和描述中涉及的知识点的详细解读: 1. **基础知识**:书中可能会涵盖单片机的基本组成,包括CPU、内存、I/O端口...

    中国cmm实施手记

    企业评估概况 截止2002年2月5日,中国软件企业通过cmm评估的基本情况如下: 东软cmm手记 实施原因: 国内东软从1991年开始,从事国际业务和外包业务,1997年开始介入外方核心业务的开发。1999年底,在东软给日方...

    匠人手记》网络版《STM32开发经验》系列《ISP程序升级时让STM32自己控制BOOT口电平

    - 利用芯片自己的GPIO口方法则无需额外硬件支持,是一种成本低且便于实现自动化的方案,适合于一些需要频繁升级的应用场景。 掌握这些技术点,可以让开发人员在面对产品固件升级需求时有更多的解决方案可供选择,...

    Wicket 1.4 开发手记(一) helloworld与环境配置

    在《Wicket 1.4 开发手记》系列的第一篇文章中,作者Steel.Ma分享了他对Wicket框架的一些见解,特别是针对Wicket 1.4版本的入门级介绍。文章首先对当前流行的开发模式SSH(Struts、Spring、Hibernate)进行了批判性的...

    【鸟哥笔记】营销增长实战手记小绿书.pdf

    企业需要根据自己的产品特性和目标市场的特点选择合适的营销渠道。 4. 用户洞察与行为分析:营销增长的实战中,用户洞察是一个重要环节。企业需要通过市场调研、用户访谈、数据分析等手段深入理解用户需求、消费...

    Oracle.DBA手记2.数据库诊断案例与内部恢复实践

    《Oracle DBA手记2:数据库诊断案例与内部恢复实践》是一本专注于Oracle数据库管理和故障排除的专业书籍。作为DBA(数据库管理员),掌握数据库的诊断和恢复技术是至关重要的,因为这直接影响到系统的稳定性和数据的...

Global site tag (gtag.js) - Google Analytics