ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 企业开发 >> 深入学习spring-boot系列(二)--使用spring-data-jpa

深入学习spring-boot系列(二)--使用spring-data-jpa

来源:网络整理     时间:2016-05-16     关键词:Spring,g-data

本篇文章主要介绍了"深入学习spring-boot系列(二)--使用spring-data-jpa",主要涉及到Spring,g-data方面的内容,对于企业开发感兴趣的同学可以参考一下: 本文使用我之前的博文项目作为原型,改成spring-boot项目,并使用spring-data-jpa替代mybatis作为dao实现。 原项目参考,Sprin...

本文使用我之前的博文项目作为原型,改成spring-boot项目,并使用spring-data-jpa替代mybatis作为dao实现。
原项目参考,Spring+SpringMVC+MyBatis+Maven框架整合:http://jisonami.iteye.com/blog/2295345
由于spring-boot的jar项目暂时不支持jsp,因此本项目依旧是一个war项目,下一篇文章会介绍使用thymeleaf模板替换jsp页面后的jar项目。
本文主要记录以下几点:
一、spring-boot约定的目录结构
二、Maven需要引入的jar
三、application.properties的相关配置
四、spring-data-jpa的简单使用
一、spring-boot约定的目录结构

对于这个目录结构而言,Application.java是spring的Java配置类,里面包含spring-boot应用的main()方法,在spring-boot的jar项目中会执行该方法
spring目前支持三种元数据的配置,即xml、Java注解、Java配置类,而spring-boot推荐使用Java配置类来完成元数据的配置。
Jisonami2目前的目录结构是这样的:

Jisonami2Application.java是spring-boot的入口类,包含配置信息和main()方法
@SpringBootApplication
@Controller
public class Jisonami2Application {

	@RequestMapping("/")
	public String index(){
		return "../../index";
	}

	public static void main(String[] args) {
		SpringApplication.run(Jisonami2Application.class, args);
	}
}

@SpringBootApplication其实是以下三个注解的合并,取其默认值时直接使用@SpringBootApplication
@Configuration
@EnableAutoConfiguration
@ComponentScan

目前本项目是war项目,所以Jisonami2Application需要继承SpringBootServletInitializer类,并实现如下方法
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
	return builder.sources(Jisonami2Application.class);
}

二、Maven需要引入的jar
在maven中有两种方式可以配置成spring-boot项目,本文使用最简单的直接继承spring-boot-starter-parent成为spring-boot项目。
通过在spring-boot项目的pom.xml中引入一些spring-boot-starter的依赖,可以简化项目的配置。
maven的pom.xml如下:

	4.0.0
	org.jisonami
	Jisonami2
	war
	0.1.1
	Jisonami Maven Webapp
	http://maven.apache.org

	
		org.springframework.boot
		spring-boot-starter-parent
		1.3.3.RELEASE
	

	

		1.8

		5.1.0.Final
		10.2.0.4.0
		1.1.2
	

	
		
			junit
			junit
			test
		
		
			org.springframework.boot
			spring-boot-starter-web
		
		
			org.springframework.boot
			spring-boot-starter-data-jpa
		

		
			org.springframework.boot
			spring-boot-starter-tomcat
			provided
		
		
			org.apache.tomcat.embed
			tomcat-embed-jasper
			provided
		

		
			com.oracle
			ojdbc14
			${oracle14.version}
		
		
			mysql
			mysql-connector-java
		

		
			javax.servlet
			jstl
		
		
			taglibs
			standard
			${taglibs.standard.version}
		

	

	
		

			
				org.springframework.boot
				spring-boot-maven-plugin
			
		
	



三、application.properties的相关配置
application.properties是spring-boot项目的配置文件,spring-boot内置了很多默认配置信息,在application.properties文件中我们可以覆盖spring-boot的默认配置信息
目前本项目只需要配置spring-mvc的jsp跳转的前缀和后缀
#指定项目上下文路径
#server.context-path=/Jisonami2
#配置jsp视图的前缀和后缀
spring.mvc.view.prefix=/WEB-INF/content/
spring.mvc.view.suffix=.jsp

四、spring-data-jpa的简单使用
1、首先需要配置数据源
在Jisonami2Application.java中加入如下方法,配置数据源
@Bean
@ConfigurationProperties(locati name="code">private static final String[] DATA_SOURCE_TYPE_NAMES = { "org.apache.tomcat.jdbc.pool.DataSource", "com.zaxxer.hikari.HikariDataSource", "org.apache.commons.dbcp.BasicDataSource", "org.apache.commons.dbcp2.BasicDataSource" };

DBConfig.properties的配置:
datasource.driverClassName=oracle.jdbc.driver.OracleDriver
datasource.url=jdbc:oracle:thin:@192.168.75.130:1521:orcl
datasource.username=jison
datasource.password=jison

2、以UserRepository为例,简单介绍spring-data-jpa的使用
UserRepository的代码如下:
public interface UserRepository extends CrudRepository{

	public User findByName(String name);

	public User findByNameAndPassword(String name, String password);

}

UserRepository继承了CrudRepository接口与,CrudRepository接口里面定义了一些常用的方法,去掉注释,看其源码定义了如下方法:
 S save(S entity);

	 Iterable save(Iterable entities);

	T findOne(ID id);

	boolean exists(ID id);

	Iterable findAll();

	Iterable findAll(Iterable ids);

	long count();

	void delete(ID id);

	void delete(T entity);

	void delete(Iterable entities);

	void deleteAll();

好了,spring-data-jpa自动帮我们生成这些方法的实现的,我们只需要在service里调用对应方法实现对应的逻辑就行了。
spring-data-jpa具体用法自行google
至此,本项目就搭建完成了,更详细的代码参考我的github项目Jisonami的0.1.1版本:
https://github.com/jisonami/Jisonami2/tree/0.1.1

  • 大小: 12.5 KB
  • 大小: 18.7 KB
  • 查看图片附件

以上就介绍了深入学习spring-boot系列(二)--使用spring-data-jpa,包括了Spring,g-data方面的内容,希望对企业开发有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_1096785.html

相关图片

相关文章