注意:项目未使用redis但引入redis依赖时,AAS启动将报错
## 东方通tongweb
### 常见配置和问题
+ jvm
[](https://imgchr.com/i/r49OgJ)
+ 端口
[](https://imgchr.com/i/r4CwPU)
+ 部署和部署
[](https://imgchr.com/i/r49c4S)
+ 修改通道编码为utf-8
[](https://imgchr.com/i/sEf20P)
或
位置:`TongWeb7.0\conf\tongweb.xml`,搜索以下关键字将`GBK`修改为`utf-8`
```xml
uri-encoding="GBK"
parameter-encoding="GBK"
response-encoding="GBK"
```
### 项目适配
+ 打成war
```xml
war
```
+ 修改启动类,并重写初始化方法
```java
public class WebApplication extends SpringBootServletInitializer {
修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
System.out.println("======WebApplication====start==========");
return builder.sources(new Class[]{WebApplication.class});
}
}
```
+ 添加serverlet依赖
```xml
javax.servlet
javax.servlet-api
3.0.1
provided
javax.servlet
jstl
provided
```
## 统信uos2
+ nginx中文文件无法下载
方式一:将文件名修改为英文
方式二:通过文件流方式下载
方式三:修改Nginx支持中文文件名
1. 确定服务器安装了UTF-8字符集
在命令行里输入env|grep LANG
如果显示en_US.UTF-8则说明已安装
2. 在nginx的配置文件中添加charset utf-8; 并使其生效
```java
server {
listen 80;
server_name localhost;
charset utf-8;
……
```
3. 重新以UTF-8方式上传文件,以Xftp举例
点击属性->选项->勾选使用UTF-8编码
## 达梦
[](https://imgchr.com/i/r4Pny9)
### 迁移
[](https://imgchr.com/i/r4Plo6)
+ FAQ
乱码解决:指定URL
`jdbc:mysql://localhost:3306/meeting?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true`
### Mybatis的代码处理
[](https://imgchr.com/i/r4iBu9)
### SQL适配
1. 模式名+表名 (注意大写模式名)
```sql
```
2. 达梦如果设置了某个列为主键自增,那么 `insert` 语句就不能指定主键值
正例:
```sql
insert into "MEETING".meet_ballot (gmt_create, gmt_modified,
meet_id, issue_id, start_time,
interval_time, end_time, ballot_status,
is_anonymous, corp_id)
values ( #{gmtCreate,jdbcType=TIMESTAMP}, #{gmtModified,jdbcType=TIMESTAMP},
#{meetId,jdbcType=BIGINT}, #{issueId,jdbcType=BIGINT}, #{startTime,jdbcType=TIMESTAMP},
#{intervalTime,jdbcType=INTEGER}, #{endTime,jdbcType=TIMESTAMP}, #{ballotStatus,jdbcType=CHAR},
#{isAnonymous,jdbcType=BIT}, #{corpId,jdbcType=VARCHAR})
```
反例:
```sql
insert into meet_ballot (id, gmt_create, gmt_modified,
meet_id, issue_id, start_time,
interval_time, end_time, ballot_status,
is_anonymous, corp_id)
values (#{id,jdbcType=BIGINT}, #{gmtCreate,jdbcType=TIMESTAMP}, #{gmtModified,jdbcType=TIMESTAMP},
#{meetId,jdbcType=BIGINT}, #{issueId,jdbcType=BIGINT}, #{startTime,jdbcType=TIMESTAMP},
#{intervalTime,jdbcType=INTEGER}, #{endTime,jdbcType=TIMESTAMP}, #{ballotStatus,jdbcType=CHAR},
#{isAnonymous,jdbcType=BIT}, #{corpId,jdbcType=VARCHAR})
```
3. 数据库连接务必设置IP(这样能避免防火墙和达梦数据库的隔离策略导致的很多问题)
4. 达梦不支持函数: `LAST_INSERT_ID()`
5. 达梦日期时间函数适配
`DATE_SUB(NOW(), INTERVAL 1 MONTH) --> NOW() - INTERVAL '1' MONTH`
6. 不能使用关键字和保留字作为列名
7. 批量插入不能返回受影响记录数
## 📞联系方式
如有任何问题或建议,请联系项目维护者。
- 个人网站:https://yzd1206.blog.csdn.net
- QQ:121665820
## 🛠️ 推荐工具
如果您正在使用 Hutool 工具库,强烈推荐搭配 `hutool-plus` 使用,这是一个基于 Hutool 的增强工具包,秉承"只做增强不做改变"的设计理念,
为简化开发、提高效率而生。完全兼容 Hutool 原有 API,提供了更多开箱即用的功能模块,特别是在 Spring 生态集成方面做了大量优化工作,让您能够更专注于业务逻辑实现。
🍬Hutool最佳搭档,只做增强不做改变,为简化开发、提高效率而生
### 📚简介
`hutool-plus`是基于[Hutool](https://hutool.cn/)的增强工具包,秉承"Hutool最佳搭档,只做增强不做改变"的设计理念,致力于进一步简化Java开发,提升开发效率。
`hutool-plus`在Hutool的基础上进行了功能增强和扩展,保留了Hutool原有的所有优秀特性,同时增加了更多实用的功能模块,特别是在Spring生态集成方面做了大量工作。
GitCode源码仓库地址:[https://gitcode.com/yzd1206/hutool-plus](https://gitcode.com/yzd1206/hutool-plus)
Gitee源码仓库地址:[https://gitee.com/yzd_org/hutool-plus](https://gitee.com/yzd_org/hutool-plus)
Maven仓库地址(网页1):[https://repo1.maven.org/maven2/io/github/yzd1206](https://repo1.maven.org/maven2/io/github/yzd1206)
Maven仓库地址(网页2):[https://mvnrepository.com/artifact/io.github.yzd1206](https://mvnrepository.com/artifact/io.github.yzd1206)
## ⭐Star Hutool
[](https://starchart.cc/chinabugotech/hutool)