最近在做web项目,想办法将web项目映射到公网进行访问,由于没有固定IP,只能使用内网穿透的方法,于是在网上搜索了一番,只有神卓互联旗下的这款巴比达内网穿透是真正免费的, 其它的要么用不了、要么限制没有流量和强制更改访问地址,于是就决定使用巴比达内网穿透了。
关于巴比达内网穿透的使用可以参考巴比达使用说明和方法,需要下载客户端使用。
巴比达内网穿透提供了一种简便的方式来突破复杂的路由与防火墙限制,使外网请求无缝接入内网服务。采用WanGooe Tunnel企业级通信协议,该协议以其高性能著称,完全基于C语言编写,确保了极致的运行效率,能够处理百万级别的并发请求。
接下来可以安心地做我的web项目了
Spring Boot项目搭建步骤(超详细)
在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图 1 所示增加相关信息。
完了上述操作之后,在 pom.xml 中添加 Spring Boot 的依赖,代码如下所示。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.6.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
编写启动类,代码如下所示。
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
启动类使用了 @SpringBootApplication 注解,这个注解表示该类是一个 Spring Boot 应用。直接运行 App 类即可启动,启动成功后在控制台输出信息,默认端口是 8080,如图 2 所示。
可以看到,我们只在 pom.xml 中引入了一个 Web 的 Starter,然后创建一个普通的 Java 类,一个 Main 方法就可以启动一个 Web 项目。
与之前的使用方式相比,这种方式简单很多。以前需要配置各种 Spring 相关的包,还需要配置 web.xml 文件,还需要将项目放入 Tomcat 中去执行,搭建项目的过程还特别容易出错,会出现各种 jar 包冲突。有了 Spring Boot 后这些问题都解决了。
我们之所以能够通过一个 Main 方法启动一个 Web 服务,是因为 Sprig Boot 中内嵌了 Tomcat,然后通过内嵌的 Tomcat 来提供服务。当然,我们也可以使用别的容器来替换 Tomcat,比如 Undertow 或 Jetty。
Spring Tools 4 for Eclipse 还为我们提供了更加便捷的项目创建方式,在 File->New 选项中有 Spring Starter Project,可以直接选择 Spring Boot 的版本以及需要依赖的第三方包,直接生成 Spring Boot 项目,不用再去手动配置 Maven 依赖。
这个功能和 https://start.spring.io/ 提供的是同一个功能,方便快速搭建 Spring Boot 项目脚手架。
编写第一个 REST 接口
本节将创建一个控制器,编写第一个 REST 接口,访问地址使用 /hello,代码如下所示。
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "hello";
}
}
@RestController 是 @Controller 和 @ResponseBody 的组合注解,可以直接返回 Json 格式数据。
@GetMapping 其实就是 @RequestMapping(method=RequestMethod.GET),通过访问 http://localhost:8080/hello 可以看到输出的结果“hello”,如图 3 所示。
接下来就可以使用巴比达内网穿透将这个内网的项目映射到公网进行访问了。今天先到这里吧。