|
1、JDBC- org.springframework.bootspring‐boot‐starter‐jdbcmysqlmysql‐connector‐javaruntime
复制代码- spring:datasource:username: rootpassword: 123456url: jdbc:mysql://192.168.15.22:3306/jdbcdriver‐class‐name: com.mysql.jdbc.Driver
复制代码 成果:
默许是用org.apache.tomcat.jdbc.pool.DataSource作为数据源;
数据源的相关设备都在DataSourceProperties里面;
自动设备道理:
org.springframework.boot.autoconfigure.jdbc:
1、参考DataSourceConfiguration,按照设备建立数据源,默许操纵Tomcat毗连池;可以操纵
spring.datasource.type指定自界说的数据源典范;
2、SpringBoot默答应以支持;
org.apache.tomcat.jdbc.pool.DataSource、HikariDataSource、BasicDataSource、
3、自界说数据源典范- /*** Generic DataSource configuration.*/@ConditionalOnMissingBean(DataSource.class)@ConditionalOnProperty(name = "spring.datasource.type")static class Generic {@Beanpublic DataSource dataSource(DataSourceProperties properties) {//操纵DataSourceBuilder建立数据源,操纵反射建立响应type的数据源,而且绑定相关属性return properties.initializeDataSourceBuilder().build();}}
复制代码 4、DataSourceInitializer:ApplicationListener;
感化:
1)、runSchemaScripts();运转建表语句;
2)、runDataScripts();运转插入数据的sql语句;
默许只需要将文件命名为:- schema‐*.sql、data‐*.sql默许法则:schema.sql,schema‐all.sql;可以操纵schema:‐ classpath:department.sql指定位置
复制代码 5、操纵数据库:自动设备了JdbcTemplate操纵数据库
2、整合Druid数据源- 导入druid数据源@Configurationpublic class DruidConfig {@ConfigurationProperties(prefix = "spring.datasource")@Beanpublic DataSource druid(){return new DruidDataSource();}//设备Druid的监控//1、设备一个治理背景的Servlet@Beanpublic ServletRegistrationBean statViewServlet(){ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(),"/druid/*");Map initParams = new HashMap();initParams.put("loginUsername","admin");initParams.put("loginPassword","123456");initParams.put("allow","");//默许就是答应全数拜候initParams.put("deny","192.168.15.21");bean.setInitParameters(initParams);return bean;}//2、设备一个web监控的filter@Beanpublic FilterRegistrationBean webStatFilter(){FilterRegistrationBean bean = new FilterRegistrationBean();bean.setFilter(new WebStatFilter());Map initParams = new HashMap();initParams.put("exclusions","*.js,*.css,/druid/*");bean.setInitParameters(initParams);bean.setUrlPatterns(Arrays.asList("/*"));return bean;}}
复制代码 3、整合MyBatis- org.mybatis.spring.bootmybatis‐spring‐boot‐starter1.3.1
复制代码
步伐:
1)、设备数据源相关属性(见上一节Druid)
2)、给数据库建表
3)、建立JavaBean
4)、注解版- //指定这是一个操纵数据库的mapper@Mapperpublic interface DepartmentMapper {@Select("select * from department where id=#{id}")public Department getDeptById(Integer id);@Delete("delete from department where id=#{id}")public int deleteDeptById(Integer id);@Options(useGeneratedKeys = true,keyProperty = "id")@Insert("insert into department(departmentName) values(#{departmentName})")public int insertDept(Department department);@Update("update department set departmentName=#{departmentName} where id=#{id}")public int updateDept(Department department);}
复制代码 题目:
自界说MyBatis的设备法则;给容器中增加一个ConfigurationCustomizer;- @org.springframework.context.annotation.Configurationpublic class MyBatisConfig {@Beanpublic ConfigurationCustomizer configurationCustomizer(){return new ConfigurationCustomizer(){@Overridepublic void customize(Configuration configuration) {configuration.setMapUnderscoreToCamelCase(true);}};}}
复制代码- 操纵MapperScan批量扫描全数的Mapper接口;@MapperScan(value = "com.atguigu.springboot.mapper")@SpringBootApplicationpublic class SpringBoot06DataMybatisApplication {public static void main(String[] args) {SpringApplication.run(SpringBoot06DataMybatisApplication.class, args);}}
复制代码 5)、设备文件版- mybatis:config‐location: classpath:mybatis/mybatis‐config.xml 指定全局设备文件的位置mapper‐locations: classpath:mybatis/mapper/*.xml 指定sql映照文件的位置
复制代码 更多操纵参照
http://www.mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/
4、整合SpringData JPA
1)、SpringData简介
2)、整合SpringData JPA
JPA:ORM(Object Relational Mapping);
1)、编写一个实体类(bean)和数据表举行映照,而且设备好映照关系;- //操纵JPA注解设备映照关系@Entity //告诉JPA这是一个实体类(和数据表映照的类)@Table(name = "tbl_user") //@Table来指定和哪个数据表对应;假如省略默许表名就是user;public class User {@Id //这是一个主键@GeneratedValue(strategy = GenerationType.IDENTITY)//自增主键private Integer id;@Column(name = "last_name",length = 50) //这是和数据表对应的一个列private String lastName;@Column //省略默许列名就是属性名private String email;
复制代码 2)、编写一个Dao接口来操纵实体类对应的数据表(Repository)- //继续JpaRepository来完成对数据库的操纵public interface UserRepository extends JpaRepository {}
复制代码 3)、底子的设备JpaProperties- spring:jpa:hibernate:# 更新大要建立数据表结构ddl‐auto: update# 控制台表示SQLshow‐sql: true
复制代码 免责声明:假如加害了您的权益,请联系站长,我们会实时删除侵权内容,感谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|