SpringBoot Maven项目 Helloworld 测试
SpringBoot
化繁为简,简化配置
SpringBoot官方:http://projects.spring.io/spring-boot/
SpringBoot使用介绍:http://blog.csdn.net/isea533/article/details/50278205
Maven项目使用SpringBoot
建议使用 IDEA ,虽然下面是 Eclipse 测试的例子
配置SpringBoot
pom.xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
<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/maven-v4_0_0.xsd"> <modelversion>4.0.0</modelversion> <groupid>com.springboot</groupid> SpringBootTest</artifactid> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>SpringBootTest Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceencoding>UTF-8</project.build.sourceencoding> <java.version>1.8</java.version> <tomcat.version>7.0.55</tomcat.version> </properties> <parent> <groupid>org.springframework.boot</groupid> spring-boot-starter-parent</artifactid> <version>1.3.0.RELEASE</version> </parent> <dependencies> <dependency> <groupid>org.springframework.boot</groupid> spring-boot-starter-web</artifactid> </dependency> </dependencies></project> |
运行程序
运行main方法
SampleController.java
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
package com.hello;import java.util.Date;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@EnableAutoConfiguration (exclude={DataSourceAutoConfiguration.class})public class SampleController { @RequestMapping("/") String home() { return "Hello World!"; } @RequestMapping("/now") String hehe() { return "现在时间:" + (new Date()).toLocaleString(); } public static void main(String[] args) throws Exception { SpringApplication.run(SampleController.class, args); }} |
控制台输出:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.3.0.RELEASE)2016-12-15 16:30:13.765 INFO 20952 --- [ main] com.hello.SampleController : Starting SampleController on DESKTOP-QSFD0OC with PID 20952 (D:\eclipse4.61\eclipse\workspace\SpringBootTest\target\classes started by Peng in D:\eclipse4.61\eclipse\workspace\SpringBootTest)2016-12-15 16:30:13.768 INFO 20952 --- [ main] com.hello.SampleController : No profiles are active2016-12-15 16:30:13.803 INFO 20952 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@149494d8: startup date [Thu Dec 15 16:30:13 CST 2016]; root of context hierarchy... |
在浏览器上输入地址http://localhost:8080/

在浏览器上输入地址http://localhost:8080/now

注意事项
Tomcat问题一

