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

易语言 做网站起名字2023免费八字起名

易语言 做网站,起名字2023免费八字起名,万网wordpress安装,公众号开发者有什么用Spring全家桶笔记#xff1a;SpringSpring BootSpring CloudSpring MVC​shimo.im01 背景从Servlet技术到Spring和Spring MVC#xff0c;开发Web应用变得越来越简捷。但是Spring和Spring MVC的众多配置有时却让人望而却步#xff0c;相信有过Spring MVC开发经验的朋友能深刻…Spring全家桶笔记SpringSpring BootSpring CloudSpring MVC​shimo.im01 背景从Servlet技术到Spring和Spring MVC开发Web应用变得越来越简捷。但是Spring和Spring MVC的众多配置有时却让人望而却步相信有过Spring MVC开发经验的朋友能深刻体会到这一痛苦。因为即使是开发一个Hello-World的Web应用都需要我们在pom文件中导入各种依赖编写web.xml、spring.xml、springmvc.xml配置文件等。特别是需要导入大量的jar包依赖时我们需要在网上查找各种jar包资源各个jar间可能存在着各种依赖关系这时候又得下载其依赖的jar包有时候jar包间还存在着严格的版本要求所以当我们只是想开发一个Hello-World的超简单的Web应用时却把极大部分的时间在花在了编写配置文件和导入jar包依赖上极大地影响了我们的开发效率。所以为了简化Spring繁杂的配置Spring Boot应运而生。正如Spring Boot的名称一样一键启动Spring Boot提供了自动配置功能为我们提供了开箱即用的功能使我们将重心放在业务逻辑的开发上。那么Spring Boot又是怎么简化Spring MVC的呢Spring Boot和Spring、Spring MVC间又是怎样的关系呢Spring Boot又有什么新特点呢接下来让我们走进Spring MVC 到Spring Boot的简化之路或许你就能找到这些答案。02 Spring vs Spring MVC vs Spring BootSpring Boot和Spring、Spring MVC不是竞争关系Spring Boot使我们更加容易使用Spring和Spring MVC2.1 Spring FrameWorkSpring FrameWork解决的核心问题是什么 Spring框架的最重要特性是依赖注入所有的Spring模块的核心都是依赖注入DI或控制反转IOC。为什么很重要呢因为当我们使用DI或IOC时我们可以使应用得到解耦。我们来看一个简单的例子 没有依赖注入的例子 RestController public class WelcomeController {private WelcomeService service new WelcomeService();RequestMapping(/welcome)public String welcome() {return service.retrieveWelcomeMessage();} } WelcomeService service new WelcomeService(); 意味着WelcomeController类与WelcomeService类紧密结合在一起耦合度高。使用依赖注入的例子 Component public class WelcomeService {//Bla Bla Bla }RestController public class WelcomeController {Autowiredprivate WelcomeService service;RequestMapping(/welcome)public String welcome() {return service.retrieveWelcomeMessage();} }依赖注入使世界看起来更简单我们让Spring 框架做了辛勤的工作 Component我们告诉Spring框架-嘿这是一个你需要管理的bean Autowired我们告诉Spring框架-嘿找到这个特定类型的正确匹配并自动装入它2.2 Spring 还能解决什么问题1 重复代码Spring框架停止了依赖注入DI吗没有它在依赖注入DI的核心概念上开发了许多Spring模块Spring JDBCSpring MVCSpring AOPSpring ORMSpring Test... 考虑一下Spring JDBC这些模块带来了新功能吗并没有我们完全可以使用Java代码完成这些工作。那么它们给我们带来了什么它们带来了简单的抽象这些简单抽象的目的是 减少样板代码/减少重复促进解耦/增加单元可测性 例如与传统的JDBC相比我们使用Spring JDBC需要编写的代码减少了许多。2与其他框架良好的集成 Spring框架并不尝试去解决已经解决了的问题它所做的一切就是提供与提供出色解决方案的框架的完美集成。HibernateIBatisJUnit...2.3 Spring MVCSpring MVC框架解决的核心问题是什么 Spring MVC框架提供了开发Web应用的分离方式。通过DispatcherServlet、ModelAndView、View Resolver等简单概念是Web应用开发变得更加简单。2.4 为什么需要Spring Boot基于Spring的应用程序有很多配置。当我们使用Spring MVC时我们需要配置组件扫描调度器servlet视图解析器等视图解析器配置beanclassorg.springframework.web.servlet.view.InternalResourceViewResolverproperty nameprefixvalue/WEB-INF/views//value/propertyproperty namesuffixvalue.jsp/value/property/beanmvc:resources mapping/webjars/** location/webjars//前端调度器的典型配置servletservlet-namedispatcher/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-classinit-paramparam-namecontextConfigLocation/param-nameparam-value/WEB-INF/todo-servlet.xml/param-value/init-paramload-on-startup1/load-on-startup/servletservlet-mappingservlet-namedispatcher/servlet-nameurl-pattern//url-pattern/servlet-mapping当我们使用Hibernate / JPA时我们需要配置一个数据源一个实体管理器工厂一个事务管理器以及许多其他事物bean iddataSource classcom.mchange.v2.c3p0.ComboPooledDataSourcedestroy-methodcloseproperty namedriverClass value${db.driver} /property namejdbcUrl value${db.url} /property nameuser value${db.username} /property namepassword value${db.password} //beanjdbc:initialize-database data-sourcedataSourcejdbc:script locationclasspath:config/schema.sql /jdbc:script locationclasspath:config/data.sql //jdbc:initialize-databasebeanclassorg.springframework.orm.jpa.LocalContainerEntityManagerFactoryBeanidentityManagerFactoryproperty namepersistenceUnitName valuehsql_pu /property namedataSource refdataSource //beanbean idtransactionManager classorg.springframework.orm.jpa.JpaTransactionManagerproperty nameentityManagerFactory refentityManagerFactory /property namedataSource refdataSource //beantx:annotation-driven transaction-managertransactionManager/2.5 Spring Boot解决的问题 1 Spring Boot 自动配置 Spring引入了新的思维过程我们可以变得更加智能些吗当一个spring mvc jar包被添加到应用程序时我们是否可以自动配置一些bean当Hibernate jar包在类路径时自动配置数据源怎样当Spring MVC jar包在类路径时自动配置Dispatcher Servlet怎样Spring Boot查看ClASSPATH上对于本应用程序需要编写配置的框架基于这些Spring Boot提供了这些框架的基本配置-这就是自动配置。2Spring Boot Starter Projects 假设我们想开发一个Web应用程序。首先我们需要确定我们想要使用的框架使用哪个版本的框架以及如何将它们连接在一起。所有Web应用程序都有类似的需求 下面列出的是我们在Spring MVC中使用的一些依赖关系。这些包括Spring MVCJackson Databind用于数据绑定Hibernate-Validator用于使用Java验证API的服务器端验证和Log4j用于日志记录。在创建时我们必须选择所有这些框架的兼容版本dependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion4.2.2.RELEASE/version /dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.5.3/version /dependencydependencygroupIdorg.hibernate/groupIdartifactIdhibernate-validator/artifactIdversion5.0.2.Final/version /dependencydependencygroupIdlog4j/groupIdartifactIdlog4j/artifactIdversion1.2.17/version /dependency什么是Starter Starter是一套方便的依赖描述符可以包含在应用程序中。 你可以获得所需的所有Spring及相关技术的一站式服务而无需搜索示例代码并复制依赖描述符的粘贴负载。 例如如果你想开始使用Spring和JPA来访问数据库只需在你的项目中包含spring-boot-starter-data-jpa依赖项就好。我们来看Starter的一个示例 - Spring-Boot-Starter-Web Spring-Boot-Starter-Web依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId /dependency以下屏幕截图显示了添加到我们的应用程序中的不同依赖关系 任何典型的Web应用程序都会使用所有这些依赖项.Spring Boot Starter Web预先打包了这些。作为开发人员我们不需要担心这些依赖关系或兼容版本。3 Spring Boot Starter项目选项 正如Spring Boot Starter Web一样Starter项目帮助我们快速入门开发特定类型的应用程序spring-boot-starter-web-services - SOAP Web服务spring-boot-starter-web - Web和RESTful应用程序spring-boot-starter-test - 单元测试和集成测试spring-boot-starter-data-jpa - 带有Hibernate的Spring Data JPAspring-boot-starter-cache - 启用Spring Framework的缓存支持... 03 什么是Spring Boot 自动配置前面已经初步介绍过在这里详细介绍一下。 当我们启动Spring Boot应用程序时我们可以在日志中看到一些重要的消息。Spring-Boot-Starter-Web依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId /dependency上面的日志语句显示了Spring Boot Auto Configuration的行为。 一当我们在应用中添加了Spring Boot Starter Web依赖Spring Boot AutoConfiguration就会发现Spring MVC在类路径下它会自动配置dispatcherServlet一个默认的错误页面和webjars。 如果你添加了Spring Boot DataJPA Starter依赖Spring Boot AutoConfiguration会自动配置数据源datasource和实体管理器Entity Manager3.1 Spring Boot Auto Configuration在哪里实现所有的自动配置逻辑都在spring-boot-autoconfigure.jar中实现。mvc、data和其他框架的所有自动配置逻辑都存在与一个jar包中。 spring-boot-autoconfigure.jar中重要的文件是/META-INF/spring.factories该文件列出了在EnableAutoConfiguration key下启动的所有自动配置类。下面列出一些重要的配置类org.springframework.boot.autoconfigure.EnableAutoConfiguration org.springframework.boot.autoconfigure.aop.AopAutoConfiguration, org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration, org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration, org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.JndiDataSourceAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.XADataSourceAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration, org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration, org.springframework.boot.autoconfigure.security.SecurityFilterAutoConfiguration, org.springframework.boot.autoconfigure.web.DispatcherServletAutoConfiguration, org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoConfiguration, org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration,3.2 查看自动配置打开调试日志 在application.properties打开调试日志logging.level.org.springframework: DEBUG 当启动程序时会打印自动配置日志信息04 总结Spring Boot的出现本身就是为了减低Web开发的门槛使开发人员能够专注于业务开发而不需浪费时间在业务开发之外至此Spring MVC到Spring Boot的简化之路到此结束。原文链接https://juejin.im/post/5aa22d1f51882555677e2492
http://www.zqtcl.cn/news/734126/

