IT评测·应用市场-qidao123.com技术社区
标题:
Springboot集成MyBatis进行开发
[打印本页]
作者:
我爱普洱茶
时间:
2023-4-12 16:20
标题:
Springboot集成MyBatis进行开发
引入相关的依赖
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.12</version>
</dependency>
</dependencies>
复制代码
2.配置application.yml
# spring整合MyBatis配置
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource #连接所使用的数据源
driver-class-name: com.mysql.jdbc.Driver #所使用的驱动类
url: jdbc:mysql://locahost:3306/mybatis1?charsetEncoding=UTF-8
username: root
password: root
# 配置mapper文件所在的包
mybatis:
mapper-locations: classpath:com/wd/mapper/*.xml
复制代码
application.java
//声明当前文件是一个springboot应用的入口类
@SpringBootApplication //修饰范围:用在类上 标识是springboot的入口类 这个注释只能出现一次
@MapperScan("com.wd.dao") //用来指定Dao接口所在的位置
public class Application {
public static void main(String[] args) {
//运行springboot的核心方式
SpringApplication.run(Application.class,args);
}
}
复制代码
3.建表 在数据库中创建相应的表 4.键实体 在.java文件中引入数据库表中的字段,创建无参,有参构造函数和getter、setter、toString方法。 5.开发dao mapper文件 Userdao.java:定义实现的方法
public interface Userdao {
List<user> findAllUser();
user findUserById(@Param("id") int id);
}
复制代码
mapper文件:编写方法的实现
<mapper namespace="com.wd.dao.Userdao">
<select id="findAllUser" resultType="com.wd.entity.user">
select * from t_user
</select>
<select id="findUserById" resultType="com.wd.entity.user">
select * from t_user where id=#{id}
</select>
</mapper>
复制代码
6.开发service接口 开发service实现 service接口:定义要实现的业务功能接口
public interface UserService {
List<user> findAllUser();
user findUserById(int id);
}
复制代码
serviceImpl:service接口的实现类,实现接口
@Service //代表在工厂中创建有个service对象
@Transactional //当前类是支持事务的
public class UserServiceImpl implements UserService{
@Resource
private Userdao userDao;
@Override
public List<user> findAllUser() {
return userDao.findAllUser();
}
@Override
public user findUserById(int id) {
return userDao.findUserById(id);
}
}
复制代码
7.开发controller
@RestController
@RequestMapping("/user")
public class usercontroller {
@Resource
private UserService userService;
@RequestMapping("/users")
public List<user> findUsers(){
System.out.println("************");
return userService.findAllUser();
}
/**
* 查询单个用户方法
* @return:单个用户对象
* @PathVaribale:代表接收路径中所包含的参数
*/
@RequestMapping("/users/{id}")
public user findUserById(@PathVariable("id") int id){
System.out.println("id="+ id);
return userService.findUserById(id);
}
}
复制代码
8.开发声明 1) @RestController:用在类中,声明当前是一个控制器,并且类种所有的方 法返回都是json,RestController=@Controller+@ResponseBody二者结合。 2)@RequestMapper("/user"):可以用在类上,也可以用在方法上;用在类上表示在当前类中所有的方法添加路径,用在方法上代表给当前方法添加路径。 3)以下代码表示:接收RequestMapping中所包含的参数
@RequestMapping("/users/{id}") public user findUserById(@PathVariable("id") int id){ }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/)
Powered by Discuz! X3.4