springboot项目怎么样排除自带tomcat容器使用宝蓝德bes web中间件?

发布于:2024-07-08 ⋅ 阅读:(62) ⋅ 点赞:(0)

  前言:

        由于Spring Boot 1.x和2.x不兼容,BES提供了对应的Spring Boot Starter版本。                    bes‑lite‑spring‑boot‑1.x‑starter.jar,适用于Spring Boot 1.x的版本。                  bes‑lite‑spring‑boot‑2.x‑starter.jar,适用于Spring Boot 2.x的版本。 以下文档无特殊说明,涉及bes‑lite‑spring‑boot‑2.x‑starter.jar的操作同样适用于bes‑ lite‑spring‑boot‑1.x‑starter.jar。

一、在pom.xml中排除springboot项目中Tomcat依赖:

        使用exclusion标签排除依赖,如下

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <!-- 排除内嵌的Tomcat -->
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

  二、 下载宝蓝德依赖jar,并导入本地maven。

  三、 安装核心依赖包到本地Maven仓库

        1. bes‑lite‑spring‑boot‑2.x‑starter.jar是提供给Spring Boot应用的核心依赖Jar包,可约定坐标为:

<dependency>
<groupId>com.bes.appserver</groupId>
<artifactId>bes-lite-spring-boot-2.x-starter</artifactId>
<version>9.5.5</version>
</dependency>

        2.使用mvn install将其安装到Maven本地仓库或者使用mvn deploy命令将其发布到Maven 远程仓库,例如:

mvn install:install-file –Dfile=bes-lite-spring-boot-2.x-starter.jar –DgroupId=com.bes.appserver –DartifactId= bes-lite-spring-boot-2.x-starter –Dversion=9.5.5 –Dpackaging=jar 

        3. 安装可选功能包到本地Maven仓库(可选):

除核心依赖之外,对于JSP功能,Websocket功能,国密支持等可选功能,提供了独立的功 能依赖包,相关jar说明和可约定坐标如下: JSP功能支持的依赖包可约定坐标:

<dependency>
<groupId>com.bes.appserv.packages</groupId>
<artifactId>bes-jasper</artifactId>
<version>9.5.5</version>
</dependency>

        4. WebSocket功能支持依赖包可约定坐标:

<dependency>
<groupId>com.bes.appserv.packages</groupId>
<artifactId>bes-websocket</artifactId>
<version>9.5.5</version>
</dependency>

        5. 国密通信功能依赖包可约定坐标:

<dependency>
<groupId>com.bes.appserv.packages</groupId>
<artifactId>bes-gmssl</artifactId>
<version>9.5.5</version>
</dependency>

        6.Spring Boot 2.x业务应用的pom.xml文件示例如下:

<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.bes.test</groupId>
	<artifactId>springboot-demo</artifactId>
	<version>2.0.0</version>
	<dependencyManagement>
		<dependencies>
			<!--Spring Boot的基本依赖-->
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>2.0.0.RELEASE</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>
	<dependencies>
		<!--bes-lite-spring-boot-2.x-starter的依赖-->
		<dependency>
			<groupId>com.bes.appserver</groupId>
			<artifactId>bes-lite-spring-boot-2.x-starter</artifactId>
			<version>9.5.5</version>
		</dependency>
			<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
		</dependency>
	</dependencies>
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<version>2.0.0.RELEASE</version>
				<configuration>
					<mainClass>com.bes.boot.sample.DemoApplication</mainClass>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>repackage</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>

四、基本配置:

 Spring Boot Starter的相关配置,开发过程中默认在application.properties或者applica‑ tion.yaml文件中,打包好之后,相关的配置位于BOOT‑INF/classes/application.properties 中。

#指定server访问的端口,默认值:8080。
server.port=8087
#指定server绑定的地址,默认值:0.0.0.0。
server.address=
#指定X‑Forwarded‑*相关头信息是否应用于Http请求。
server.useForwardHeaders=
#用于服务器响应头的值(如果为空则不发送)。
server.serverHeader=
#设置http消息头最大大小,单位:字节,默认值:8192。
server.maxHttpHeaderSize=
#连接超时时间:超时后连接将被关闭。‑1表示无限制。单位:毫秒,默认值:60000。
server.connectionTimeout=

其他参数参考:

 优雅关机相关配置:

server.shutdown 退出进程的方式,可以配置graceful和 immediate,默认值:immediate。

spring.lifecycle.timeout‑per‑shutdown‑phase 在该规定时间内如果线程无法执行完毕则 会被强制停机,默认值:30s。

访问日志相关配置:

server.bes.accesslog.enabled 是否开启访问日志,默认值:false。 server.bes.accesslog.pattern 指定访问日志格式,默认值:common。 server.bes.accesslog.directory 指定访问日志的目录,默认值: logs/access。 server.bes.accesslog.prefix 指定日志文件的前缀,默认值: server_access_log。 server.bes.accesslog.suffix 指定日志文件的后缀,默认值:.log。 server.bes.accesslog.rotate 是否开启访问日志轮转,默认值:true。 server.bes.accesslog.renameOnRotate 是否将时间戳添加到轮转日志文件的文件名 中,默认值:false。 server.bes.accesslog.fileDateFormat 在日志文件名中的日期格式,默认值: .yyyy‑MM‑dd。 server.bes.accesslog.requestAttributesEnabled是否开启为请求设置ip地址、主机名、协议 和端口的请求属性。 server.bes.accesslog.buffered 日志缓存:若启用,则访问日志记录先缓存 到内存中,然后定时刷新到文件中,默认 值:true。 server.bes.accesslog.rotatableByTime 按时间轮转,默认值:true。 server.bes.accesslog.rotatableBySize 按大小轮转,默认值:false。

server.bes.accesslog.rotationSize 轮转大小,rotatableBySize=true时有效, 默认值:10458760。 erver.bes.accesslog.maxHistoryFiles 最大历史文件个数,默认值:10。


网站公告

今日签到

点亮在社区的每一天
去签到