Spring框架学习笔记(5)――Spring Boot创建与使用 |
您所在的位置:网站首页 › spring配置扫描包 › Spring框架学习笔记(5)――Spring Boot创建与使用 |
首页 > > 程序设计 > Java技术 >
Spring框架学习笔记(5)――Spring Boot创建与…
2019-11-02 16:02:23来源:博客园 阅读 () Spring框架学习笔记(5)――Spring Boot创建与使用Spring Boot可以更为方便地搭建一个Web系统,之后服务器上部署也较为方便 创建Spring boot项目1. 使用IDEA创建项目 2. 修改groupid和artifact 3. 一路next,自动IDEA就会自动下载依赖的jar包 4. 运行 之后运行项目(Application类),打开http://localhost:8080就会出现下面的白板页面,说明已配置成功 项目结构说明及使用 项目结构说明我们可以看见项目中是这样的结构,Spring boot内置了tomcat服务器,所以,我们可以直接通过application来启动 SpringbootdemoApplication package com.wan.springbootdemo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class SpringbootdemoApplication { public static void main(String[] args) { SpringApplication.run(SpringbootdemoApplication.class, args); } }可以看到SpringbootdemoApplication中的代码比较简单,使用了一个注解SpringBootApplication,用来标注当前类是Spring boot的入口类,之后通过SpringApplication.run启动 SpringBootApplication注解中也是内置了几个spring的注解,打开其中可以看到 @SpringBootConfiguration 表示该类是一个配置类 @EnableAutoConfiguration 启用自动配置,例如添加了spring-boot-starter-web依赖,会自动添加Tomcat和SpringMVC的依赖,SpringBoot会对Tomcat和SpringMVC进行自动配置. @ComponentScan 能扫描当前包及其子包中的类 即com.lanqiao.springboot.tutorials包及其子包下的所有的组件类。 spring boot使用一个封装的注解,把之前我们得使用注解和配置文件去配置spring的步骤都省去了,springboot不仅让我们的编码是轻量级的,而且也把我们的配置变成了轻量级 控制器使用之前使用springmvc框架,我们写一个controller,得在配置文件中开启自动扫描,然后controller类中使用controller注解进行标明,而使用spring boot则不需要这么繁琐,只需要标注上一个@RestController注解即可 注解RestController包含了Controller和ResponseBody,返回的实体类或者List都会转为json数据 这里可以使用spring boot中的注解,也可以使用spring mvc的注解RequestMapping、ResponseBody等 package com.wan.springbootdemo.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @author StarsOne * @date Create in 2019/10/17 0017 18:24 * @description */ @RestController public class UserController { @RequestMapping("user/data") public String getData() { return "this is returning data"; } }然后通过访问localhost:8080/user/data就可以看到返回的数据 修改context项目地址上面的项目接口中,我们可以看到一个名为application.properties的文件,里面可以用来进行一些设置,如context上下文,port端口号 补充:spring boot中除了使用properties这种文件进行配置,还可以使用yml文件 我在其中添加了下面的代码,就是用来设置context server.servlet.context-path=/springbootdemo之后上面的controller的访问地址就会变为了localhost:8080/springbootdemo/user/data 去除spring boot启动图标启动的时候,命令行会出现一个Spring Boot的页面 不知道为什么,我这里启动的图标怎么看都不像Spring Boot。。 我们想要去除这个图标,可以修改application中的启动方式来达到目的 package com.wan.springbootdemo; import org.springframework.boot.Banner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class SpringbootdemoApplication { public static void main(String[] args) { SpringApplication springApplication = new SpringApplication(SpringbootdemoApplication.class); // 去除启动控制台Spring Boot的图标 springApplication.setBannerMode(Banner.Mode.OFF); springApplication.run(args); } } 热部署想要实现修改文件,而不想要重启application,可以进行热部署设置,设置很简单,只需要添加下面的这个依赖即可(之前创建项目的时候其实已经添加了此依赖) org.springframework.boot spring-boot-devtools true可能还需要进行下面的运行配置: 整合MyBatis 1.添加依赖 添加下面的依赖 ``` org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.0 ``` 2.创表、创实体类和mapper创表和创建实体类,还有创建对应的mapper.xml和mapper.java文件 这里需要注意,mapper接口文件需要加上注解@Repository,需要spring进行管理,之后我们需要一个对应的Service.java,包含着mapper接口,使用spring把mapper自动装载 package com.wan.mofang.service; import com.wan.mofang.mapper.UserMapper; import com.wan.mofang.model.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @author StarsOne * @date Create in 2019/10/28 0028 22:46 * @description */ @Service public class UserService { @Autowired UserMapper userMapper;//自动装载的对象 public List selectAll(User user) { return userMapper.selectAll(user); } }UserController.java package com.wan.mofang.controller; import com.wan.mofang.model.User; import com.wan.mofang.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * @author StarsOne * @date Create in 2019/10/28 0028 22:54 * @description */ @RestController @RequestMapping("/user") public class UserController { @Autowired private UserService userService;//自动装载 @RequestMapping("selectAll") public List selectAll(User user) { return userService.selectAll(user); } }PS:这里,需要注意的,如果是传入一个实体类,url传入的参数名要与User中的成员变量名一致,如果是String类型或者是Int类型,则url传入的参数则与参数名对应 如有下面的一个controller里面方法: @RequestMapping("selectAll") public List selectAll(String username) { return userService.selectAll(user); }传入的url为url=xx?username=xx 3.修改配置文件这里使用yml来配置,当然,使用properties文件也可以,根据实际情况,进行修改(修改application-dev.yml) application.yml spring: profiles: active: devapplication-dev.yml server: port: 端口号,默认不写就是8080 servlet: context-path: 项目上下文 spring: datasource: username: 数据库用户名 password: 数据库密码 url: 数据库地址 driver-class-name: oracle驱动 mybatis: mapper-locations: classpath:mapping/*Mapper.xml type-aliases-package: 好像配置了别名没有启动作用 #showSql logging: level: com: example: mapper : debug 4.开启自动扫描在Spring Boot启动类使用注解MapperScan,参数为mapper.java文件所在的包,就会自动扫描并生成mapper的bean对象 package com.wan.mofang; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @MapperScan("com.wan.mofang.mapper") @SpringBootApplication public class MofangApplication { public static void main(String[] args) { SpringApplication.run(MofangApplication.class, args); } } Junit测试直接创建一个入口类的对应的Test,之后使用上注解SpringBootTest,指定入口类,之后,需要的文件使用注解Autowired进行自动装载, @SpringBootTest(classes = MofangApplication.class) class MofangApplicationTests { @Autowired UserService userService; @Test void testSelectALl(){ List user = userService.selectALl(); ... } }原文链接:https://www.cnblogs.com/kexing/p/11783973.html如有疑问请与原作者联系 标签: 版权申明:本站文章部分自网络,如有侵权,请联系:[email protected] 特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有 上一篇:Spring bean的生命周期 下一篇:Object类 相关文章 Spring系列.ApplicationContext接口 2020-06-11 Java--反射(框架设计的灵魂)案例 2020-06-11 springboot2配置JavaMelody与springMVC配置JavaMelody 2020-06-11 学习Java 8 Stream Api (4) - Stream 终端操作之 collect 2020-06-11 Java--反射(框架设计的灵魂) 2020-06-11IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设 网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源 网站联盟: 联盟新闻 联盟介绍 联盟点评 网赚技巧 行业资讯: 搜索引擎 网络游戏 电子商务 广告传媒 网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它 服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护 软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash 程序设计: Java技术 C/C++ VB delphi 网络知识: 网络协议 网络安全 网络管理 组网方案 Cisco技术 操作系统: Win2000 WinXP Win2003 Mac OS Linux FreeBSD |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |