当前位置: 首页 > news >正文

单县做网站省 两学一做 专题网站

单县做网站,省 两学一做 专题网站,关键字优化,php购物网站开发背景如果你项目中一直用的是 Spring Boot#xff0c;那么恭喜你没有经历过用 Spring 手动集成其它框架的痛苦。 都说 Spring Boot 大大简化了 Spring 框架开发 Web 应用的难度#xff0c;这里我们通过配置 Hibernate 的两种方式来深刻体会这一点#xff1a; 使用 Spring 框架集…如果你项目中一直用的是 Spring Boot那么恭喜你没有经历过用 Spring 手动集成其它框架的痛苦。 都说 Spring Boot 大大简化了 Spring 框架开发 Web 应用的难度这里我们通过配置 Hibernate 的两种方式来深刻体会这一点 使用 Spring 框架集成 Hibernate 手动配置使用 Spring Boot 集成 Hibernate 自动配置 Hibernate 手动配置 我们先来看看手动配置 Hibernate 有多么麻烦。 第一步、引入JAP依赖 !-- JPA 的相关依赖 -- dependencygroupIdorg.springframework/groupIdartifactIdspring-orm/artifactIdversion6.1.4/version /dependency dependencygroupIdorg.springframework.data/groupIdartifactIdspring-data-jpa/artifactIdversion3.2.4/version /dependency第二步、引入Hibernate依赖 !-- Hibernate作为JPA 实现 -- dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-core/artifactIdversion5.4.30.Final/version /dependency dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-entitymanager/artifactIdversion5.4.30.Final/version /dependency第三步、引入数据库相关的依赖 !-- JDBC 驱动程序 -- dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.28/version /dependency!-- 数据库连接池 -- dependencygroupIdcom.mchange/groupIdartifactIdc3p0/artifactIdversion0.10.0/version /dependency这么多个包用哪些包用什么版本一般人谁记得住 更糟糕的是如果运气不好你还得花很多时间解决各个依赖之间的兼容问题 这还只是持久层的相关依赖如果还要集成其它框架工作量非常大 第四步、配置数据源 在applicationContext.xml 中配置各种bean。 首先要配置的是数据源 bean iddataSource classcom.mchange.v2.c3p0.ComboPooledDataSource destroy-methodcloseproperty namedriverClass valuecom.mysql.cj.jdbc.Driver/property namejdbcUrl valuejdbc:mysql://localhost:3306/test/property nameuser valueroot/property namepassword value123456/ /bean第五步、配置实体管理器 定义实体管理器的 bean并设置 JPA 实现类如 Hibernate、数据源等属性。 注意在早期的JPA版本中配置的是sessionFactory bean identityManagerFactory classorg.springframework.orm.jpa.LocalContainerEntityManagerFactoryBeanproperty namedataSource refdataSource /property namepackagesToScan valuecom.example.domain /property namejpaVendorAdapterbean classorg.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter //property /bean第六步、配置事务管理器 bean idtransactionManager classorg.springframework.orm.jpa.JpaTransactionManagerproperty nameentityManagerFactory refentityManagerFactory/ /bean第七步、开启注解式事务 tx:annotation-driven transaction-managertransactionManager/第八步、编写持久层代码 到这里你终于把 JPA (Hibernate) 用Spring集成好了并且配置好了。 终于你可以开始动手写代码了。 Repository public interface UserRepository extends JpaRepositoryUser, Long { }Hibernate 自动配置 在前面我们经历千辛万苦终于用Spring 集成 Hibernate框架并且配置好了。好了接下来你还要集成 Web、集成 Spring Security等等你会不会暗暗叫苦呢 前面的手动配置存在很明显的缺陷 集成某个框架我们需要记住所有必要的依赖不然很容易抛出 NoSuchClassException 的异常。我们还需要谨慎使用相关依赖的版本不然很容易出现版本不兼容的情况。上面的依赖和xml配置是模块化的配置100个项目有99个基本一致。 还在Spring Boot 带来了自动配置的机制它帮我们悄悄的完成了绝大部分的工作。 下面我们看看通过Starter 和 自动配置集成和配置 Hibernate有多么的简易 第一步、引入starter-data-jpa dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-jpa/artifactId /dependency第二步、引入数据库驱动 dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.28/version /dependency第三步、配置数据库连接信息 在application.properties中配置数据库信息 spring.datasource.urljdbc:mysql://localhost:3306/test spring.datasource.usernameroot spring.datasource.password123456 spring.jpa.properties.hibernate.dialectorg.hibernate.dialect.MySQL8Dialect spring.datasource.driver-class-namecom.mysql.jdbc.Driver到这里我们就完成了 Spring Boot 对 Hibernate的集成 看看我们做了什么 依赖中引入 starter-data-jpa 和 mysql驱动两个依赖只在主配置中配置了数据库账号密码等最基本信息 其它的事情全部有 starter 和 自动配置机制完成 对比 starter 我们引入了一个 starter 依赖基本完成所有的依赖的配置。 可以看到传递依赖会把必要的依赖都自动包含进来 自动配置 对于配置其实就更容易理解了其实我们在“手动配置”中做的事情都是必须的比如创建配置 DataSource、entityManagerFactory、transactionManager 这些bean 并注入到Spring 容器中。 只不过自动配置机制偷偷的帮我们做完了一切。 总结 通过手动配置和自动配置两种方式集成 一个框架我们可以强烈的感受到 Spring Boot的starter 和 自动配置机制的强大。 这对于我们专栏后面从原理和源码级别理解 starter 和 自动配置 机制是非常非常有帮助的欢迎大家点赞收藏后续的文章我们会更深层次的角度去学习这两个重点。
http://www.dnsts.com.cn/news/167539.html

相关文章:

  • 企业网站建设的服务类型有哪些优化是什么
  • 北京微信网站开发报价都江堰网站建设
  • 怎样做关于自己的网站申泽seo
  • 山西 网站制作美食网页模板
  • 大气装饰公司网站源码怎样免费制作网站
  • 公司网站 设计方案网站建设服务领域
  • html5网站后台模板网络营销的实现方式包括
  • 邯郸哪家公司做企业网站比较专业wordpress升级需要ftp
  • 网站中加入百度地图h5源码网
  • 聊城市 网站制作西渡网站建设
  • 网站备案有必要吗wordpress 无法登录后台
  • 外网设计灵感网站手机网站要备案吗
  • 交易猫钓鱼网站制作教学wordpress ios7教程
  • 南宁网站设计平台三亚网上办事大厅
  • 乐成高端网站建设网站建设需求分析写什么
  • 构建微网站word和the wordpress
  • html网站后台管理系统昆明做网站建设的公司哪家好
  • 连云港做网站公司哪家好wordpress 上传下载
  • 个人网站备案注意事项wordpress树形导航注册
  • 网站建设流程怎么样进入wordpress很慢
  • 建网站代理哪个图片上加语音 网站开发
  • 深圳市建设局网站首页郑州网络营销哪家正规
  • 制作公司网站价格建设银行甘肃省行网站
  • 从什么网站可以做兼职如何申请域名创建一个网站
  • 陕西省住房和城乡建设部网站网站服务器配置要求
  • 广州国外建站模板石家庄公司网站如何制作
  • 青岛 网站开发项目网站建设方案
  • seo建站公司推荐tradekey外贸平台官网
  • 企业电商网站建设有没有做推文的网站
  • 关于我们网站模板可以做哪些网站有哪些内容