您的位置:首页 > 编程语言 > Java开发

(1)spring boot起步之Hello World【从零开始学Spring Boot】

2016-11-03 20:04 453 查看
(1)spring boot起步之Hello World【从零开始学Spring Boot】

博客分类:
从零开始学Spring Boot
从零开始学Spring BootSpring Bootspring
boot起步之Hello World

 
 

Spring Boot交流平台

 
1.1
介绍
      
自从structs2出现上次的漏洞以后,对spring的关注度开始越来越浓。
      
以前spring开发需要配置一大堆的xml,后台spring加入了annotaion,使得xml配置简化了很多,当然还是有些配置需要使用xml,比如申明component
scan等。
       Spring开了一个新的model spring boot,主要思想是降低spring的入门,使得新手可以以最快的速度让程序在spring框架下跑起来。
      
那么如何写Hello world呢?
      
Hello之步骤:
             
(1)新建一个Maven Java
工程
             
(2)在pom.xml文件中添加Spring Boot Maven依赖
             
(3)编写启动类
             
(4)运行程序
             

 
1.2 Hello之New
      
这个步骤很简单,相比大家都会,小编在此为了文档的完整性,稍作简单说明:
首先使用IDE(Eclipse,MyEclipse)工具新建一个Maven工程,可以是Maven
Java Project,也可以是Maven Web Project,随便取一个工程名称。我使用的是MyEclipse,工程名是spring-boot-hello1。
 
1.3 Hello之Maven
      
第二步,在pom.xml中引入spring-boot-start-parent,spring官方的解释叫什么stater
poms,它可以提供dependency management,也就是说依赖管理,引入以后在申明其它dependency的时候就不需要version了,后面可以看到。

Java代码


 




<parent>  
    <groupId>org.springframework.boot</groupId>  
    <artifactId>spring-boot-starter-parent</artifactId>  
    <version>1.3.3.RELEASE</version>  
  </parent>  

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.3.RELEASE</version>
</parent>


 
 
 
1.4 Hello之maven web
      
第三步,因为我们开发的是web工程,所以需要在pom.xml中引入spring-boot-starter-web,spring官方解释说spring-boot-start-web包含了spring
webmvc和tomcat等web开发的特性。

Java代码


 




<dependencies>  
    <dependency>  
          <groupId>org.springframework.boot</groupId>  
          <artifactId>spring-boot-starter-web</artifactId>  
      </dependency>  
  </dependencies>  

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

 

 
1.5 Hello之Maven Run Application
      
如果我们要直接Main启动spring,那么以下plugin必须要添加,否则是无法启动的。如果使用maven
的spring-boot:run的话是不需要此配置的。(我在测试的时候,如果不配置下面的plugin也是直接在Main中运行的。)

Java代码


 




<build>  
    <plugins>  
           <plugin>  
               <groupId>org.springframework.boot</groupId>  
               <artifactId>spring-boot-maven-plugin </artifactId>  
          </plugin>  
      </plugins>  
  </build>  

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin </artifactId>
</plugin>
</plugins>
</build>

 

 
1.6 Hello之coding
      
第四步,真正的程序开始啦,我们需要一个启动类,然后在启动类申明让spring boot自动给我们配置spring需要的配置,比如:@SpringBootApplication,为了可以尽快让程序跑起来,我们简单写一个通过浏览器访问hello
world字样的例子:

Java代码


 




@RestController  
@SpringBootApplication  
public class App {  
    
  @RequestMapping("/")  
  public String hello(){  
    return "Hello world!";  
  }  
    
  public static void main(String[] args) {  
    SpringApplication.run(App.class, args);  
  }  
}  

@RestController
@SpringBootApplication
public class App {

@RequestMapping("/")
public String hello(){
return "Hello world!";
}

public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}

 

其中@SpringBootApplication申明让spring
boot自动给程序进行必要的配置,等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan
@RestController返回json字符串的数据,直接可以编写RESTFul的接口;
 
1.7 Hello之Run
      
第五步,就是运行我们的Application了,我们先介绍第一种运行方式。第一种方式特别简单:右键Run
As -> Java Application。之后打开浏览器输入地址:http://127.0.0.1:8080/
就可以看到Hello world!了。第二种方式右键project – Run as
– Maven build – 在Goals里输入spring-boot:run
,然后Apply,最后点击Run。
 
