在hibernate中,当一个实体对象使用了数据库保留字作为字段名称(虽说不推荐,但少数情况下必须使用),执行保存操作时,你可能会遇到如下错误。
ERROR JDBCExceptionReporter:78 - You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the
right syntax to use near 'Datadabase reserved keyword....
例如:
在MySql中,"desc"是保留字,我们有两种方式实现。
1,使用[]
<property name="desc" type="string" > <column name="[DESC]" length="255" not-null="true" /> </property>
注解
@Column(name = "[DESC]", nullable = false) public String getDesc() { return this.desc; }
2,使用单引号包围双引号
<property name="desc" type="string" > <column name='"DESC"' length="255" not-null="true" /> </property>
注解
@Column(name = "\"DESC\"", nullable = false) public String getDesc() { return this.desc; }
这种方式也适用于表名。
相关推荐
SSH,全称Secure Shell,是一种网络协议,用于在不安全的网络环境中提供安全的远程登录...在实践中,应注意避免数据库关键字冲突,正确配置数据源,以及合理地将Hibernate整合到Spring中,以实现高效、灵活的开发流程。
- **表名**:一般采用小写字母,多个单词间用下划线连接,如`user_info`,避免使用保留字。 - **字段名**:遵循与表名相同的命名规则,字段类型与业务逻辑相符,如`username`、`password`。 - **索引**:合理...
- Java中并没有`goto`关键字,它是Java的保留字,目前未被使用。 3. **`&`和`&&`的区别**: - `&`和`&&`都可以作为逻辑与运算符。只有当两边的表达式都为真时,结果才为真。 - `&&`具有短路特性,如果左边的...
- **`goto`**:`goto`在Java中是保留字,但未被使用,这意味着程序员不能定义名为`goto`的标识符。 5. **封装类与原始类型**: - **`int`与`Integer`**:`int`是原始类型,`Integer`是其对应的封装类,用于处理...
保留关键字可能在未来版本中使用,因此不能作为标识符使用。 #### 六、引用类型与原始类型 Java中有八种原始类型:`boolean, char, byte, short, int, long, float, double`,每种都有对应的封装类型。原始类型直接...
- Java中不使用`goto`关键字,但它是保留字,可能在未来版本中使用。 7. **逻辑与运算符**: - `&`是按位与运算符,不论两边表达式是否都为真,都会执行右边的表达式。而`&&`是短路与运算符,如果左边表达式为假...
- **关键字、保留字列表**:列出开发中应避免使用的关键字和保留字。 9. **相关资料附录** - **C3P0连接池配置描述**:详细说明了C3P0连接池的配置方法。 - **Acgei与配置文件相关的类说明**:解释了与配置文件...
6. **goto关键字**:Java中并没有使用goto,它是一个保留字,但并未在现有版本的Java中实现。 7. **int与Integer**:int是Java的原始数据类型,而Integer是其对应的封装类。原始类型直接存储值,封装类则提供了对象...
- **解释**: “Goto”是Java中的一个保留字,尽管它在标准Java语言中不被使用。它通常用于表示跳转到程序中的某个位置,但在现代编程实践中很少使用。 #### 40. Heap (堆) - **拼音**: [hi:p] - **解释**: “Heap”...
3. **Java中的关键字与保留字**: - 关键字如`public`、`private`、`protected`等用于定义访问级别。 - `class`、`interface`、`enum`等用于定义类和接口。 4. **变量的作用域**: - 局部变量:在方法或块内声明...
在本文中,我们将深入探讨Java相关的开发笔记,主要包括Servlet基础知识、JDBC、Hibernate、Struts 1.X的使用以及JavaScript。这些技术是构建现代Web应用程序的基础。 首先,让我们了解一下HTML基础。HTML(超文本...
- **goto**:Java保留字,但未实际使用。 6. **封装类和原始类型**: - **int与Integer**:`int`是原始类型,`Integer`是其对应的封装类,封装类支持额外的方法和空值。 7. **OOAD & UML**: - **对象导向分析...
5. **关键字`goto`**:在Java中,`goto`是一个保留关键字,但目前并未实际使用。 6. **`int`与`Integer`**:`int`是原始数据类型,`Integer`是其对应的包装类。包装类提供了额外的方法和功能,如`equals()`,`...