S2Container框架学习笔记之二

1. 在S2container框架里,有以下一些默认的组件是可以直接使用的

S2Container container;

HttpServletRequest request;

HttpServletResponse response;

ServletContext application;

//可以用来访问ServletContext的属性
Map applicationScope;

//可以用来访问ServletContext的初期参数
Map initParam;

//可以用来访问Session的属性
Map sessionScope;

//可以用来访问request的属性
Map requestScope;

//可以用来访问Cookie的属性
Map cookie;

//可以用来访问header的属性。返回String类型。
Map header;

//可以用来访问header的属性。返回String数组。
Map headerValues;

//可以用来访问request的parameter。返回String。
Map param;

//可以用来访问request的parameter。返回String数组。
Map paramValues;

使用的方法是,在你的类中加上这些属性,或者在构造方法或set方法的参数里使用这些对象,容器会自动注入。


2. 在使用S2container框架的工程里,推荐的目录结构如下

examples.aaa
examples.aaa.web.xxx
examples.aaa.web.yyy
examples.aaa.entity
examples.aaa.dao
examples.aaa.dto
examples.aaa.service
examples.aaa.util
examples.aaa.helper
examples.aaa.interceptor
examples.aaa.converter
examples.aaa.validator
其中examples.aaa叫做root包,需要在convention.dicon里配置。示例:

<component class="org.seasar.framework.convention.impl.NamingConventionImpl">
    <initMethod name="addRootPackageName">
        <arg>"examples.aaa"</arg>
    </initMethod>
</component>
examples.aaa.web.xxx、examples.aaa.web.yyy叫做use case目录,同一个业务的多个页面的处理就是放在一个use case里,

典型的如Web里的一览页面、编辑页面和确认页面。use case包里放的是use case的固有处理,如一个页面对应的page class和以及page class和DTO转换的DXO class等。

examples.aaa.entity里放的是与数据库的表一一对应的实体类。

examples.aaa.dao里放的是与entity一一对应的数据访问类。

examples.aaa.dto里放DTO类。

examples.aaa.service里放的是多个use case可以共用的实现业务的类。

examples.aaa.util里放的是有静态方法构成的工具类。

examples.aaa.helper也是放工具类,但是不是静态方法的工具类,而是需要实例化依赖注入的工具类。

examples.aaa.interceptor里放AOP的类。

examples.aaa.converter里放数据转换的类。

examples.aaa.validator里放数据检查的类。

像类似于entity、service之类的共通的组件,放在外层,而像DTO这样的组件,如果只是某个use case用到的话,放在哪个use case的包下。








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值