精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

值不值 | 三分鐘搞定Jpa?值不值!

開發(fā) 前端
實(shí)體類,需要使用 @Entity 注解標(biāo)注 需要對(duì)實(shí)體類的屬性進(jìn)行標(biāo)注,使用 @Id 標(biāo)注組件 使用 @Column 標(biāo)注非主鍵。

[[353188]]

本文轉(zhuǎn)載自微信公眾號(hào)「小明菜市場(chǎng)」,作者+小明菜市場(chǎng)。轉(zhuǎn)載本文請(qǐng)聯(lián)系小明菜市場(chǎng)公眾號(hào)。

數(shù)據(jù)準(zhǔn)備

數(shù)據(jù)庫(kù)使用的數(shù)據(jù)表設(shè)計(jì)如下

建表語句如下

  1. SET NAMES utf8mb4; 
  2. SET FOREIGN_KEY_CHECKS = 0; 
  3.  
  4. -- ---------------------------- 
  5. -- Table structure for t_user 
  6. -- ---------------------------- 
  7. DROP TABLE IF EXISTS `t_user`; 
  8. CREATE TABLE `t_user` ( 
  9.   `id` int(11) NOT NULL AUTO_INCREMENT, 
  10.   `user_name` varchar(255) DEFAULT NULL
  11.   `passwordvarchar(255) DEFAULT NULL
  12.   `last_login_time` datetime DEFAULT NULL
  13.   `sex` tinyint(4) DEFAULT NULL
  14.   PRIMARY KEY (`id`) 
  15. ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=armscii8; 
  16.  
  17. -- ---------------------------- 
  18. -- Records of t_user 
  19. -- ---------------------------- 
  20. BEGIN
  21. INSERT INTO `t_user` VALUES (1, 'json''123''2019-07-27 16:01:21', 1); 
  22. INSERT INTO `t_user` VALUES (2, 'jack jo''123''2019-07-24 16:01:37', 1); 
  23. INSERT INTO `t_user` VALUES (3, 'manistal''123''2019-07-24 16:01:37', 1); 
  24. INSERT INTO `t_user` VALUES (4, 'landengdeng''123''2019-07-24 16:01:37', 1); 
  25. INSERT INTO `t_user` VALUES (5, 'max''123''2019-07-24 16:01:37', 1); 
  26. COMMIT
  27.  
  28. SET FOREIGN_KEY_CHECKS = 1; 

新建 Spring Boot 工程

選擇 File -> New -> Project 選擇 Spring Initializr,選擇 next 填寫包名,項(xiàng)目名,選擇下一步。選擇依賴,Spring web starter 前面打鉤,sql 選項(xiàng)為 Spring Data Jpa,MySql 項(xiàng)目名任意

引入 Pom配置

  1. <dependencies> 
  2.         <dependency> 
  3.             <groupId>org.springframework.boot</groupId> 
  4.             <artifactId>spring-boot-starter-data-jpa</artifactId> 
  5.         </dependency> 
  6.         <dependency> 
  7.             <groupId>org.springframework.boot</groupId> 
  8.             <artifactId>spring-boot-starter-webflux</artifactId> 
  9.         </dependency> 
  10.  
  11.         <dependency> 
  12.             <groupId>mysql</groupId> 
  13.             <artifactId>mysql-connector-java</artifactId> 
  14.             <scope>runtime</scope> 
  15.         </dependency> 
  16.         <dependency> 
  17.             <groupId>org.springframework.boot</groupId> 
  18.             <artifactId>spring-boot-starter-test</artifactId> 
  19.             <scope>test</scope> 
  20.         </dependency> 
  21.         <dependency> 
  22.             <groupId>io.projectreactor</groupId> 
  23.             <artifactId>reactor-test</artifactId> 
  24.             <scope>test</scope> 
  25.         </dependency> 
  26.     </dependencies> 

編寫配置文件 application.yml

  1. server: 
  2.   port: 8086 
  3. spring: 
  4.   #通用的數(shù)據(jù)源配置 
  5.   datasource: 
  6.     driverClassName: com.mysql.jdbc.Driver 
  7.     url: jdbc:mysql://localhost:3306/demo_test?useSSL=false&useUnicode=true&characterEncoding=utf8 
  8.     username: root 
  9.     password: 123 
  10.   jpa: 
  11.     #這個(gè)參數(shù)是在建表的時(shí)候,將默認(rèn)的存儲(chǔ)引擎切換為 InnoDB 用的 
  12.     database-platform: org.hibernate.dialect.MySQL5InnoDBDialect 
  13.     #配置在日志中打印出執(zhí)行的 SQL 語句信息。 
  14.     show-sql: true 
  15.     hibernate: 
  16.       #配置指明在程序啟動(dòng)的時(shí)候要?jiǎng)h除并且創(chuàng)建實(shí)體類對(duì)應(yīng)的表 
  17.       ddl-auto: create 

編寫示例代碼

新建實(shí)體對(duì)象 UserDao.java

實(shí)體類,需要使用 @Entity 注解標(biāo)注 需要對(duì)實(shí)體類的屬性進(jìn)行標(biāo)注,使用 @Id 標(biāo)注組件 使用 @Column 標(biāo)注非主鍵

  1. /** 
  2.  * 用戶實(shí)體類 
  3.  * */ 
  4. @Entity 
  5. @Table(name="t_user"
  6. public class UserDO { 
  7.     @Id 
  8.     private Integer id; 
  9.     @Column(name="user_name",length = 200) 
  10.     private String userName; 
  11.     @Column(name="password",length = 200) 
  12.     private String password
  13.     @Column(name="sex"
  14.     private Integer sex; 
  15.     @Column(name="last_login_time"
  16.     private Date lastLoginTime; 
  17.  
  18.     public Integer getId() { 
  19.         return id; 
  20.     } 
  21.  
  22.     public void setId(Integer id) { 
  23.         this.id = id; 
  24.     } 
  25.  
  26.     public String getUserName() { 
  27.         return userName; 
  28.     } 
  29.  
  30.     public void setUserName(String userName) { 
  31.         this.userName = userName; 
  32.     } 
  33.  
  34.     public String getPassword() { 
  35.         return password
  36.     } 
  37.  
  38.     public void setPassword(String password) { 
  39.         this.password = password
  40.     } 
  41.  
  42.     public Integer getSex() { 
  43.         return sex; 
  44.     } 
  45.  
  46.     public void setSex(Integer sex) { 
  47.         this.sex = sex; 
  48.     } 
  49.  
  50.     public Date getLastLoginTime() { 
  51.         return lastLoginTime; 
  52.     } 
  53.  
  54.     public void setLastLoginTime(Date lastLoginTime) { 
  55.         this.lastLoginTime = lastLoginTime; 
  56.     } 

新建倉(cāng)庫(kù)接口類 UserRepository

倉(cāng)庫(kù)接口類,UserRepository 是我們常用的 Dao 接口,需要注意

  1. 使用 @Repository 注解
  2. 繼承 JPARepository
  3. UserRepository 不需要編寫任何代碼,即可實(shí)現(xiàn)增刪查改
  1. @Repository 
  2. public interface UserRepository extends JPARepository<UserDO,Integer> { 
  3.  

編寫測(cè)試用例

  1. src/test/java/com/fishpro/jpa/ 

下,新增加

  1. UserRepositoryTest.java 

使用

  1. @RunWith(SpringRunner.class) 

  1. @SpringBootTest 

注解標(biāo)注類。

  1. @RunWith(SpringRunner.class) 
  2. @SpringBootTest 
  3. public class UserRepositoryTest{ 
  4.  

新增加用戶數(shù)據(jù)

  1. /** 
  2.      * 初始化一個(gè)對(duì)象 UserDO 測(cè)試Insert過程 
  3.      * */ 
  4.     @Before 
  5.     public void before(){ 
  6.         UserDO userDO=new UserDO(); 
  7.         userDO.setId(1); 
  8.         userDO.setUserName("fishpro"); 
  9.         userDO.setSex(1); 
  10.         userDO.setLastLoginTime(new Date()); 
  11.         userDO.setPassword("passWord"); 
  12.         userRepository.save(userDO); 
  13.     } 

查詢單個(gè)用戶數(shù)據(jù)

  1. @Test 
  2.     public void testFind(){ 
  3.         Optional<UserDO> optionalUserDO=userRepository.findById(1); 
  4.         if(optionalUserDO.isPresent()){ 
  5.             UserDO userDO=optionalUserDO.get(); 
  6.             System.out.println("testFind user"+userDO.getUserName()); 
  7.         } 
  8.  
  9.     } 

查詢多個(gè)數(shù)據(jù)

  1. @Test 
  2.     public void testFindAll(){ 
  3.         List<UserDO> list=userRepository.findAll(); 
  4.         for (UserDO user:list 
  5.              ) { 
  6.             System.out.println("user_name:"+user.getUserName()); 
  7.         } 
  8.     } 

更新數(shù)據(jù)

  1. @Test 
  2.     public void testUpdate(){ 
  3.         Optional<UserDO> optionalUserDO=userRepository.findById(1); 
  4.         if(optionalUserDO.isPresent()){ 
  5.             UserDO userDO=optionalUserDO.get(); 
  6.             userDO.setUserName("fishpro001"); 
  7.             userRepository.save(userDO); 
  8.             System.out.println("testFind user"+userDO.getUserName()); 
  9.         } 
  10.  
  11.     } 

刪除數(shù)據(jù)

  1. @After 
  2.     public void after(){ 
  3.         userRepository.deleteById(1); 
  4.         userRepository.deleteById(2); 
  5.         userRepository.deleteById(3); 
  6.     } 

聯(lián)合主鍵

例如定義表中userId,roleId 都是主鍵,此時(shí)這樣設(shè)置

1.定義一個(gè)主鍵類

  1. public class UserRoleKey implements Serializable { 
  2.     private Integer userId; 
  3.     private Integer roleId; 

2.定義實(shí)體類

  1. @Entity 
  2. @Table(name="t_user_role"
  3. @IdClass(UserRoleKey.class) //注意這里是引入了 定義的符合主鍵類 
  4. public class UserRoleDO { 
  5.     @Id 
  6.     private Integer userId; 
  7.     @Id 
  8.     private Integer roleId; 
  9.  
  10.     public Integer getUserId() { 
  11.         return userId; 
  12.     } 
  13.  
  14.     public void setUserId(Integer userId) { 
  15.         this.userId = userId; 
  16.     } 
  17.  
  18.     public Integer getRoleId() { 
  19.         return roleId; 
  20.     } 
  21.  
  22.     public void setRoleId(Integer roleId) { 
  23.         this.roleId = roleId; 
  24.     } 

 

責(zé)任編輯:武曉燕 來源: 小明菜市場(chǎng)
相關(guān)推薦

2012-07-26 16:33:30

蘋果山獅OS X 10.8

2009-11-05 16:04:19

Oracle用戶表

2021-06-09 07:14:32

數(shù)據(jù)分析互聯(lián)網(wǎng)運(yùn)營(yíng)大數(shù)據(jù)

2022-01-05 18:18:01

Flink 數(shù)倉(cāng)連接器

2015-08-14 13:12:20

4G

2024-05-16 11:13:16

Helm工具release

2022-02-16 19:42:25

Spring配置開發(fā)

2009-11-09 12:55:43

WCF事務(wù)

2024-12-18 10:24:59

代理技術(shù)JDK動(dòng)態(tài)代理

2023-02-13 13:50:48

研究offer

2025-08-14 11:13:59

2009-11-12 09:16:15

ADO.NET數(shù)據(jù)庫(kù)連

2021-04-20 13:59:37

云計(jì)算

2022-02-17 09:24:11

TypeScript編程語言javaScrip

2023-12-27 08:15:47

Java虛擬線程

2024-01-16 07:46:14

FutureTask接口用法

2024-08-30 08:50:00

2025-10-27 01:35:00

2020-06-30 10:45:28

Web開發(fā)工具

2013-06-28 14:30:26

棱鏡計(jì)劃棱鏡棱鏡監(jiān)控項(xiàng)目
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

日本wwwwwww| 亚洲欧洲另类精品久久综合| 亚洲国产综合久久| 丝袜美腿综合| 欧美性猛片aaaaaaa做受| 亚洲一卡二卡区| a级片在线播放| 一本色道久久综合亚洲精品高清| 亚洲欧美一区二区激情| 黄色片免费网址| 无遮挡爽大片在线观看视频 | 天堂av手机在线| 牛牛精品视频在线| 波多野洁衣一区| 国产精品视频一区二区高潮| 免费无码毛片一区二区app| 神马久久av| 91麻豆精品国产无毒不卡在线观看| 在线观看17c| 国产三级在线免费观看| 国产麻豆视频一区| 国产精品高潮呻吟久久av无限| 久久精品一区二区三区四区五区 | 欧美精品色综合| 乱妇乱女熟妇熟女网站| 成年视频在线观看| 国产日韩精品一区| 国产三区二区一区久久| 亚洲图片视频小说| 99视频一区| 久久亚洲精品成人| 免费看污片网站| 在线日韩成人| 欧美午夜免费电影| 国产淫片免费看| 欧美videossex| 中文字幕欧美区| 玖玖玖精品中文字幕| 性一交一乱一伧老太| 另类人妖一区二区av| 国产成人精彩在线视频九色| 国产极品在线播放| 国模大胆一区二区三区| 亚洲天堂第二页| 性久久久久久久久久久| 久久久国产精品入口麻豆| 91精品福利视频| 黄色免费视频大全| 超碰成人av| 亚洲综合久久久| 亚洲精品天堂成人片av在线播放| 日本综合在线| 国产精品三级电影| 视频一区二区在线观看| 精品久久av| 久久这里都是精品| 免费毛片一区二区三区久久久| 欧美熟妇另类久久久久久不卡 | 2019中文字幕在线观看| 久久久久久久久久免费视频 | 国产日韩三级| 亚洲成人av中文字幕| 亚洲熟妇一区二区| 999久久精品| 精品国产91洋老外米糕| 亚洲午夜久久久久久久久| 亚洲国产一区二区三区网站| 日韩一级视频免费观看在线| 色哟哟在线观看视频| 精品中文视频| 精品国产一区二区三区av性色| 美女伦理水蜜桃4| 激情亚洲另类图片区小说区| 亚洲精品国精品久久99热一| 久久偷拍免费视频| 国产欧美日韩在线一区二区| 一区二区三区 在线观看视| 四季av中文字幕| 97在线精品| 欧美成人亚洲成人日韩成人| 欧美日韩大片在线观看| 亚洲福利专区| 日韩av免费一区| 在线观看国产小视频| 国产美女精品一区二区三区| 99在线视频播放| 亚洲日本国产精品| 国产亚洲制服色| 亚洲一区免费看| 免费在线观看av电影| 精品久久香蕉国产线看观看亚洲 | 爽爽淫人综合网网站| 国产精品日韩电影| 亚洲AV午夜精品| 久久精品人人做人人爽97| 久久av秘一区二区三区| 欧美78videosex性欧美| 91久久精品网| 日韩大尺度视频| 真实原创一区二区影院| 日韩最新av在线| 日产欧产va高清| 麻豆成人免费电影| 国内精品国语自产拍在线观看| 国外av在线| 亚洲国产成人va在线观看天堂| 蜜臀av午夜一区二区三区 | 99久热re在线精品996热视频| 少妇人妻精品一区二区三区| 中文字幕精品一区二区精品绿巨人| 9l视频自拍9l视频自拍| 黑人巨大精品欧美一区二区桃花岛| 欧美日韩一区视频| 三区视频在线观看| 91精品国产自产在线丝袜啪| 中文国产亚洲喷潮| 在线观看亚洲欧美| 国产成人精品一区二区三区四区 | www.久久久精品| 国产厕拍一区| 久久精品视频网站| 极品国产91在线网站| 国产成人av电影| 一区二区三区在线视频看| 国产传媒在线观看| 欧美一级黄色片| 日本污视频网站| 先锋影音久久久| 97操在线视频| 欧美日韩xx| 在线国产亚洲欧美| a毛片毛片av永久免费| 激情婷婷欧美| 91丝袜美腿美女视频网站| 国产51人人成人人人人爽色哟哟| 亚洲成人一区在线| 肉丝美足丝袜一区二区三区四| 91亚洲国产成人久久精品| 国产精品福利片| 女人天堂在线| 欧美日韩中文字幕综合视频| 国模无码视频一区| 欧美激情在线| 97伦理在线四区| 免费大片黄在线| 欧美无砖砖区免费| 少妇av片在线观看| 日韩精品每日更新| 日本一区二区高清视频| 高清不卡av| 亚洲人午夜精品免费| 黄色在线观看国产| www一区二区| 欧美色图色综合| 亚洲小说图片| 日本aⅴ大伊香蕉精品视频| 无码国产精品一区二区免费16| 亚洲国产精品久久久久婷婷884| 无码人妻丰满熟妇区毛片蜜桃精品| 午夜欧美精品| 动漫3d精品一区二区三区| 欧美xxxx免费虐| 亚洲第一区在线| 日本三级一区二区| 久久久久久亚洲综合| 成人免费毛片播放| 日韩欧美综合| 69174成人网| 福利小视频在线| 亚洲激情在线视频| 中文字幕国产在线观看| 国产清纯白嫩初高生在线观看91 | 婷婷激情四射网| 国产精品亚洲视频| 可以在线看的av网站| 欧洲亚洲一区二区三区| 国产精品狠色婷| 麻豆视频免费在线观看| 日韩美一区二区三区| 99热只有这里有精品| 国产日韩欧美综合在线| 国产精品嫩草影院8vv8| 黑人一区二区| 欧美精品久久| 国精品产品一区| 欧美成人免费在线观看| 五月婷婷伊人网| 在线免费av一区| 国产一区二区三区在线视频观看| 丁香天五香天堂综合| 浮妇高潮喷白浆视频| 日本一二区不卡| 99理论电影网| 成人免费无遮挡| 精品国产一区二区三区四区在线观看| 午夜精品久久久久久久99热黄桃 | 亚洲老司机网| 午夜欧美大片免费观看| 成人综合影院| 精品国产伦一区二区三区观看方式 | 一级特黄性色生活片| 欧美一区网站| 欧美日本韩国一区二区三区| **国产精品| 欧美亚洲午夜视频在线观看| 麻豆网站在线看| 亚洲欧美国产日韩天堂区| 99热这里只有精品3| 色综合中文字幕| 成年人av电影| 欧美激情一区二区三区蜜桃视频| 国产又粗又猛又爽又黄| 日本中文在线一区| 男人添女人下部高潮视频在观看| 色综合咪咪久久网| 蜜桃狠狠色伊人亚洲综合网站| avtt久久| 国产精品久久久久久av福利| gogo高清午夜人体在线| 日韩一区二区福利| 精品三级久久久久久久电影聊斋| 日韩精品一区二区在线观看| 中日韩在线观看视频| 狠狠躁夜夜躁人人躁婷婷91 | 神马电影在线观看| 欧美成人猛片aaaaaaa| 中文字幕一区2区3区| 图片区小说区区亚洲影院| 中文字幕手机在线观看| 国产精品色哟哟| 色哟哟精品观看| 99久久久久久99| 欧美丰满熟妇bbb久久久| 激情综合亚洲精品| 亚洲免费看av| 日本伊人精品一区二区三区观看方式| 亚洲 高清 成人 动漫| 很黄很黄激情成人| 99视频精品全部免费看| 我不卡神马影院| 亚洲国产成人不卡| 日韩av密桃| 色涩成人影视在线播放| 国产精品三级| 欧美污视频久久久| 国产探花在线精品一区二区| 免费国产一区二区| 亚洲三级精品| 欧美日韩亚洲免费| 亚洲精品一级二级三级| 久久久久久草| 亚洲香蕉视频| 日韩在线电影一区| 欧美一区二区麻豆红桃视频| 日韩在线观看电影完整版高清免费| 亚洲欧美日本伦理| 秋霞毛片久久久久久久久| 亚洲精品进入| 亚洲国产高清国产精品| 久久资源中文字幕| 三年中文高清在线观看第6集 | 成人av在线播放观看| 欧美日本免费| 欧美午夜性视频| 国产欧美综合一区二区三区| 国内性生活视频| 日本特黄久久久高潮| 天天操,天天操| 精品中文字幕一区二区小辣椒| 亚洲欧美日本一区二区三区| 国模无码大尺度一区二区三区| 日韩a一级欧美一级| 国产福利精品导航| 亚洲av成人片色在线观看高潮| 92精品国产成人观看免费| 男女做爰猛烈刺激| 日韩毛片精品高清免费| 免费中文字幕在线观看| 精品成人av一区| 黄色一区二区视频| 欧美一区二区三区免费视频| 亚洲第一精品网站| 国产偷国产偷亚洲清高网站| av大全在线免费看| 欧美成人h版在线观看| av第一福利在线导航| 国产成人短视频| 精品欧美视频| 欧美精品一区三区在线观看| 日韩欧美网址| 无码人妻少妇伦在线电影| 日韩中文字幕亚洲一区二区va在线 | 五月天婷婷丁香网| 一级精品视频在线观看宜春院| 一区二区三区福利视频| 欧美久久免费观看| 性xxxxbbbb| 久久综合久久八八| 亚洲三级欧美| 91色视频在线观看| 亚洲瘦老头同性70tv| 天堂v在线视频| 亚洲在线日韩| 国产精品熟女一区二区不卡| 久久久精品蜜桃| 国产大学生自拍| 欧美性猛片aaaaaaa做受| 少妇又色又爽又黄的视频| 色av吧综合网| 625成人欧美午夜电影| 亚洲a∨日韩av高清在线观看| 亚洲激情77| 999一区二区三区| 麻豆精品久久久| 国产精品一级黄片| 一区二区三区免费在线观看| 中国女人一级一次看片| 亚洲精品国产欧美| 色呦呦在线视频| 国产一区二区色| 欧美日韩黑人| 欧美日韩性生活片| 国产99久久久久| 国产精品嫩草影院俄罗斯| 色婷婷av一区二区三区大白胸| 欧美一区二区黄片| 欧美成人免费观看| 电影中文字幕一区二区| 日本精品视频一区| 国产精品免费看| 国模无码视频一区| 一区二区三区成人在线视频| 一级黄色片视频| 中文字幕亚洲综合久久| 欧美片第一页| 久久久99爱| 99精品国产在热久久婷婷| 亚洲最大视频网| 一区二区三区蜜桃| 精品人妻一区二区三区蜜桃| www亚洲欧美| 日韩毛片在线| 日韩av一区二区三区美女毛片| 国产亚洲亚洲| 国产精品无码一区二区三区免费| 亚洲妇女屁股眼交7| 午夜精品一二三区| 欧美丰满少妇xxxx| 亚洲电影一区| 欧洲精品在线播放| 成人亚洲一区二区一| 国产一级一级片| 亚洲国产成人精品女人久久久| 国精一区二区三区| 国产一区二区免费电影| 亚洲黄色在线| 老鸭窝一区二区| 色呦呦网站一区| 国产美女性感在线观看懂色av | 91久久国产视频| 亚洲国产黄色片| 无码小电影在线观看网站免费| 蜜桃在线一区二区三区精品| 亚洲一区网站| 久久婷婷五月综合| 欧美伦理视频网站| 4438x成人网全国最大| 99在线国产| 亚洲中字黄色| 亚洲毛片亚洲毛片亚洲毛片| 欧美三级乱人伦电影| 九色porny丨首页在线| 亚洲一区二区三区毛片| 亚洲黄色毛片| 国产一二三四五区| 91精品国产综合久久久蜜臀图片| 1769免费视频在线观看| 精品国产一区二区三区四区vr| 欧美亚洲视频| 黄色激情小视频| 欧美v国产在线一区二区三区| 波多野结依一区| 任我爽在线视频精品一| 国产一区二区久久| 免费日韩一级片| www国产91| 国产suv精品一区二区四区视频| 国产日韩一区二区在线观看| 中文天堂在线一区| 日日躁夜夜躁白天躁晚上躁91| 国产成人av在线| 国产精品www.| 久久精品视频18| 日韩免费视频线观看| 性高爱久久久久久久久| 欧美 国产 精品| 久久五月婷婷丁香社区| 99久久久国产精品无码免费| 欧美一级高清免费| 综合精品久久|