SpringBoot持久层技术
2024-08-24 13:17:01
一、Springboot整合mybatis
maven中添加对数据库与mybatis的依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
</dependency>
</dependencies>
添加application.properties关于mybatis的配置
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dbName
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
mybatis.type-aliases-package=io.guangsoft.pojo
mapper的xml文件所在目录需要在springboot启动类中配置扫描
1 @SpringBootApplication
2 @MapperScan("io.guangsoft.mapper")
数据库表设计
create table users(
id int(11) not null auto_increment,
name varchar(25) default null,
age int default null,
primary key (id)
)engine=InnoDB default charset=utf8;
pojo
public class User {
private Integer id;
private String name;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
mapper
public interface UserMapper {
void insertUser(User user);
List<User> selectUserAll();
}
<mapper namespace="io.guangsoft.mapper.UserMapper">
<insert id="insertUser" parameterType="user">
insert into user(name, age) values (#{name}, #{age})
</insert>
<select id="selectUserAll" resultType="user">
select id, name, age from user
</select>
</mapper>
service
@Service
@Transactional
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public void addUser(User user) {
this.userMapper.insertUser(user);
}
}
controller
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/{page}")
public String showPage(String page) {
return page;
}
@RequestMapping("/addUser")
public String addUser(User user) {
this.userService.addUser(user);
return "ok";
}
}
最新文章
- Vuex2.0+Vue2.0构建备忘录应用实践
- 初识Angular
- Mybatis出现:无效的列类型: 1111 错误
- 使用RockMongo管理MongoDB
- 第46条:for-each循环优先于传统的for循环
- android离线下载的相关知识
- BootStrap 智能表单系列 八 表单配置json详解
- ZooKeeper概述
- Ubuntu配置Django+ Apache2+ mysql
- DataTable转list时 可空类型的转换问题
- 不使用Visual Studio开发ASP.NET MVC应用(上篇)
- tornado--初识tornado
- mysql 开发进阶篇系列 8 锁问题 (共享锁与排它锁演示)
- MFC中添加了一个dialog,并创建了相应的类,初始化函数没有怎么办?
- 使用tf.print()打印tensor内容
- python-命令模式
- itchat+pillow实现微信好友头像爬取和拼接
- 0000python中文乱码解决方案
- MySQL更改了my.ini的#Path to the database root后,数据还写到原来的文件夹
- mysql中字符串1.1/1.2/1.2.2/1.2.5排序问题