- 浏览: 141328 次
- 性别:
- 来自: 南宁
文章分类
- 全部博客 (137)
- J2SE API基础 (19)
- JAVA Structure/Algorithm (1)
- 设计模式及UML(pd/rose) (11)
- SSH (32)
- JPA/EJB/JSF (0)
- Jsp/Servlet (1)
- XML (0)
- DWR/Dojo/JQuery(Ajax) (1)
- Js/css/HTML (3)
- Java报表开发 (0)
- 网络协议及认证加密算法 (2)
- Java多线程网络编程 (1)
- Lucence (0)
- Oracle Developer (5)
- Oracle DBA (3)
- mysql/SQLServer/DB2 (5)
- Weblogic配置/调试 (0)
- Tomcat/JBoss/Websphere (10)
- Linux/Unix操作部署及shell编程 (9)
- C/C++编程 (4)
- 系统分析 (0)
- 项目管理(CVS&风险控制) (0)
- JUnit单元和J2EE集成测试 (2)
- 软设/招聘 (6)
- IT English (8)
- Mathematics/Data Mining (1)
- Android开发爱好 (1)
- Flash制作爱好 (0)
- Professional wisdom (4)
- 序言 (1)
- 聊天记录 (0)
- 理想 (3)
- 承诺 (0)
- oifuslfjsldkj_chatrecord (1)
最新评论
-
blues1021:
dafeiwudi 写道什么叫外频和陪频啊?一般电脑都显示主频 ...
计算机组成原理和结构-时钟周期、机器周期、总线周期、指令周期含义和关系 -
dafeiwudi:
什么叫外频和陪频啊?一般电脑都显示主频,它不表示运算速递,我们 ...
计算机组成原理和结构-时钟周期、机器周期、总线周期、指令周期含义和关系
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="configLocation" <!--1.数据源层-->
value="classpath:hibernate.cfg.xml">
<!-- 使用了注释将数据源连接上,并生成了对象sessionFactory -->
</property>
</bean>
<!-- 公司注册DAO-->
<bean id="bspcorpdao" class="com.bsp.dao.BspCorpDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 用户注册DAO-->
<bean id="bspuserdao" class="com.bsp.dao.BspUserDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 认证公司DAO-->
<bean id="bspcorpspldao" class="com.bsp.dao.BspCorpSplDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 联系人DAO-->
<bean id="bspmysplcontactdao"
class="com.bsp.dao.BspMySplContactDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 公告信息DAO-->
<bean id="bspmessagedao" class="com.bsp.dao.BspMessageDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 公告信息DAO-->
<bean id="dao" class="com.bsp.action.REG_CORP_ADMIN1Action">
<property name="managerfactory"> <!--3.DAO操作数据层-->
<ref local="managerfactory" />
<!--1.使用了数据源类对象。-->
<!-- ?where's managerfactory ,2.此为包是所有务逻辑的管理器,业务逻辑又使用了dao类-->
</property>
</bean>
<!-- 询价单DAO-->
<bean id="bspinqdao" class="com.bsp.dao.BspInqDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 询价单涉及部件DAO-->
<bean id="bspinqpartsdao" class="com.bsp.dao.BspInqPartsDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 供应商收到询价记录DAO-->
<bean id="bspinqspldao" class="com.bsp.dao.BspInqSplDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 账户事务逻辑层注入DAO层组件 -->
<bean id="accountmanager" class="com.bsp.service.AccountManagerImpl">
<property name="bspuserdao"> <!-- use LoginAction DAO -->
<ref local="bspuserdao" />
</property>
<property name="bspcorpdao">
<ref local="bspcorpdao" />
</property>
<property name="bspcorpspldao">
<ref local="bspcorpspldao" />
</property>
<property name="bspmysplcontactdao">
<ref local="bspmysplcontactdao" />
</property>
</bean>
<bean id="messagemanager" class="com.bsp.service.MessageManagerImpl">
<property name="bspmessagedao">
<ref local="bspmessagedao" />
</property>
</bean>
<bean id="inqmanager" class="com.bsp.service.InqManagerImpl">
<property name="bspinqdao">
<ref local="bspinqdao" />
</property>
<property name="bspinqpartsdao">
<ref local="bspinqpartsdao" />
</property>
<property name="bspinqspldao">
<ref local="bspinqspldao" />
</property>
</bean> <!--3.特定业务逻辑层-->
<!--1.具体业务类使用了dao对象;2.定义了统一管理他们的管理类,注入业务业务逻辑类对象-->
<!-- 工厂服务层注入事务逻辑层组件 -->
<bean id="managerfactory" class="com.bsp.service.ManagerFactory">
<property name="accountmanager">
<ref local="accountmanager" />
</property>
<property name="messagemanager">
<ref local="messagemanager" />
</property>
<property name="inqmanager">
<ref local="inqmanager" />
</property>
</bean>
<!--2.数据持久的事务管理层-->
<!--1.定义事务管理器,使用数据源对象 2.配置事务拦截器,注入了管理器对象,并定义DML事务传播属性-->
<!--3.定义BeanNameAutoProxyCreator,为指定的dao类自动添加事务拦截器-->
<!-- 事务管理器 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- 配置事务拦截器-->
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<!-- 事务拦截器bean 需要依赖注入一个事务管理器-->
<property name="transactionManager">
<ref local="transactionManager" />
</property>
<property name="transactionAttributes">
<!-- 下面定义事务传播属性-->
<props>
<prop key="save">PROPAGATION_REQUIRED</prop>
<prop key="dele*">PROPAGATION_REQUIRED</prop>
<prop key="find*">PROPAGATION_REQUIRED</prop>
<prop key="query">PROPAGATION_REQUIRED</prop>
<prop key="valid">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<!--定义BeanNameAutoProxyCreator ,该bean 是个bean 后处理器,无须被引用,因此
没有id 属性
这个bean 后处理器,根据事务拦截器为目标bean 自动创建事务代理-->
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<!--指定对满足哪些bean name 的bean 自动生成业务代理-->
<property name="beanNames">
<!-- 下面是所有需要自动创建事务代理的bean-->
<list>
<value>bspcorpdao</value>
<value>bspuserdao</value>
<value>bspcorpspldao</value>
<value>bspmysplcontactdao</value>
<value>bspmessagedao</value>
<value>bspinqdao</value>
<value>bspinqpartsdao</value>
<value>bspinqspldao</value>
</list>
<!-- 此处可增加其他需要自动创建事务代理的bean-->
</property>
<!--下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
<property name="interceptorNames">
<list>
<value>transactionInterceptor</value>
<!-- 此处可增加其他新的工nterceptor-->
</list>
</property>
</bean>
<!--4.action页面控制层-->
<!-- 1.使用了统一的managerfactory对象实现统一接口 -->
<!-- why use that's name标识,上面name 是为了注释中的namespace下的Action value下注入对象处理页面控制 -->
<!-- Struts动作控件器Bean设置 -->
<!-- 用户登录验证,注意,Spring2.0单实例模式的设置改成了scope,而在2.0以前是singleton-->
<bean name="logonAction" class="com.bsp.action.LogonAction"
scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!-- 公司及管理员注册 -->
<bean name="/MyCountManager/REG_CORP_ADMIN1" id="UserIsReg"
class="com.bsp.action.REG_CORP_ADMIN1Action" scope="prototype"><!-- why use that's name标识 -->
<property name="managerfactory"> <!-- 上面name 是为了注释中的namespace下的Action value下注入对象处理页面控制 -->
<ref local="managerfactory" />
</property>
</bean>
<!-- 普通用户注册 -->
<bean name="/MyCountManager/REG_CORP_USER"
class="com.bsp.action.REG_CORP_USERAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!-- 用户注册 -->
<bean name="/MyCountManager/BSP_User_Reg" id="BSPUserReg"
class="com.bsp.action.BSP_User_RegAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!-- 用户找回密码-->
<bean name="BSP_User_GetPass"
class="com.bsp.action.BSP_User_GetPassAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!--显示己注册的公司信息-->
<bean name="USERREG"
class="com.bsp.action.USERREGAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!--显示己认证公司信息-->
<bean name="/MyOrderParts/BUYCERSPL"
class="com.bsp.action.BUY_CER_SPLAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!--显示联系人信息-->
<bean name="/MyOrderParts/BUYSPLLIST"
class="com.bsp.action.BUY_SPL_LISTAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!--公告板管理-->
<bean name="/MessageBoard/bspMessage"
class="com.bsp.action.BspMessageAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!--询价管理-->
<bean name="/MyOrderParts/BUYINQEDIT" id="BUYINQEDIT"
class="com.bsp.action.BUY_INQ_EDITAction" scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
<!--收到询价管理-->
<bean name="/MySaleparts/SALERECINQLIST"
class="com.bsp.action.SALE_REC_INQ_LISTAction"
scope="prototype">
<property name="managerfactory">
<ref local="managerfactory" />
</property>
</bean>
</beans>
在有注释的Action类中如下:
@Namespace("/MyCountManager")
public class REG_CORP_ADMIN1Action extends BaseAction {
private static final long serialVersionUID = 1L;
REG_CORP_ADMIN1VO regcorpadmin;//管理员注册VO
public void setRegcorpadmin(REG_CORP_ADMIN1VO regcorpadmin) {
this.regcorpadmin = regcorpadmin;
}
public REG_CORP_ADMIN1VO getRegcorpadmin() {
return this.regcorpadmin;
}
public String UserIsReg(String uid) {//判断用户是否已注册,供DWR调用
if (this.managerfactory.getAccountmanager().findByUserId(uid) != null) {
return "yes";
}
return "no";
}
public String CorpIsReg(String cid) {//判断企业是否已注册,供DWR调用
if (this.managerfactory.getAccountmanager().findByCorpId(cid) != null) {
return "yes";
}
return "no";
}
@Action(value = "REG_CORP_ADMIN1",
results = { @Result(name = "input", location = "/MyCountManager/REG_CORP_ADMIN1.jsp") })
public String execute() {..........}
}
<!--5.客户表现层--->
<!--略,因为spring配置文件中没有-->
发表评论
-
Unity3DHouse中成功删除信息
2011-08-10 01:12 817//在jsp页面传入的参数在Action类中调用deleteH ... -
hibernate3.0中实现修改数据记录
2011-08-10 01:11 6861.查询页面中传入参数: <a href=& ... -
Unity3DHouse4项目save(object1)到库问题的解决
2011-08-10 01:10 7091.添加时点击没有任何响应和提示,google了一遍有说是 ... -
Unity3DHouse4系统未解问题
2011-08-10 01:08 7991.struts1.2+spring 2.2+Hibern ... -
Struts表单提交的text String数据可以作为HQL中的Integer类型处理
2011-08-10 01:06 8761.传入数据的表单中的声明 :<form metho ... -
6月28日房产的登录模块报错
2011-08-10 01:04 8251.JSP语法报错 exception org.ap ... -
struts的jsp Action中传入EL表达式参数及myeclipse操作技巧(涛)
2011-08-10 01:03 8791.<a href="/searchBuild ... -
Struts标签之Cannot find bean under name org.apache.struts.taglib.html.BEAN错误
2011-08-10 01:02 1293Cannot find bean under name ... -
【转】关于在HQL中的模糊查询问题
2011-08-10 01:02 781来自:20 ... -
Struts中的Action二次请求不认路径../的解决方法
2011-08-10 01:00 847地址栏没有了项目名称:http://localhost:808 ... -
myEclipse项目部署问题之解决方法
2011-08-10 00:58 1012myeclipse下工程: 1.安装myclipse时6.5 ... -
Strut2的属性驱动,模型驱动的理解
2011-08-10 00:58 1079因为在struts1的版本中,属性的拦截以及控制的处 ... -
Hibernate注释中的参照完整性和复合主键类解析
2011-08-10 00:57 1043在引入了或声明了相关表或类后就能够使用它下面的方法,例如: ... -
【转】hibernate的@EmbeddedId嵌入式主键类详解
2011-08-10 00:56 1042复合主键也可以采用 ... -
Spring 2.5注释程序执行过程和融合xml使用
2011-08-10 00:54 831Spring2.5注释 一、加载Spirng容器,在web. ... -
【转】Struts2注解使用解析
2011-08-10 00:54 810如果希望使用 struts2 ... -
《转》struts.xml 模块化管理
2011-08-10 00:52 819... -
《转改》Struts2和Spring的集成原理
2011-08-10 00:50 6902009年09月02日 星期三 下午 ... -
房产销售系统的服务器配置问题?
2011-08-10 00:48 705Tomcat在外面的安装时抛出404找不到资源,测试后 ... -
《学生选课系统课程设计》提交过程的感悟
2011-08-10 00:46 769今天去提交数据库课程设计,昨晚把数据库安装了一晚JDK,m ...
相关推荐
这个压缩包文件中的"spring源码 中英文注释"为开发者提供了一个深入理解Spring框架内部工作原理的机会。通过阅读源码和注释,我们可以更清晰地了解Spring如何管理依赖注入、AOP(面向切面编程)、事务管理、上下文...
DI使得对象之间的依赖关系可以通过配置文件或注解来声明,而AOP则允许开发者在不修改原有代码的情况下添加新的功能。 2. **Spring MVC**:用于构建Web应用程序,通过Model-View-Controller模式简化了请求处理和视图...
Spring 3.x 注解应用详解 Spring 3.x 框架引入了依赖注入的注解,改变了传统的 XML 配置方式,提供了一种更加灵活和方便的依赖配置方式。下面对 Spring 3.x 的注解应用进行详细的介绍。 一、属性装配 在 Spring ...
在SpringBoot中,配置文件是管理和维护应用配置的重要组成部分。本篇文章将详细解析SpringBoot中的配置文件,重点讲解YML格式的配置。 1. **配置文件格式** SpringBoot 支持两种配置文件格式:`application....
《Spring框架5.0.2.RELEASE中文注释版详解》 Spring框架是Java开发中的一个核心组件,尤其在企业级应用中广泛使用。本文将深入解析Spring框架5.0.2.RELEASE版本,该版本包含了详尽的中文注释,便于开发者理解和学习...
4. **Spring配置文件** - XML配置: `applicationContext.xml` 5. **JSP文件** - 视图模板: `WEB-INF/views/user.jsp` #### 七、应用命名总结 1. **Java类**: 采用名词形式,每个单词首字母大写。 2. **字段**: ...
同时,良好的文档和代码注释也是必不可少的,有助于团队协作和后期维护。 综上所述,这个基于SpringBoot的小型图书销售系统展示了如何利用SpringBoot的特性快速构建一个高效、可扩展的Web应用。通过学习这个项目,...
spring配置文件详解,交你如何理解spring,熟练运用spring
Spring 配置文件详解 Spring 框架中的配置文件是项目的核心组件之一,用于定义和管理应用程序中的 Bean 对象。配置文件通常以 XML 文件形式存在,用于描述 Bean 对象的定义、关系和依赖关系。在本文中,我们将详细...
### Spring Mybatis Sharding-JDBC 示例详解 #### 一、Sharding-JDBC 概述 在分布式系统架构中,随着业务量的增长,单个数据库往往难以承受巨大的读写压力,因此需要采用数据库分片(Sharding)技术来提高系统的可...
1. **配置文件**:如struts.xml、spring-config.xml、hibernate.cfg.xml等,分别定义Struts2、Spring和Hibernate的配置。 2. **模型类(Entities)**:对应数据库中的表,实现Hibernate的注解或XML映射文件。 3. **...
在本文档中,我们将详细探讨如何构建一个基于注释配置的SSH2应用,避免传统的XML配置,提升开发效率。 首先,我们来了解SSH2框架的核心组成部分: 1. **Struts2**:作为MVC(模型-视图-控制器)框架,负责处理HTTP...
1. **添加依赖**:在 pom.xml 文件中添加 Swagger 相关的依赖,版本号为 2.9.2: ```xml <groupId>io.springfox <artifactId>springfox-swagger2 <version>2.9.2 <groupId>io.springfox <artifactId>...
18. **Ctrl+Shift+/**:在Java代码中添加块注释`/* */`,在JSP文件中则是`<!--~-->`。 19. **Ctrl+Shift+\**:取消块注释。 20. **Ctrl+Shift+T**:打开Open Type对话框,可以快速查找并打开类文件。 21. **Ctrl+...
### Hibernate配置文件元素详解 #### 一、概述 在SSH(Spring+Struts+Hibernate)框架中,Hibernate作为持久层框架扮演着非常重要的角色。它能够实现对象关系映射(ORM),将Java对象映射到数据库表上。为了正确地...
**Spring 2.5 注释驱动的 IoC 功能详解** Spring 框架自 2.5 版本开始引入了对注解的强大支持,极大地简化了依赖注入(Dependency Injection,简称 DI)的配置过程。注解驱动的 IoC(Inverse of Control,控制反转...
- **Spring配置文件**: 定义Bean, 配置事务管理 9. **测试与部署**: - 运行测试确保功能正常 - 将数据库对象导出为SQL文件 - 提交项目代码及数据库文件 #### 五、注意事项 1. **界面美观**: 确保界面布局合理,...