传智播客——BeanFactory工厂设计

继续昨天的 BeanFactory 工厂设计,精彩继续······

1.       init() 方法需要完成读取 properties 配置文件,遍历所有元素,根据类名生成具体类的实例,最后 namekey ,以生成的实例为value 存放到beans

2.       遍历Properties 文件:

for (Object obj:prop.keySet()){

           String key = (String)obj;

           String value = prop.getProperty(key);

    }

3.BeanFactory 在调用 init() 初始化方法的时候,无法控制 DAO Service 初始化的顺序,因为可能导致空指针异常的发生,解决的方法是将 DAO Service 独立成两个 properties 文件,调用初始化方法时先初始化 DAO ,再初始化 Service.

到这步, BeanFactory 工厂剩下的工作基本完成了,大家可以根据我昨天提到的思路自己尝试一下。其实知识点在以前的 java 基础和 javaweb 中都已经学到,这里,重点在于实际开发中 MVC 开发模式的思路分析,也是汤老师的精妙之处,讲的非常细致。

 

下面是下午关于版面设计的相关内容:

4.       一般情况下,所有转到 .do 的请求都需要进行重定向,例: <forward name="toList" path="/admin/category.do?method=list" redirect="true"></forward>

5.       一个小技巧,在 Struts 的重写 Action 方法时,找不到默认 Action 方法的参数,这时,需要 F3 键导入 Struts 源码,然后重新重写 Action 方法

6.       对于一个 DispatchAction 而言,有的 Action 需要对 Form 进行验证,有的则不需要,这时,在 Struts 配置文件中更改 validate 属性为 false ,在具体需要进行表单验证的地方重写 validate 方法就 OK

7.       显示层在传入 Action 参数时可以使用隐藏域 例: <html:hidden property="menthod" value="add"/>

8.       Struts 提供的 <html:rewrite/> 标签和 <html:link/> 标签可以动态生成链接;表单提交时,可以用隐藏域传递参数,例: <html:hidden property="method" value="edit"/>

9.       J2EE 中每一次单独的请求对应一个 Action ,由 Action 负责准备转发页面。

10.   表单验证可以使用 Apache 组织提供的 commons-lang 工具包,其中的 StringUtils 类的 isBlank() 方法表示某个值为空或者空字符串。

ITCASTBBS 项目后续细节请大家继续关注明天的博客更新,谢谢大家一直以来的支持!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BeanFactory是Spring框架中的一个接口,它是工厂模式的一种实现。工厂方法模式是一种创建型设计模式,它定义了一个创建对象的接口,但具体的实例化过程由实现这个接口的类来决定。在工厂方法模式中,用户只需要关心所需产品对应的工厂,无需关心创建细节。而BeanFactory是Spring框架中用于创建和管理对象的工厂接口,它提供了一种灵活的方式来创建和配置对象。通过BeanFactory,我们可以利用反射机制解决工厂方法中存在大量工厂类的问题,并且可以支持单例和多例对象的创建,懒加载以及一些额外的初始化方法。因此,BeanFactory可以看作是工厂方法模式的一种实现方式。 #### 引用[.reference_title] - *1* [设计模式--1.1工厂模式(BeanFactory)](https://blog.csdn.net/weixin_38982636/article/details/88835602)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [从工厂模式理解Spring中BeanFactory](https://blog.csdn.net/CSDN_WYL2016/article/details/119702281)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值