1.8 Hello之Error
      
顺利的情况下当然是皆大欢喜了,但是程序吧往往会给你开个小玩笑。那么我们要注意什么呢?主要是jdk的版本之类的,请看官方说明:
 
 



 
 
 
【Spring Boot 系列博客】
54. spring boot日志升级篇—logback【从零开始学Spring
Boot】
 
52. spring boot日志升级篇—log4j多环境不同日志级别的控制【从零开始学Spring
Boot】 
 
51. spring boot属性文件之多环境配置【从零开始学Spring
Boot】
 
50. Spring Boot日志升级篇—log4j【从零开始学Spring
Boot】
 
49. spring boot日志升级篇—理论【从零开始学Spring
Boot】
 
48. spring boot单元测试restfull
API【从零开始学Spring Boot】
 
47. Spring Boot发送邮件【从零开始学Spring
Boot】
 
46. Spring Boot中使用AOP统一处理Web请求日志
 
45. Spring Boot MyBatis连接Mysql数据库【从零开始学Spring
Boot】
 
44. Spring Boot日志记录SLF4J【从零开始学Spring
Boot】
 
43. Spring Boot动态数据源(多数据源自动切换)【从零开始学Spring
Boot】
 
42. Spring Boot多数据源【从零开始学Spring
Boot】
 
41. Spring Boot
使用Java代码创建Bean并注册到Spring中【从零开始学Spring
Boot】
 
40. springboot + devtools(热部署)【从零开始学Spring
Boot】 
 
39.4 Spring Boot Shiro权限管理【从零开始学Spring
Boot】
 
39.3 Spring Boot Shiro权限管理【从零开始学Spring
Boot】
 
39.2. Spring Boot Shiro权限管理【从零开始学Spring
Boot】
 
39.1 Spring Boot Shiro权限管理【从零开始学Spring
Boot】
 
38 Spring Boot分布式Session状态保存Redis【从零开始学Spring
Boot】 
 
37 Spring Boot集成EHCache实现缓存机制【从零开始学Spring
Boot】 
 
36 Spring Boot Cache理论篇【从零开始学Spring
Boot】
 
35 Spring Boot集成Redis实现缓存机制【从零开始学Spring
Boot】 
 
34Spring Boot的启动器Starter详解【从零开始学Spring
Boot】
 
33 Spring Boot
监控和管理生产环境【从零开始学Spring Boot】
 
32 Spring Boot使用@SpringBootApplication注解【从零开始学Spring
Boot】 
 
31 Spring Boot导入XML配置【从零开始学Spring
Boot】
 
 
 
更多查看博客:
http://412887952-qq-com.iteye.com/

 

 




大小: 6.4 KB
spring-boot-hello1.zip (12.7 KB)
下载次数: 124
查看图片附件

分享到:




(2)Spring Boot返回json数据【从零开始 ... |

(0)资料官网【从零开始学Spring Boot】

2016-04-15 13:03
浏览 7119
评论(5)

分类:编程语言

相关推荐

参考知识库


Hive知识库
1955  关注 | 261  收录

Objective-C知识库
2230  关注 | 1143  收录

区块链知识库
1110  关注 | 90  收录

深度学习知识库
4088  关注 | 302  收录

评论

5 楼
林祥纤 2016-10-17  

w156445045 写道

Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/context/ApplicationEvent

at com.weidiana.DemoApplication.main(DemoApplication.java:10)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)

Caused by: java.lang.ClassNotFoundException: org.springframework.context.ApplicationEvent

这个是什么原因

有类没有引入成功。

可能原因:

1、需要的依赖包没有进行引入。

2、引入的依赖包没有下载成功。

4 楼
w156445045 2016-10-15  

Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/context/ApplicationEvent

at com.weidiana.DemoApplication.main(DemoApplication.java:10)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)

Caused by: java.lang.ClassNotFoundException: org.springframework.context.ApplicationEvent

这个是什么原因

3 楼
林祥纤 2016-06-25  

somefuture 写道
从你写博客的日期和引用了1.3.3判断,springboot的出现可不是你说的“前段时间”,应该是“有一段时间”

是的。

2 楼
somefuture 2016-06-21  
从你写博客的日期和引用了1.3.3判断,springboot的出现可不是你说的“前段时间”,应该是“有一段时间”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: