mybatis-plus開始啦
阿新 • • 發佈:2021-08-27
這個東東能夠節省大量時間,注意不要匯入mybatis的依賴,容易衝突
1、配置:
資料庫驅動:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
mybatis-plus:如果不成功,可以使用修改版本號,如3.4.1
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>mybatis-plus-latest-version</version>
</dependency>
也可以使用:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>
lombok也加上,非常方便:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
2、連線資料庫(application.yml):mysql8以上,url需要新增 serverTimezone
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/zsq?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
driver-class-name: com.mysql.cj.jdbc.Driver
#配置日誌,方便檢視;線上的話注意要去掉,因為會有消耗:
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
3、寫程式碼:
實體User: @TableId 是id的自動生成celue,預設為雪花演算法
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
@TableId
private Long id;
private String name;
private Integer age;
}
Dao層:繼承 BaseMapper,添加註解@Repository
@Repository //代表持久層
public interface UserDao extends BaseMapper<User> {
}
啟動類:
//這裡需要掃描dao資料夾下的dao檔案,根據實際包走
@MapperScan("com.zsq.studymybatisplus.dao")
4、配置完成,寫測試類:
這裡要注意,資料庫中建表的時候,String型別的欄位,字符集要設定utf8,否則會報錯:Incorrect string value: '\xE5\xBC\xA0\xE4\xB8\x89' for column 'name' at row 1
@Test
void test(){
//新增
User user = new User();
user.setName("張三");
user.setAge(3);
userDao.insert(user);
//修改
List<User> list = userDao.selectList(null);
System.out.println(list);
}