Spring Boot初体验
来源:互联网 发布:网络歌手兼职 编辑:程序博客网 时间:2024/06/05 05:46
Spring Boot初体验
我记得在spring boot出来之前做框架整合是一件非常不愉快的事情,各种jar包版本冲突是非常糟糕的体验,同时那时候主要还是通过xml文件来进行配置,各种配置文件十分繁多,hibernate需要,spring需要,如果用struts还需要,总之就是一个及其麻烦的事情。
当我第一次见到spring boot的时候我们被惊艳到了,原来开发可以如此的流畅,真正的约定大于配置,各种方便的注解,包整合十分愉快。
这篇文章就是简单记录一下利用最简单的spring boot快速开发一个web小应用。
开发环境spring boot + maven
开发环境自己配置(jdk+maven)
spring boot初始化
首先你可以到spring官网去初始化项目https://start.spring.io/ ,在这里可以针对你自己的应用场景进行配置,同时选择整合你需要的各种包,最后再下载下来用你习惯的开发工具打开即可。
简单看看我自己的pom.xml文件
<groupId>com.material</groupId> <artifactId>data</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>data</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.4</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.25</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> </dependencies>
因为个人比较习惯jsp所以页面就没有采用其他的模板技术,因此我的application.properties文件配置如下
spring.freemarker.checkTemplateLocation: falsespring.mvc.view.prefix: /WEB-INF/jsp/spring.mvc.view.suffix: .jspspring.mvc.locale: zh_CNspring.http.encoding.charset: UTF-8spring.http.encoding.enabled: truespring.http.encoding.force: true
同时在src目录下添加一个webapp目录,再在webapp目录下添加 /WEB-INF/jsp/,与各配置文件目录对应
自己添加了applcationContext.xml文件用于提供对一些静态文件的访问
<context:property-placeholder location="classpath:application.properties,classpath:config.properties"/> <!-- 静态资源访问 --> <mvc:resources mapping="/js/**" location="/WEB-INF/js/"/> <mvc:resources mapping="/img/**" location="/WEB-INF/img/"/> <mvc:resources mapping="/css/**" location="/WEB-INF/css/"/> <mvc:resources mapping="/assets/**" location="/WEB-INF/assets/"/>
各类配置
通过spring官网会默认帮你生成两个类
@EnableAutoConfiguration@SpringBootApplication@ComponentScan@ServletComponentScan@EnableCachingpublic class MaterialApplication { public static void main(String[] args) { SpringApplication.run(MaterialApplication.class, args); }}
@Configuration@ImportResource({"classpath:applicationContext.xml"})public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(MaterialApplication.class); }
具体的注解我也就不详细描述了,百度很多也很详细
通过上面的一系列配置我们就搭建好了一个基本的基于spring boot的web应用
定义controller和jsp
在完成配置的基础上我们会定义自己的Controller以及jsp页面
controller类
@Controllerpublic class HelloController { @RequestMapping("/hello") public String greeting(@RequestParam(value="name", required=false, defaultValue="World") String name, Model model) { model.addAttribute("name", name); return "hello"; }}
jsp页面
<%@ page language="java" contentType="text/html;charset=utf-8"%><!DOCTYPE html><%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><html><head> <title>Hello World</title></head><body>Hello,${name}</body></html>
下一步就是进入命令行,从命令行进入项目目录然后用maven启动项目
mvn spring-boot:run
- Spring Boot 初体验
- Spring-Boot初体验
- spring boot 初体验
- Spring Boot初体验
- Spring Boot初体验
- Spring Boot初体验
- spring boot 初体验
- spring boot之初体验
- 《spring-boot学习》-01-初体验
- Spring Boot初体验(一)
- Java爬虫初体验:简单抓取IT之家热评(整合Spring Boot+Elasticsearch+Redis+Mybatis)
- 1、Spring boot 体验第一篇 simple demo one
- Spring初体验
- SPRING 初体验
- Spring Security初体验
- Spring初体验
- Spring初体验
- spring rest初体验
- IT糖19期
- python基础学习笔记(四)
- C++ MFC / VS2013 之八 (对话框:设置对话框控件的Tab顺序)
- 排序算法
- Bootstrap学习笔记——网格系统
- Spring Boot初体验
- C++11新特性
- 宏定义
- Python中的Numpy入门教程
- dede内容页调用缩略图 缩略图多种用法
- LeetCode-88-Merge Sorted Array
- 二叉树前序中序后序遍历的非递归形式
- python虚拟环境
- LinkList_Queue(链式队列)