Springboot集成MyBatis进行开发

打印 上一主题 下一主题

主题 896|帖子 896|积分 2688


  • 引入相关的依赖
  1. <dependency>
  2.     <groupId>junit</groupId>
  3.     <artifactId>junit</artifactId>
  4.     <version>4.11</version>
  5.     <scope>test</scope>
  6.   </dependency>
  7.   
  8.   <dependency>
  9.     <groupId>org.springframework.boot</groupId>
  10.     <artifactId>spring-boot-starter-web</artifactId>
  11.   </dependency>
  12.   
  13.   <dependency>
  14.     <groupId>mysql</groupId>
  15.     <artifactId>mysql-connector-java</artifactId>
  16.     <version>5.1.38</version>
  17.   </dependency>
  18.   
  19.   <dependency>
  20.     <groupId>org.mybatis.spring.boot</groupId>
  21.     <artifactId>mybatis-spring-boot-starter</artifactId>
  22.     <version>2.1.2</version>
  23.   </dependency>
  24.   
  25.   <dependency>
  26.     <groupId>com.alibaba</groupId>
  27.     <artifactId>druid</artifactId>
  28.     <version>1.1.12</version>
  29.   </dependency>
  30. </dependencies>
复制代码
  2.配置application.yml
  1. # spring整合MyBatis配置
  2. spring:
  3.   datasource:
  4.     type: com.alibaba.druid.pool.DruidDataSource  #连接所使用的数据源
  5.     driver-class-name: com.mysql.jdbc.Driver #所使用的驱动类
  6.     url: jdbc:mysql://locahost:3306/mybatis1?charsetEncoding=UTF-8
  7.     username: root
  8.     password: root
  9.    
  10. # 配置mapper文件所在的包
  11. mybatis:
  12.   mapper-locations: classpath:com/wd/mapper/*.xml
复制代码
       application.java
  1. //声明当前文件是一个springboot应用的入口类
  2. @SpringBootApplication    //修饰范围:用在类上 标识是springboot的入口类 这个注释只能出现一次
  3. @MapperScan("com.wd.dao") //用来指定Dao接口所在的位置
  4. public class Application {
  5.         public static void main(String[] args) {
  6.             //运行springboot的核心方式
  7.             SpringApplication.run(Application.class,args);
  8.         }
  9. }
复制代码
  3.建表    在数据库中创建相应的表  4.键实体    在.java文件中引入数据库表中的字段,创建无参,有参构造函数和getter、setter、toString方法。  5.开发dao mapper文件    Userdao.java:定义实现的方法
  1. public interface Userdao {
  2.     List<user> findAllUser();
  3.     user findUserById(@Param("id") int id);
  4. }
复制代码
  mapper文件:编写方法的实现
  1. <mapper namespace="com.wd.dao.Userdao">
  2.     <select id="findAllUser" resultType="com.wd.entity.user">
  3.         select * from t_user
  4.     </select>
  5.     <select id="findUserById" resultType="com.wd.entity.user">
  6.         select * from t_user where id=#{id}
  7.     </select>
  8. </mapper>
复制代码
  6.开发service接口 开发service实现    service接口:定义要实现的业务功能接口
  1. public interface UserService {
  2.     List<user> findAllUser();
  3.     user findUserById(int id);
  4. }
复制代码
  serviceImpl:service接口的实现类,实现接口
  1. @Service  //代表在工厂中创建有个service对象
  2. @Transactional //当前类是支持事务的
  3. public class UserServiceImpl implements UserService{
  4.     @Resource
  5.     private Userdao userDao;
  6.     @Override
  7.     public List<user> findAllUser() {
  8.         return userDao.findAllUser();
  9.     }
  10.     @Override
  11.     public user findUserById(int id) {
  12.         return userDao.findUserById(id);
  13.     }
  14. }
复制代码
  7.开发controller
  1. @RestController
  2. @RequestMapping("/user")
  3. public class usercontroller {
  4.     @Resource
  5.     private UserService userService;
  6.     @RequestMapping("/users")
  7.     public List<user>  findUsers(){
  8.         System.out.println("************");
  9.         return userService.findAllUser();
  10.     }
  11.     /**
  12.      * 查询单个用户方法
  13.      * @return:单个用户对象
  14.      * @PathVaribale:代表接收路径中所包含的参数
  15.      */
  16.     @RequestMapping("/users/{id}")
  17.     public user findUserById(@PathVariable("id") int id){
  18.         System.out.println("id="+ id);
  19.         return userService.findUserById(id);
  20.     }
  21. }
复制代码
  8.开发声明    1) @RestController:用在类中,声明当前是一个控制器,并且类种所有的方 法返回都是json,RestController=@Controller+@ResponseBody二者结合。    2)@RequestMapper("/user"):可以用在类上,也可以用在方法上;用在类上表示在当前类中所有的方法添加路径,用在方法上代表给当前方法添加路径。    3)以下代码表示:接收RequestMapping中所包含的参数 
  1. @RequestMapping("/users/{id}") public user findUserById(@PathVariable("id") int id){ ​ }
复制代码
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

我爱普洱茶

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表