随笔分类 - JavaEE
摘要:SSH 框架整合技术: 1. Spring与Hibernate整合(对比Spring与JDBC模板): Service业务层代码和测试类都不变,添加实体类的映射配置文件: 修改Dao接口的实现类: 由于 Dao 实现类要通过 Hibernate 来操作 DB,所以在该类中需要获取到 Session
阅读全文
摘要:Spring的事务管理: 事务原本是数据库中的概念,在 Dao 层。但一般情况下,需要将事务提升到业务层,即 Service 层。这样做是为了能够使用事务的特性来管理具体的业务。 在 Spring 中通常可以通过以下三种方式来实现对事务的管理: (1)使用 Spring 的事务代理工厂管理事务 (2
阅读全文
摘要:Spring 与 JDBC模板: 为了避免直接使用 JDBC 而带来的复杂且冗长的代码,Spring 提供了一个强有力的模板类 JdbcTemplate 来简化 JDBC 操作。并且,数据源 DataSource 对象与模板 JdbcTemplate 对象均可通过 Bean 的形式定义在配置文件中,
阅读全文
摘要:AspectJ 对 AOP 的实现: 对于 AOP 这种编程思想,很多框架都进行了实现。Spring 就是其中之一,可以完成面向切面编程。然而,AspectJ 也实现了 AOP 的功能,且其实现方式更为简捷,使用更为方便,而且还支持注解式开发。所以,Spring 又将 AspectJ 的对于 AOP
阅读全文
摘要:Spring与AOP: AOP的引入: 主业务经常需要调用系统级业务(交叉业务),如果在主业务代码中大量的调用系统级业务代码,会使系统级业务与主业务深度耦合在一起,大大影响了主业务逻辑的可读性,降低了代码的可维护性,同时也增加了开发难度。 所以,可以采用动态代理方式。动态代理是 OCP 开发原则的一
阅读全文
摘要:基于注解的DI(依赖注入): 对于 DI 使用注解,将不再需要在 Spring 配置文件中声明 Bean 实例。只需要在 Spring 配置文件中配置组件扫描器,用于在指定的基本包中扫描注解。 注意:添加的约束http://www.springframework.org/schema/context
阅读全文
摘要:基于XML的DI(依赖注入): Bean 实例在调用无参构造器创建了空值对象后,就要对 Bean 对象的属性进行初始化。初始化是由容器自动完成的,称为注入。根据注入方式的不同,常用的有两类:设值注入、构造注入。还有另外一种,实现特定接口注入。由于这种方式采用侵入式编程,污染了代码,所以几乎不用。 注
阅读全文
摘要:Bean的装配: Bean 的装配,即 Bean 对象的创建。容器根据代码要求创建 Bean 对象后再传递给代码的过程,称为 Bean 的装配。 1. 创建Bean对象的方式: 1. 通过 getBean()方式从容器获取指定的 Bean 对象。 Bean的配置:<bean id="someServ
阅读全文
摘要:Spring程序开发: 1. 导入jar包(略) 2. 创建Spring配置文件: Spring 配置文件的文件名可以随意,但 Spring 建议的名称为 applicationContext.xml 测试类: 解释:ApplicationContext 用于加载 Spring 的配置文件,在程序中
阅读全文
摘要:Spring概述: Spring框架: Spring 由 20 多个模块组成,它们可以分为数据访问/集成(Data Access/Integration)、Web、面向切面编程(AOP, Aspects)、应用服务器设备管理(Instrumentation)、消息发送(Messaging)、核心容器
阅读全文
摘要:Hibernate注解式开发: (1)注解式开发的注意点: Hibernate中使用注解,主要是为了替代映射文件,完成“类到表,属性到字段”的映射。 JPA提供了一套功能强大的注解。Hibernate直接使用了JPA的这套注解。当然,对于JPA中的一些不足,Hibernate又开发了一些自己的注解。
阅读全文
摘要:Hibernate事务相关内容: (1) 事务四大特性(简称ACID): (1)原子性(Atomicity) 事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行。 (2)一致性(Consistency) 几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。 (3)隔离
阅读全文
摘要:Hibernate缓存机制: 缓存范围: 应用程序中根据缓存的范围,可以将缓存分为三类: (1)事务范围缓存(单Session,即一级缓存) 事务范围的缓存只能被当前事务访问,每个事务都有各自的缓存。缓存的生命周期依赖于事务的生命周期:当事务结束时,缓存的生命周期也会结束。事务范围的缓存使用内存作为
阅读全文
摘要:Hibernate检索优化: 检索即查询。为了减轻DB的访问压力,提高检索效率,Hibernate对检索进行了优化。 所谓检索优化,指的是对查询语句的执行时机进行了细致、严格的把控:并不是代码中一出现查询语句,马上就在后台调用执行select语句。而是在代码中真正需要时才执行select。即将sel
阅读全文
摘要:关联关系映射: 关联关系,是使用最多的一种关系,非常重要。在内存中反映为实体关系,映射到DB中为主外键关系。实体间的关联,即对外键的维护。关联关系的发生,即对外键数据的改变。 外键:外面的主键,即,使用其它表的主键值作为自已的某字段的取值。 (1) 基本概念: 关联属性:Java代码的实体类定义中,
阅读全文
摘要:单表查询: Hibernate是DAO层技术,对数据的使用,查询是最为重要的。Hibernate的查询技术非常强大,支持原始SQL语句查询,支持QBC查询及Hibernate特有的HQL查询。 HQL,Hibernate Query Language,Hibernate查询语言,它与SQL非常相似。
阅读全文
摘要:详解Hibernate的API: (1)Configuration接口: org.hibernate.cfg.Configuration接口的作用是加载主配置文件及映射文件,以实现对Hibernate的启动。Configuration实例调用buildSessionFactory方法便可创建一个Se
阅读全文
摘要:单表的增删改查操作: (1)定义获取Session和SessionFactory的工具类: (2) 增加操作: (3)删除操作: (4) 更新操作: (5) 查询操作: (6) 增删改的底层执行顺序: 注意:底层执行的顺序是,先执行两次查询操作,再依次执行增、改、删。(忽略代码中的sessio.fl
阅读全文
摘要:Hibernate简介: Hibernate是一个开放源代码的ORM(对象关系映射)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servle
阅读全文
摘要:防止表单重复提交: 用户可能由于各种原因,对表单进行重复提交。Struts2中使用令牌机制防止表单自动提交。以下引用自北京动力节点: 前端表单提交代码: 表单下添加<s:token/>即可。 struts.xml配置: <result name="invalid.token">/message.js
阅读全文

浙公网安备 33010602011771号