SpringBoot初体验(完整版)
来源:互联网 发布:603881数据港股票 编辑:程序博客网 时间:2024/06/05 06:07
SpringBoot是做什么的?我想各位应该已经通过网络都已经了解了,其实也就是一种高度抽象封装,对各种常用操作做了默认的实现与配置,使得开发人员更多地关注业务层。
本文开发使用的是工具是IDEA()+Maven,下面进入SpringBoot的“初体验”!
和一般Maven项目不同的是,我们在新建项目的时候,选择Spring Initialiar,其他保持默认,如下图,在点击Next的时候需要确保网络的可用性,不然没法创建:
以下完全可以保持默认,打包方式有Jar和War两种方式,Jar方式可以直接通过java –jar的方式运行项目(此方式jar包内默认打包了tomcat),War的方式可以运行在外部容器中,此文先以默认的Jar来做操作,后面在改成War的方式。
下一步后,会让你选择该项目需要集成的功能,有很多,此处只选择Web,如下图:
下一步就是给项目起名字(此处以demo1命名),以及项目路径,可保持默认:
以下就是创建完后的目录结构图:
该项目有个启动类,用于启动项目,实例项目的启动类则就是DemoApplication。
完整的pom文件信息如下:接下创建一个HelloController,先创建一个controller的package
HelloController的类信息如下,注意,类的注解使用的是@RestController而不是@Controller,其实@RestController=@Controller+@ResponseBody,也可以理解为注解集合,@RestContoller的内容为Json。
HelloController创建完后,点击右上角的运行按钮或Debug按钮启动程序:
我们可以从启动信息中看出来,项目使用Tomcat启动,且端口号为8080,这就是SpringBoot给我们内置了Tomcat,我们只关注业务,而无需关注配置,8080的端口号是可以自定义的,后面具体说,此处先来看下我们写的第一个方法如何访问以及返回什么:
在浏览器中可以看到如下内容:
是的,页面显示的是我们方法中返回的字符串内容,细心的朋友可以发现,我们没有写任何页面,它是怎么出来的呢?好吧,那么我们来以页面的方式呈现,并修改启动端口:
我们在目录结构中找到application.properties文件,在其中写入如下配置,其中server.port为Tomcat启动端口的配置,其它两个配置为视图解析:配置好后重启服务,发现已启动在8090端口:
浏览器修改端口,并再次访问,可正常访问,可是,还是没看到如何呈现自定义的页面,下面就创建application.properties中的目录路径,在main目录下创建webapp/WEB-INF/views,并编写welcome.jsp
页面写好了,但要如何显示呢?再创建一个方法:
这个时候再启动的话,我们访问路径:localhost:8080/hello/saySomething.html发现,页面显示的是welcome字符串,而非welcome.jsp中的内容,这是为什么呢?这是因为HelloController我们添加的注解是@RestController,此时该类的所有方法的返回都以json内容解析返回,所以,出现了welcome的字符串,而不是跳转到welcome.jsp页面。我们修改@RestController为@Controller,重新启动,此时,还是没有出现我们想要的页面,而是一个错误页:Whitelabel Error Page
我们来看下target目录内容,发现并没有WEB-INF/views目录及welcome.jsp文件,所以无法返回:
我们修改pom文件中打包方式为war,并添加外部Tomcat来运行:
右上角下拉,选择Edit…
选择已有的Tomcat,如果尚未添加,则点击Configure添加即可
选择Deployment页签,点击右侧的加号,选择Artifact:
确定后返回,别着急,配置还没完成,我们需要修改启动类,以继承SpringBootServeletInitializer,此时clean 然后 package,启动Tomcat,在访问以上请求路径,即可看到想要的页面:
上一个的方法的返回值为String,即返回值为页面的名称,如果以ModelAndView的形式返回,方法声明如下,setViewName中设置要返回页面的名称:
至此,算是基本结束,不过本人有个问题,就是以启动类的方式来运行,而非以外部容器运行时,始终无法返回到相应的页面,如果有知情朋友,还望不吝赐教!
- SpringBoot初体验(完整版)
- SpringBoot安装和初体验(A)
- SpringBoot初体验
- SpringBoot初体验
- 2.springboot初体验
- SpringBoot初体验
- springboot初体验
- springboot初体验
- springboot初体验之mybatis
- AVR Studio 5 使用初体验及完整版下载地址
- Windows Phone 7之初体验(六.完整版模拟器)
- 亲身体验某国内家电巨头的售后服务(完整版)
- Springboot 第一次体验
- SpringBoot Web开发体验
- 初为项目经理(完整版)
- 用户体验与产品管理(完整版)
- 用户体验与产品管理(完整版)
- SpringBoot初体验:久闻大名,请多指教!(简单web项目+MockMvc单元测试)
- pragma 预处理指令详解
- 元素class属性中的空格
- centos6.5 删除文件后没有释放空间的问题
- android跳转到另一个Activity三种方法
- 林正隆(coolfire)
- SpringBoot初体验(完整版)
- 函数方法之知道怎么用apply()和call()吗
- while 和 for 循环
- ArcGIS中Geodatabase简介
- php中的类与对象(继承)
- Python学习 第一天任务 (一)【基于Python编程从入门到实践】
- CoolHC Volume 1 By CoolFire
- spring boot shiro整合
- 电脑切换应用和软件分屏