SpringBoot持久层技术

一、Springboot整合mybatis

maven中添加对数据库与mybatis的依赖

1 1 <dependencies> 2 2 <dependency> 3 3 <groupId>org.springframework.boot</groupId> 4 4 <artifactId>spring-boot-starter-web</artifactId> 5 5 </dependency> 6 6 <dependency> 7 7 <groupId>org.mybatis.spring.boot</groupId> 8 8 <artifactId>mybatis-spring-boot-starter</artifactId> 9 9 </dependency> 1010 <dependency> 1111 <groupId>mysql</groupId> 1212 <artifactId>mysql-connector-java</artifactId> 1313 </dependency> 1414 <dependency> 1515 <groupId>com.alibaba</groupId> 1616 <artifactId>druid</artifactId> 1717 </dependency> 1818 </dependencies>

添加application.properties关于mybatis的配置

11 spring.datasource.driverClassName=com.mysql.jdbc.Driver 22 spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dbName 33 spring.datasource.username=root 44 spring.datasource.password=root 55 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource 66 mybatis.type-aliases-package=io.guangsoft.pojo

mapper的xml文件所在目录需要在springboot启动类中配置扫描

11 @SpringBootApplication 22 @MapperScan("io.guangsoft.mapper")

数据库表设计

11 create table users( 22 id int(11) not null auto_increment, 33 name varchar(25) default null, 44 age int default null, 55 primary key (id) 66 )engine=InnoDB default charset=utf8;

pojo

1 1 public class User { 2 2 private Integer id; 3 3 private String name; 4 4 private Integer age; 5 5 public Integer getId() { 6 6 return id; 7 7 } 8 8 public void setId(Integer id) { 9 9 this.id = id; 1010 } 1111 public String getName() { 1212 return name; 1313 } 1414 public void setName(String name) { 1515 this.name = name; 1616 } 1717 public Integer getAge() { 1818 return age; 1919 } 2020 public void setAge(Integer age) { 2121 this.age = age; 2222 } 2323 }

mapper

11 public interface UserMapper { 22 void insertUser(User user); 33 List<User> selectUserAll(); 44 } 5 61 <mapper namespace="io.guangsoft.mapper.UserMapper"> 72 <insert id="insertUser" parameterType="user"> 83 insert into user(name, age) values (#{name}, #{age}) 94 </insert> 105 <select id="selectUserAll" resultType="user"> 116 select id, name, age from user 127 </select> 138 </mapper>

service

1 1 @Service 2 2 @Transactional 3 3 public class UserServiceImpl implements UserService { 4 4 @Autowired 5 5 private UserMapper userMapper; 6 6 @Override 7 7 public void addUser(User user) { 8 8 this.userMapper.insertUser(user); 9 9 } 1010 }

controller

1 1 @Controller 2 2 @RequestMapping("/user") 3 3 public class UserController { 4 4 @Autowired 5 5 private UserService userService; 6 6 @RequestMapping("/{page}") 7 7 public String showPage(String page) { 8 8 return page; 9 9 } 1010 @RequestMapping("/addUser") 1111 public String addUser(User user) { 1212 this.userService.addUser(user); 1313 return "ok"; 1414 } 1515 }
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )