您的位置:首页 > 编程语言 > Java开发

Springboot+MyBatis - 代码跑起来

2018-01-27 00:00 253 查看

本文作者


27
1-2018
zho007博客:https://www.jianshu.com/u/e9cb5fd3aaa8声明:本文由作者 zho007 授权发布,未经原作者允许请勿转载
 看到上面蓝色字了吗,点下吧


这里使用Idea创建项目

需求

使用Springboot+mybatis+druid连接数据库查询一张表的所有数据数据库表结构

创建项目

先看下最终的目录结构

使用IDea创建项目查看pom.xml文件中有没有添加这三个依赖


使用Mybatis逆向工程生成如下文件


修改mapper.xml文件吧导入对应的bean对象包

如下截图如下例子:


配置Springboot的yml配置文件

数据源datasource

配置Druid

@Configuration
public class DruidConfig {
   @Autowired
   private Environment env;
   //destroy-method="close"的作用是当数据库连接不使用的时候,就把该连接重新放到数据池中,方便下次使用调用.
   @Bean(destroyMethod = "close")
   public DataSource dataSource() {
       DruidDataSource dataSource = new DruidDataSource();
       dataSource.setUrl(env.getProperty("spring.datasource.url"));
       dataSource.setUsername(env.getProperty("spring.datasource.username"));//用户名
       dataSource.setPassword(env.getProperty("spring.datasource.password"));//密码
       dataSource.setDriverClassName(env.getProperty("spring.datasource.driver-class-name"));
       dataSource.setInitialSize(2);//初始化时建立物理连接的个数
       dataSource.setMaxActive(20);//最大连接池数量
       dataSource.setMinIdle(0);//最小连接池数量
       dataSource.setMaxWait(60000);//获取连接时最大等待时间,单位毫秒。
       dataSource.setValidationQuery("SELECT 1");//用来检测连接是否有效的sql
       dataSource.setTestOnBorrow(false);//申请连接时执行validationQuery检测连接是否有效
       dataSource.setTestWhileIdle(true);//建议配置为true,不影响性能,并且保证安全性。
       dataSource.setPoolPreparedStatements(false);//是否缓存preparedStatement,也就是PSCache
       return dataSource;
   }
}
mybatis基础配置


配置Springboot主入口扫描mapper

当然你可以每一个mapper都加一个注解@mapper.这里我是把所有mapper放在一个包下面。直接扫描整个包里面的所有mapper

编写测试代码

service代码编写

@Service
public class TestServiceImpl implements TestService {
   @Autowired
   TbConfigInfoMapper mapper;//注入mapper
   @Override
   public List<TbConfigInfo> getBanner() {
       //查询所有
       List<TbConfigInfo> list = mapper.selectByExample(new TbConfigInfoExample());
       return list;
   }
}
controller代码编写

@Controller
public class TestController {
   @Autowired
   TestService testService;
   @RequestMapping("/banner")
   @ResponseBody
   public Map<String, Object> test() {
       Map<String, Object> map = new HashMap<>();
       map.put("message", 100);
       List<TbConfigInfo> banner = testService.getBanner();
       map.put("data", banner);
       return map;
   }
}

运行测试

我们将项目跑起来 输入 localhost:8080/banner 得到如下结果 ,我们的配置就算成功了



刘某人程序员

个人微信:Android_LiuGuiLin
新浪微博:@刘某人程序员


看看我的分享
  长按二维码关注



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: