zoukankan      html  css  js  c++  java
  • Springboot+mybatis+ibatis mysql链接

     1.application.properties 配置信息

    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/datebasename
    spring.datasource.username=root
    spring.datasource.password=password
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver

    2.添加pom.xml

    <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-jdbc</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.apache.ibatis</groupId>
                <artifactId>ibator</artifactId>
                <version>1.2.1.681</version>
            </dependency>
    
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis-spring</artifactId>
                <version>1.3.2</version>
            </dependency>
    
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.4.6</version>
            </dependency>
            <dependency>
                <groupId>com.zaxxer</groupId>
                <artifactId>HikariCP</artifactId>
                <version>3.2.0</version>
            </dependency>

    3.数据库连接

    import com.zaxxer.hikari.HikariDataSource;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.mybatis.spring.SqlSessionFactoryBean;
    import org.mybatis.spring.annotation.MapperScan;
    import org.springframework.beans.factory.annotation.Qualifier;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Primary;
    import org.springframework.stereotype.Component;
    
    import javax.sql.DataSource;
    
    //加载com.example.demo.mapper.test目录下的sql,并关联到当前到数据库
    @Component
    @MapperScan(value = "com.example.demo.mapper.test", sqlSessionFactoryRef = "sqlSessionFactoryTest")
    public class TestDateSource {
    
        //读取配置文件信息
        @Value("${spring.datasource.url}")
        private String url;
    
        @Value("${spring.datasource.username}")
        private String userName;
    
        @Value("${spring.datasource.password}")
        private String password;
    
    
        @Value("${spring.datasource.driver-class-name}")
        private String driverClassName;
    
    
        @Primary
        @Bean(name = "dateSourceTest")
        public DataSource dataSource() {
            return getDataSource(url, userName, password, driverClassName);
        }
    
        //实例化
        @Bean(name = "sqlSessionFactoryTest")
        public SqlSessionFactory sqlSessionFactory(@Qualifier("dateSourceTest") DataSource ds) throws Exception {
            SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
    
            sqlSessionFactoryBean.setDataSource(ds);
            return sqlSessionFactoryBean.getObject();
        }
    
        //这里用到了HikariDataSource连接池,定义一个连接池
        private HikariDataSource getDataSource(String url, String userName, String password, String driverClassName) {
            final HikariDataSource ds = new HikariDataSource();
            ds.setJdbcUrl(url);
            ds.setUsername(userName);
            ds.setPassword(password);
            ds.setDriverClassName(driverClassName);
            return ds;
        }
        
    }

    4.在com.example.demo.mapper.test目录下创建mapper接口,直接进行数据库的数据操作

    import org.apache.ibatis.annotations.*;
    import org.mapstruct.Mapper;
    
    import java.util.HashMap;
    import java.util.List;
    
    @Mapper
    public interface UserMapper {
    
        @Select("select *from user")
        List<HashMap> getUser();
    
        @Select("select *from user where username=#{userName}")
        List<HashMap> getuserName(@Param("userName") String userName);
    
      
    }

    5.在service调用对应的mapper接口

    @Service
    public class TestService {
    
        @Resource
        UserMapper userMapper;
    
        public JSONObject getUSer() {
    
            JSONObject mapOfColValues = new JSONObject();
    
            List<HashMap> order = userMapper.getUser();
            if (CollectionUtils.isNotEmpty(order)) {
                for (int i = 0; i < order.size(); i++) {
                    mapOfColValues.put("id", order.get(i).get("id"));
                    mapOfColValues.put("用户名", order.get(i).get("user_name"));
                    mapOfColValues.put("昵称", order.get(i).get("real_name"));
                    mapOfColValues.put("手机号", order.get(i).get("mobile"));
                    mapOfColValues.put("密码", order.get(i).get("password"));
                }
            } else {
                mapOfColValues.put("result", "没有数据");
            }
    
            return mapOfColValues;
    
        }
    }
  • 相关阅读:
    Spring Boot中报错org.apache.ibatis.binding.BindingException: Parameter 'XXXX' not found. Available parameters are [0, 1, param1, param2]的解决办法
    CockroachDB学习笔记——[译]Cgo的成本与复杂性
    CockroachDB学习笔记——[译]如何优化Go语言中的垃圾回收
    解决Java中的HttpServletResponse中文乱码问题
    Spring Boot自定义Mapper的SQL语句
    Spring Boot设置定时任务
    Java8中List的removeif()函数的使用示例
    skip list跳跃表实现
    五分钟理解一致性哈希算法(consistent hashing)
    github 更新fork分支
  • 原文地址:https://www.cnblogs.com/mkmoney/p/9599329.html
Copyright © 2011-2022 走看看