在Java Build Path中,不要加入 Tomcat 运行环境的依赖库,已经在pom.xml中指定了 Tomcat 版本(不指定默认为 Tomcat 8.0.28),从 maven 的依赖包中能找到 Tomcat 的jar包,SpringBoot 自己配有 Tomcat 。
Tomcat问题二
运行 main 方法,出现 Tomcat 不能启动的错误。如下面的异常信息
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
java.net.BindException: Address already in use: bind at sun.nio.ch.Net.bind0(Native Method) ~[na:1.8.0_91] at sun.nio.ch.Net.bind(Unknown Source) ~[na:1.8.0_91] at sun.nio.ch.Net.bind(Unknown Source) ~[na:1.8.0_91]org.apache.catalina.LifecycleException: Failed to start component [Connector[org.apache.coyote.http11.Http11NioProtocol-8080]]Caused by: org.apache.catalina.LifecycleException: service.getName(): "Tomcat"; Protocol handler start failed at org.apache.catalina.connector.Connector.startInternal(Connector.java:1014) ~[tomcat-embed-core-7.0.55.jar:7.0.55] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ~[tomcat-embed-core-7.0.55.jar:7.0.55] ... 13 common frames omittedCaused by: java.net.BindException: Address already in use: bind Unable to start embedded Tomcat servlet container Caused by: java.lang.IllegalStateException: Tomcat connector in failed state |
原因是你运行了程序一次,javaw.exe 会占用你的端口,可以结束该进程。重新运行 main 方法
SpringBoot Maven项目 Helloworld 测试的更多相关文章
- 工具IDEA 配置springboot+maven项目
工具IDEA 配置springboot+maven项目 首先安装IDEA,至于怎么安装就不介绍了.. 第一步 配置maven环境 首先安装maven,先在网上下载一个maven包.在IDEA的sett ...
- springboot maven项目,为什么build成功,build path也没错误,project-->clean 也没用,项目上面还是有个红x呢?
springboot maven项目,为什么build成功,build path也没错误,project-->clean 也没用,项目上面还是有个红x呢? 看错误信息有提示: Descript ...
- IDEA maven项目下测试mybatis例子,使用mappper class或package引入mapper映射文件,总是报错Invalid bound statement(所有配置完全正确)
困扰几个小时,终于查到解决办法及原因(可以直接到最后看解决方案) 环境就是用IDEA搭建的maven项目,主要jar包引入配置如下 <dependencies> <dependenc ...
- springboot maven项目运行常见报错 及ajax请求报错
如图所示 tomcat运行后直接停止,也不报错 原因:我的原因是controller路径配置重名或者service没有配置@Service 遇见这错找了好久问题,网上也搜不到,特此记录一下 问题2 a ...
- maven项目对于测试时“无法加载主类”的解决方案
1.右键maven项目,选择 build path --------->Configure Build Path ,执行下列操作,保存即可.
- github导入springboot maven项目
1.在GitHub里force喜欢的项目,获取GitHub项目地址,eclipse---import---project from git---clone uri---next---finish,项目 ...
- idea打包springboot+maven项目并发布在linux上
2018年11月13日我亲测有效的,很简单的,借鉴博客:https://blog.csdn.net/smilecall/article/details/56288972 第一步:随便建一个maven类 ...
- springboot maven项目转gradle的完整方法
1.maven转gradle的方法:在项目根目录下,使用命令行工具,输入如下内容: gradle init --type.pom 2.springboot项目的 build.gradle内容示例如下( ...
- springBoot maven项目打成jar包
springBoot项目打包springBoot项目打包最常用且最简单的方式是用springBoot的打包plugin <plugin> <groupId>org.spring ...
随机推荐
- 兼容IE8的video写法
<video width="100%" height="515px" controls preload> <source src=" ...
- centos命令行系列之centos6防火墙的关闭以及开启
输入:cat /etc/issue 查看版本 (一)通过service命令 注:service命令开启以及关闭防火墙为即时生效,下次重启机器的时候会自动复原 查看防火墙状态:service ipt ...
- IDEA 自动生成 serialVersionUID 的设置
打开File菜单,选择Settings选项,打开Settings设置对话框:左边树形目录,打开Editor>Inspections
- Oracle Shared Pool之Library Cache
1. Shared Pool组成 Shared Pool由许多区间(Extent)组成,这些区间又由多个连续的内存块(Chunk)组成,这些内存块大小不一.从逻辑功能角度,Shared pool主要包 ...
- [转]perftools查看堆外内存并解决hbase内存溢出
最近线上运行的hbase发现分配了16g内存,但是实际使用了22g,堆外内存达到6g.感觉非常诡异.堆外内存用一般的工具很难查看,可以通过google-perftools来跟踪: http://cod ...
- Easyui的datagrid的行编辑器Editor中添加事件(修改某个单元格带出其他单元格的值)
项目中有个datagrid需要编辑行时,用到Editor的属性,那么如何添加一个事件 问题:同一个编辑行中的某个单元格值改变时,修改其他单元格的值 页面用到的datagrid <table id ...
- 转 举例说明使用MATLAB Coder从MATLAB生成C/C++代码步骤
MATLAB Coder可以从MATLAB代码生成独立的.可读性强.可移植的C/C++代码. http://www.mathworks.cn/products/matlab-coder/ 使用MATL ...
- Win10系列:VC++ Direct3D模板介绍1
Visual Studio为开发Direct3D应用程序提供了便捷的模版,读者可以不必手动去新建Direct3D中所使用到的基础资源,而只需专注于图形的绘制.本小节主要为读者介绍这个模版中用于绘制图形 ...
- Win10系列:JavaScript小球运动示例
通过前面内容的学习,相信读者已经对开发基于JavaScript的Windows应用商店应用有了一定的了解,本小节通过一个小球运动的示例来介绍如何新建一个JavaScript的Windows应用商店项目 ...
- C++解析三
类的构造函数类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行.构造函数的名称与类的名称是完全相同的,并且不会返回任何类型,也不会返回 void.构造函数可用于为某些成员变量设置初始 ...