`
regedit_123
  • 浏览: 323437 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

关于struts2的那些事儿

阅读更多

===============
   <package>
===============

struts.xml 中的package的name可以随意定义,只做继承时使用。

===============
  <constent>
===============

struts.xml 中
用<constent name="" value=""/>
来改变default.proerties 中key对应的值

==============================================
覆盖默认的资源文件 -- default.properties
==============================================

也可以在clasess(/src)下建立struts.properties的方式,覆盖默认的配置文件default.proerties
内容如:
struts.i18n.encoding=gbk      设置字符集
struts.action.extension=do    设置请求后缀名
struts.configuration.files=struts-default.xml,struts-plugin.xml,struts.xml     Struts2自动加载的配置文件


==============
    抽象包
==============
<package name="..." abstract="true">
表示该包中不能有action定义,只能通过包来继承来定义

=============
  命名空间
=============
<package name="..." namespace="">
将不同的应用分割开
如果不配置,表示当前包在一个默认的命名空间里

namespace="/hello"
请求路径就改变为 /hello/register

需要更改表单路径 并且一定要手工加.action
<s:form action="/hello/register.action">

寻找方式,如果namespace为默认,而表单路径为/hello/register.action
当struts没有找到该命名空间是,自动到默认的命名空间找

=============================
   <include>  模块化的配置
=============================

<include file="struts_1.xml"></include>
<include file="struts_2.xml"></include>

struts_1.xml和struts_2.xml都是标准的strust的xml配置文件
include后,struts会在启动后将struts_1.xml和struts_2.xml的配置信息一同加载到内存中。


===============
  Struts2 MVC
===============
FilterDispatcher ----- 核心控制器

每个action ------- 业务控制器
--------- 调用业务逻辑组件 ---- 调用DAO ---- 数据库交互

 

 

=================
    分模块开发
=================

src下建立
struts1.xml
struts2.xml

不同的开发人员,只需要写自己的xml配置文件
只需要加入到struts.xml中
<include file="struts1.xml"/>
<include file="struts2.xml"/>

----------------
struts1.xml
xml声明,DTD信息...  结构与struts.xml相同
<struts>
 <package name="" ...>
  ...
 ...
...

----------------
struts2.xml
xml声明,DTD信息...  结构与struts.xml相同
<struts>
 <package name="" ...>
  ...
 ...
...

 

================
   模型驱动
================

**属性驱动**:表单的字段都作为Action的属性存在

**模型驱动**:用一个JavaBean来装载对象 类似于ActionForm


模型Bean
public class User {
 private String username;
 private String password;
 private String repassword;
 private int age;
 private Date date;

 // setter... getter...
}

### ValueStack ### --值栈

ModelDriven<T> 该接口使用的泛型,
  模型是什么类型那个的泛型就是什么类型
------ T getModel()

Action 需要实现 ModelDriven接口


public class RigesterAction extends ActionSupport
 implements ModelDriven<User> {

 private User user = new User();
 public User getModel() {
  return user;
 }

 @Override
 public String execute() throws Exception {

  return SUCCESS;
 }
}

 

====================
   Preparable 接口
====================

Preparable接口中有一个void prepare() throws Exception方法,实现该接口的Action类,将在执行这个action所以方法之前执行prepare(),称为action准备方法。

 

=========================
    显示特定的出错信息
=========================

<s:fielderror cssStyle="color:red">
 <s:param>username</s:param>
</s:fielderror>

去掉前面的“原点”
需要自己修改 fielderror.ftl模板
去掉前面的点代码

分享到:
评论

相关推荐

    struts2的convert工程

    以下是一些关于Struts2类型转换的核心知识点: 1. **默认转换器**: Struts2框架默认支持基本类型和一些常用类型,例如String到Integer、Long、Double等的转换。这些转换器是通过ActionContext类中的...

    mavenssm maven spring3 struts2 mybaits

    基于注解的零配置struts2 1 页面跳转 2 查数据库 3 事务控制到service 4 前台一个list的展现 5 任务调度 可以实现自定义一个任务在XML中 隔多长时间执行一次 把jar包注掉了 6 实现了一个ztree 压缩包里有一个说明...

    Java编程那些事儿

    ### Java编程那些事儿 #### 知识点概览 本文基于一篇关于Java编程的文章进行提炼与总结,原文章由一位经验丰富的程序员撰写,主要围绕Java编程的基础知识、学习方法及技巧展开讨论。以下是对该文章内容的核心知识...

    struts2.3.8+spring3.2.0+hibernate4.1.9真正零配置附一个Demo绝对纯净版

    这是本人周末期间,无聊时之作,说实在的,当时整的...因为我也是上班族,所以,大家都能明白框架的内容,那是最好了,大多不明白,那我只能抽时间写份文档,这都不碍事儿。需要学习交流的,可以加我扣扣:903651293

    jbpm4.4+s2sh请假流程例子

    【jbpm4.4+s2sh请假流程例子】是一个典型的结合了jbpm4.4工作流引擎和Struts2、Spring、Hibernate(S2SH)框架的实战项目,旨在演示如何在企业级应用中实现一个完整的请假流程。在这个例子中,jbpm4.4作为流程管理的...

    java程序员实习目的(可编辑).doc.pdf

    在实习期间,实习生将学习如何正确使用SQL,以及如何有效地应用SSH和其他企业级应用框架,例如Hibernate、Struts和Spring,同时熟悉相关的技术,如MySQL数据库、Servlet、JSP页面设计、JQuery、Ajax、Maven等。...

    java电子读物

    Java电子读物是一系列关于Java编程语言的学习资料,适合各个层次的Java开发者,从初学者到有经验的程序员。这些PDF文档涵盖了从基础概念到高级技术的广泛内容,旨在帮助读者深入理解Java语言并提升其编程技能。 1. ...

    java文集

    ext学习笔记一 小试iBatis RIA(Rich Internet Application)的现状和未来 Java应用中域名解析不过期的解决方法 Java编程那些事儿45—数组使用示例1 一步步熟悉OFBiz 用Java做客户端调用.NET写...

    21天学通java

    3. **《JAVA编程那些事儿》电子书**: - 通过讲述真实的编程故事来传授经验和教训,有助于开发者避免常见错误并提高工作效率。 ### 总结 以上资源覆盖了Java编程的各个方面,从基础知识到高级主题,从理论到实践...

    初学JAVA-WEB开发的小项目

    2.SSH_CRM 是一个简单的spring+struts2+Hibernate整合项目 是一个crm人员关系管理系统。 管理员登陆系统可以对录入系统内的人员进行增删查改。 是一个练习ssh框架整合的入门项目,同时可以熟悉hibernate进行增删...

Global site tag (gtag.js) - Google Analytics