相关文章:

  • 会计公司网站模板微信网站如何制作软件
  • 烟台做网站多少钱.net网站做增删改
  • 什么网站专门做软件的深圳电商网站制作
  • 局域网做网站家装公司哪家比较好
  • 免费的行情软件网站在线使用wordpress视频分享
  • 内容平台策划书网站优化公司推荐
  • 怎么在阿里巴巴网站做公司wordpress伪静态404
  • 配置 tomcat 做网站网站建设用什么语言
  • 大型的营销型网站建设怎么选择网站建设公司
  • 怎么用网站源码建站友情链接交换方式有哪些
  • 国外免费网站服务器链接幼教网站建设分析
  • 做药品网站有哪些陕西专业网站建设价格
  • 网络公司做网站网站 服务器选择
  • 湖南省重点建设项目办公室网站河南省住建局官网
  • 建设网站企业网上银行登录入口官方论坛系统
  • 嘉定建设机械网站合肥制作网页设计
  • 外链网站有哪些空港经济区内的建设工程网站
  • 企业网站开发价阿里云快速备份网站
  • 大型电子商务网站建设成本ai网页生成
  • 网页播放视频 网站开发常用网站搜索引擎
  • 制作一个购物网站要多少钱做创意小视频的网站
  • 淇县网站建设软件定制流程
  • 17网站一起做网店代发流程wordpress悬浮 联系
  • 如何查网站外链快速开发平台 免费开源
  • 做网站有哪些流程怎么做网站电影
  • 做街机棋牌上什么网站发广告网站策划和运营
  • 建网站是什么专业类别阳江网红人物
  • 网站建设工作描述株洲市建设质监站网站
  • 做网站 橙色怎么搭配吐鲁番市网站建设
  • 企业信息网站衡阳高端网站建设