Springboot的第一个Hello World程序
来源:互联网 发布:郑州经开区网络维修 编辑:程序博客网 时间:2024/04/30 05:39
之前的一篇博文介绍了如何配置环境,本文将介绍如何使用Intellij开发第一个Hello World程序。我们会尽量避开过去复杂的基础理论,以实用性为主。首先大概介绍一个Intellij为我们生成的目录结构:
上图中我通过标注的形式介绍了几个基本的结构,现在我们介绍几个主要目录:
/src/main下面是主要的代码文件和网页模板。
Java下是逻辑控制、数据表Model等代码。resource里是静态资源,其中static里是CSS、JS等。template里就是HTML模板啦~
现在开始写第一个Hello World~看下图:
上图中的com.example是一个包名,为了代码可读性高,我们会使用MVC的开发模式,在com.example这个包下面,再新建几个包,分别用来写不同的代码。需要新建的包如下:
controller包:用来写控制器代码,控制器对应不同的请求,是网络请求的第一层。
model包:里面每个class可以对应一个数据表,当你写好class,并且运行工程时,Springboot和Hibernate会自动为你在数据库里创建表。
repository包:这里封装了所有对数据表的增删改查操作。以后你需要操作数据库,其实就是使用这里的接口。
service包:比如把登录、注册等一个完整的逻辑,封装为一个service,供controller调用,可以极大地简化开发,同时代码也具有更高的可读性。
下面,让我们来建立这四个包吧~在com.example这个包上右键,然后new一个包出来。如图所示:
我这里创建好包名后,目录结构是这样的:
好了,到这一步,我们终于可以开始写代码啦~~~在本文里,我们将不会用到service、model、repository,只会用到controller来写一个简单的Hello World。让我们开始写吧:
首先,在controller这个包上点击右键,新建一个class,名字就叫nana,如下图所示:
建立好文件后,我们在这个文件里输入以下的代码:【注意,如果没有严格按照前面的教程来,你的包名可能和我的不一样,所以这个代码复制过去后,请自己检查一遍!】
package com.example.controller;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RestController;/** * Created by longge93 on 16/4/14. */@RestController@EnableAutoConfigurationpublic class nana { @RequestMapping(value="/",method = RequestMethod.GET) public String index(){ return "Hello World~"; }}
然后我们来运行以下我们的工程,运行方法如下图所示:
如上图所示,点击那个三角形,就可以运行我们的工程了。不过,所有写代码的过程都是不顺利的~~虽然我们点了运行,但是下面的控制台里却提示我们运行失败了,从上图的下面看出,是hibernate出错了。为什么呢?因为我们在Maven里包含了MySQL的jar包,但是却没有配置数据库连接需要的账号和密码等信息。所以hibernate会报错~~因为我们这篇文章里,只是为了输出hello world,用不着数据库。所以我们先去pom文件里注释掉数据库相关的jar包应该就OK了。我注释完后,我的pom文件是这样的,请仔细检查:
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>demo</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <!--<dependency>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-data-jpa</artifactId>--> <!--</dependency>--> <!--<dependency>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-jdbc</artifactId>--> <!--</dependency>--> <!--<dependency>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-redis</artifactId>--> <!--</dependency>--> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--<dependency>--> <!--<groupId>mysql</groupId>--> <!--<artifactId>mysql-connector-java</artifactId>--> <!--<scope>runtime</scope>--> <!--</dependency>--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
然后我们再点击那个三角形运行,你会发现运行成功啦~~如下图所示:
因为Springboot其实已经自带Tomcat了,所以当我们把这个工程跑起来后,其实就相当于跑起来一个网站。现在让我们去网页里看看我们的Hello World有没有正常工作吧~
在浏览器里,打开http://localhost:8080,你会发现输出了Hello World~~
后语:程序员的成长之路就是一条不怕麻烦,披荆斩棘,不停的解决问题的过程。如果你真的喜欢这一行,请奉献出你的热情。
- Springboot的第一个Hello World程序
- Springboot的第一个Hello World程序
- silverlight的第一个程序hello world.
- java的第一个程序 ----Hello World
- C++的第一个程序:Hello World
- 第一个clojure 的hello world程序
- Hello World -- 我的第一个程序
- nodejs的第一个程序Hello World
- Python 的第一个 hello world 程序!
- 我的第一个SpringBoot 项目——Hello World
- 第一个“Hello World”程序
- 第一个程序:"Hello World"
- 第一个程序:Hello World
- 第一个程序:Hello World
- Hello World 第一个程序
- 第一个程序“Hello World !”
- MFC的第一个程序Hello World, Hello MFC
- Linux下的第一个程序Hello World
- Equals与==
- crontab监控java程序,如果没有启动则启动java程序
- CoordinatorLayout、AppBarLayout、CollapsingToolbarLayout、Toolbar混合使用经验
- Cacti Error-'145“解决
- 利用ajaxSubmit()方法实现Form提交表单后回调
- Springboot的第一个Hello World程序
- java模板方法模式
- jdk版本问题(Unsupported major.minor version 52.0)
- vector和list区别
- Ubuntu 16.04 + GTX970 + cuda8.0.44安装配置等问题
- python tarfile
- Spark性能优化:数据倾斜调优
- [Audio Profile]L版本上music如何设置双卡铃声
- 【SSH网上商城项目实战02】基本增删查改、Service和Action的抽取以及使用注解替换xml