- 浏览: 17085 次
- 来自: 长沙
-
最新评论
文章列表
在编写spring data jpa的dao时,只需在接口中按规约提供方法的声明即可.而有些业务实现无法通过声明方法或编写简单的SQL实现,这就需要扩展Spring Data JPA.
1.为某一个特定的Repositrory添加自定义方法.
注意:默认情况下,Spring Data 会在base-package中查找"接口名Impl"做为实现类,也可以通过 repository-impl-postfix声明后缀.
示例:
1. 准备领域对象
@Entity
public class Emplo ...
Repository:
public interface Repository<T, ID extends Serializable> {
}
这个接口只是一个空的接口,目的是为了统一所有Repository的类型,其接口类型使用了泛型,泛型参数中T代表实体类型,ID则是实体中id的类型。
CrudRepository ...
spring data 是一个用于建行数据库访问,并支持云服务的开源框架,其主要目标是使得对数据库的访问变得更方便快捷,并支持map-reduce框架和云计算数据服务.spring data包含多个字项目:
Commons - 提供共享的基础框架,适合各个子项目 ...
代理模式
- 博客分类:
- design model
1.什么是代理模式
代理:出发点到目的地中间隔了一层,这一层叫代理.
代理一般作用是预处理消息,过滤消息,消息转发给委托类.
代理类是接活的,委托类是干活的,它们都有同一个接口.
2.代理类分类
静态代理:写死的,已经存在的class.
动态代理:活的,在程序运行时,反射机制动态创建生成的.
3.静态代理
分基于接口的静态代理和基于继承的静态代理.
(1)基于接口的静态代理.个人感觉就是装饰器模式的一种:
<1>.先定义接口,父亲的能力eat()吃东西.
JPA实体关联(hibernate实现)
- 博客分类:
- JPA
1.一对一(OneToOne)
一对一关系映射分为单向一对一和多向一对一。在配置关系时必须确立控制方和被控制方。单向和双向的区别为看主控方和被控方两边是否都配置了@OneToOne,如果都有为双向一对一,反之为单向。
双向一对一关联有两条规则:@JoinColumn必须配置在关系维护方即主控方上面;mappedBy属性配置在被维护方的@OneToOne中,并且只能指向主控方,名称定义为主控方中包含的被控方引用名称。
/**
* person属于关系维护方
*
*/
@Entity
@Table(name="t_one_person")
...
基础测试:
第一步:配置依赖:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hiber ...
JPA全称java Persistence API.是java对象持久化的API.是javaEE5.0平台的标准ORM规范,使得应用程序以统一方式访问持久层,主要通 过JDK5.0以上的注解和XML描述对象,将运行期的实体对象持久化到数据库中.
资料:http://www.cnblogs.com/holbrook/archive/ ...
1.使用jetty-maven-plugin插件
1.1.使用jetty-maven-plugin插件进行部署web项目
参考资料:http://www.blogjava.net/Jdonee/archive/2008/12/11/245650.html
为了能够使用maven的jetty插件对项目进行测试,需要进行如下操作:
1.修改settings.xml
</setting ...
spring使用了jackson类库,帮助我们在java对象和json、xml数据之间的互相转换。他可以将控制器返回的对象直接转换成json数据,供客户端使用。客户端也可以传送json数据到服务器进行直接转换。
SpringMVC层跟JSon结合,几乎不需 ...
springMVC提供的异常处理主要有两种方式,一种是直接实现自己的 HandlerExceptionResolver,当然这也包括使用Spring已经为我们提供好的 SimpleMappingExceptionResolver和DefaultHandlerExceptionResolver,另一种是使用注解的 方式实现一个专门用于处理异常的Controller——ExceptionHandler.
1.spring mvc 自己实现了SimpleMappingExceptionResolver 和 DefaultHandlerExceptionResolver.
Defa ...
1.引入spring mvc环境,配置依赖.
pom.xml :
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
<dependency>
< ...
1.聚合与继承的关系
多模块maven项目中的聚合与继承是两个概念.
聚合主要是为了方便快速构建项目.
继承主要是为了消除重复配置.
聚合配置代码:
<modules>
<module>../Hello</module>
<module>../HelloFriend</module>
<module>../MakeFriends</module>
</modules>
其中module的路径为相对路径.
继承配置代码:
...
maven的生命周期
- 博客分类:
- maven
maven的生命周期就是为了对所有的构建过程进行抽象和统一.
maven拥有三套独立的生命周期,分别为clean,default和site.clean生命周期的目的是清理项目,default生命周期目的是构建项目,而site生命周期的目的是建立项目站点.
1.clean生命周期
clean生命周期的目的是清理项目,它包括三个阶段:
pre-clean :执行一些清理前需要完成的工作
clean清理上一次构建生成的文件
post-clean执行一些清理后需要完成的工作
2.default生命周期
defalut生命周期定义了真正的构建时所需要执行的所有步骤,它是生命周期中最核心的部分
p ...