过去运用xml文件对MysqL数据库进行配置时,在url字段经常需要使用 & 对 & 进行转义,而在yml文件或properties文件中,直接用 & 进行url不同参数间连接即可,无需加转义符
示例如下
加转义符的代码
server: port: 8080 spring: datasource: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.MysqL.cj.jdbc.Driver url: jdbc:MysqL://localhost:3306/aa?useSSL=false&serverTimezone=UTC username: root password: "1234"
报错如下
java.sql.sqlNonTransientConnectionException: Cannot load connection class because of underlying exception: com.MysqL.cj.exceptions.WrongArgumentException: Malformed database URL, Failed to parse the connection string near ';serverTimezone=UTC'.
改正后(如下图,即可正常运行)
server: port: 8080 spring: datasource: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.MysqL.cj.jdbc.Driver url: jdbc:MysqL://localhost:3306/aa?useSSL=false&serverTimezone=UTC username: root password: "1234"
原因总结:未理解 amp; 是xml文件中的转义格式,properties与yml文件可直接识别&,无需进行转义
补充: 经上网查阅,xml文件中常见的转义符有
1.< 表示 <
2.> 表示 >
3.& 表示 和
4.&apos 表示单引号
5." 表示双引号
与html有所类似