Java生成日期時間存入Mysql數(shù)據(jù)庫的實現(xiàn)方法
一、創(chuàng)建數(shù)據(jù)庫標準
1.表的必備三個字段:id、gmt_create、gmt_modified
2.gmt_create是創(chuàng)建時間,gmt_modified是更新時間
3.然而創(chuàng)建時間和更新時間的默認設置不要讓數(shù)據(jù)庫來設置、統(tǒng)一用Mybatis-plus的Handler管理
二、數(shù)據(jù)庫表結構
CREATE TABLE `ums_member` ( `id` bigint(20) NOT NULL, `username` varchar(64) DEFAULT NULL, `password` varchar(64) DEFAULT NULL, `icon` varchar(500) DEFAULT NULL, `email` varchar(100) DEFAULT NULL, `nick_name` varchar(200) DEFAULT NULL, `note` varchar(500) DEFAULT NULL, `gmt_create` datetime DEFAULT NULL, `gmt_modified` datetime DEFAULT NULL, `login_time` datetime DEFAULT NULL, `status` int(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

三、使用步驟
1.實體類
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "ums_member")
public class UmsMember implements Serializable {
@TableId(value = "id", type = IdType.NONE)
private Long id;
@TableField(value = "username")
private String username;
@TableField(value = "password")
private String password;
@TableField(value = "icon")
private String icon;
@TableField(value = "email")
private String email;
@TableField(value = "nick_name")
private String nickName;
@TableField(value = "note")
private String note;
@TableField(value = "gmt_create",fill = FieldFill.INSERT)
private Date gmt_create;
@TableField(value = "gmt_modified",fill = FieldFill.INSERT_UPDATE)
private Date gmt_modified;
@TableField(value = "login_time")
private Date loginTime;
@TableField(value = "status")
private Integer status;
private static final long serialVersionUID = 1L;
}

2.實體類操作數(shù)據(jù)庫時間工具類
/**
* @author :Mr.ZJW
* @date :Created 2022/3/2 10:08
* @description:數(shù)據(jù)庫自動插入時間工具類
*/
@Component
public class MyHandler implements MetaObjectHandler {
public void insertFill(MetaObject metaObject) {
System.out.println("添加插入時間");
this.setFieldValByName("gmt_create",new Date(),metaObject);
this.setFieldValByName("gmt_modified",new Date(),metaObject);
}
public void updateFill(MetaObject metaObject) {
System.out.println("更新插入時間");
this.setFieldValByName("gmt_modified",new Date(),metaObject);
}
}

3.測試
@SpringBootTest
@RunWith(SpringRunner.class)
public class UmsMeberTest {
@Autowired
private UmsMemberMapper umsMemberMapper;
@Test
public void test01(){
UmsMember umsMember = new UmsMember();
umsMember.setUsername("jowell");
umsMember.setStatus(0);
umsMember.setPassword("jowell");
umsMember.setNote("not");
umsMember.setNickName("cike");
umsMember.setEmail("2280252534@qq.com");
umsMemberMapper.insert(umsMember);
}
操作成功:

到此這篇關于Java生成日期時間存入Mysql數(shù)據(jù)庫的實現(xiàn)方法的文章就介紹到這了,更多相關Java生成日期時間內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
迅速掌握Java容器中常用的ArrayList類與Vector類用法
這篇文章主要介紹了Java容器中常用的ArrayList類與Vector類用法,文中只對其最基本的功能給出了示例代碼,需要的朋友可以參考下2015-11-11
如何解決SpringBoot2.6及之后版本取消了循環(huán)依賴的支持問題
循環(huán)依賴指的是兩個或者多個bean之間相互依賴,形成一個閉環(huán),SpringBoot從2.6.0開始默認不允許出現(xiàn)Bean循環(huán)引用,解決方案包括在全局配置文件設置允許循環(huán)引用存在、在SpringApplicationBuilder添加設置允許循環(huán)引用、構造器注入2024-10-10
Spring?MVC?前端控制器?(DispatcherServlet)處理流程解析
DispatcherServlet是前置控制器,配置在web.xml文件中的,這篇文章主要介紹了Spring?MVC?前端控制器?(DispatcherServlet)處理流程,需要的朋友可以參考下2022-05-05
MyBatisPlus數(shù)據(jù)權限控制實現(xiàn)的三種方式
數(shù)據(jù)權限是保障數(shù)據(jù)安全的重要手段,本文主要介紹了MyBatisPlus數(shù)據(jù)權限控制實現(xiàn)的三種方式,具有一定的參考價值,具有一定的參考價值,感興趣的可以了解一下2024-05-05

