MySQL字段類型與Java實(shí)體類類型對(duì)應(yīng)轉(zhuǎn)換關(guān)系詳解
MySQL字段類型與Java實(shí)體類類型對(duì)應(yīng)轉(zhuǎn)換
MySQL Connector/J( MySQL官方JDBC驅(qū)動(dòng)程序)在處理MySQL數(shù)據(jù)類型和Java數(shù)據(jù)類型之間的轉(zhuǎn)換方面非常靈活。
通常,任何MySQL數(shù)據(jù)類型都可以轉(zhuǎn)換為java.lang.String。
可以將字符串和任何數(shù)字類型轉(zhuǎn)換為任何Java數(shù)字類型,盡管可能會(huì)發(fā)生舍入、溢出或精度損失。
從Connector/J 3.1.0開始,JDBC驅(qū)動(dòng)程序會(huì)發(fā)出警告或引發(fā)JDBC規(guī)范所要求的DataTruncation異常(數(shù)據(jù)截?cái)喈惓#峭ㄟ^使用jdbcCompliantTruncation屬性并將其設(shè)置為false來將連接配置為不這樣做。
MySQL和Java類型之間始終保證有效的轉(zhuǎn)換
| MySQL類型 | 可轉(zhuǎn)換的Java類型 |
|---|---|
| char, varchar, blob, text, enum, set | java.lang.String, java.io.InputStream, java.io.Reader, java.sql.Blob, java.sql.Clob |
| float, real, double, precision, numeric, decimal, tinyint, smallint, mediumint, integer, bigint | java.lang.String, java.lang.Short, java.lang.Integer, java.lang.Long, java.lang.Double, java.math.BigDecimal |
| date, time, datetime, timestamp | java.lang.String, java.sql.Date, java.sql.Timestamp |
注意:
如果選擇的Java數(shù)字?jǐn)?shù)據(jù)類型的精度或容量低于要轉(zhuǎn)換的MySQL數(shù)據(jù)類型,則可能會(huì)發(fā)生舍入、溢出或精度損失。
對(duì)應(yīng)關(guān)系
| MySQL類型 | 對(duì)應(yīng)Java類型 | 用途 |
|---|---|---|
| tinyint | 如果配置屬性 tinyInt1isBit 設(shè)置為 true (默認(rèn))并且存儲(chǔ)大小為1,則為 java.lang.Boolean ,否則是 java.lang.Integer。 | |
| smallint | java.lang.Integer(不管它是否是unsigned ) | |
| mediumint | java.lang.Integer(不管它是否是unsigned ) | |
| int | java.lang.Integer, 如果是 unsigned 則是 java.lang.Long | 整數(shù) |
| integer | java.lang.Integer, 如果是 unsigned 則是 java.lang.Long | |
| bigint | java.lang.Long, 如果是 unsigned 則是 java.math.BigInteger | |
| bit(1) | java.lang.Boolean | |
| bit(>1) | byte[] | |
| real | Java | |
| double | java.lang.Double | |
| float | java.lang.Float | |
| decimal | java.math.BigDecimal | 金額 |
| numeric | Java | |
| char | java.lang.String (除非列的字符集是BINARY,否則返回byte[]。) | |
| varchar | java.lang.String (除非列的字符集是BINARY,否則返回byte[]。) | |
| date | java.sql.Date | 日期 |
| time | java.sql.Time | 時(shí)間 HH:MM:SS |
| year | 如果 yearIsDateType 配置屬性設(shè)置為 false,則返回的對(duì)象類型為 java.sql.Short。 如果設(shè)置為 true (默認(rèn)),則返回的對(duì)象類型為 java.sql.Date,日期設(shè)置為1月1日0:00點(diǎn)。 | |
| timestamp | java.sql.Timestamp | 時(shí)間戳 YYYY-MM-DD HH:MM:SS |
| datetime | java.sql.Timestamp | YYYY-MM-DD HH:MM:SS |
| tinyblob | byte[] | |
| blob | byte[] | |
| mediumblob | byte[] | |
| longblob | byte[] | |
| tinytext | java.lang.String | |
| text | java.lang.String | |
| mediumtext | java.lang.String | |
| longtext | java.lang.String | |
| enum | java.lang.String | |
| set | java.lang.String | |
| binary | byte[] | |
| varbinary | byte[] | |
| point | 位圖 GIS地理坐標(biāo) | |
| linestring | 線圖 | |
| polygon | 多邊形 | |
| geometry | 幾何圖形 | |
| multipoint | 復(fù)合位圖 | |
| multilinestring | 復(fù)合線圖 | |
| multipolygon | 復(fù)合多邊形 | |
| geometrycollection | 幾何集合 |
Java中屬性與字段的關(guān)系
理論
通常來說:
- 字段(Field):是類中的變量,用于存儲(chǔ)對(duì)象的狀態(tài)或者類的狀態(tài)。字段可以是任何基本數(shù)據(jù)類型(如 int、double、boolean 等),也可以是對(duì)象類型(如 String、自定義類等)。
- 屬性(Property):是對(duì)字段的抽象和封裝,通常通過 getter 和 setter 方法來控制對(duì)字段的訪問。屬性將字段封裝在類的內(nèi)部,提供了更好的控制和更友好的接口,使得數(shù)據(jù)在類內(nèi)部更安全地被訪問和操作。屬性是字段的一種高級(jí)表示,它隱藏了字段的具體實(shí)現(xiàn)細(xì)節(jié),提供了更嚴(yán)格的控制和更靈活的操作。
因此,可以說屬性是字段的一種,但并不是所有的字段都是屬性。
在很多情況下,屬性是通過 getter 和 setter 方法來操作字段的,但也有些情況下,類中的字段可能不會(huì)被封裝成屬性,而直接暴露給外部使用。
在idea中演示

心得:
屬性是字段的一種。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL8.0?索引優(yōu)化invisible?index詳情
這篇文章主要介紹了MySQL8.0?索引優(yōu)化invisible?index詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09
Mysql的數(shù)據(jù)庫遷移到另一個(gè)機(jī)器上的方法詳解
今天小編就為大家分享一篇關(guān)于Mysql的數(shù)據(jù)庫遷移到另一個(gè)機(jī)器上的方法詳解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-04-04
Sql Server數(shù)據(jù)庫遠(yuǎn)程連接訪問設(shè)置詳情
這篇文章主要介紹了Sql Server數(shù)據(jù)庫遠(yuǎn)程連接訪問設(shè)置詳情,文章圍繞主題展開詳細(xì)的內(nèi)容戒殺,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09
mysql怎么關(guān)閉sql_mode=ONLY_FULL_GROUP_BY模式
前段時(shí)間在項(xiàng)目開發(fā)過程中發(fā)現(xiàn)了系統(tǒng)異常,打開日志查看發(fā)現(xiàn)了如下的這個(gè)報(bào)錯(cuò),查找相關(guān)資料終于解決了,這篇文章主要給大家介紹了關(guān)于mysql怎么關(guān)閉sql_mode=ONLY_FULL_GROUP_BY模式的相關(guān)資料,需要的朋友可以參考下2024-01-01

