目前流行的一些云产品,比如云函数,serverless使用时,使用java编写代码时,如果使用不了spring框架,只能单纯使用相关框架java api来实现访问数据mysql,redis,mq.....
1.项目pom文件
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.9</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.8</version>
</dependency>
</dependencies>
2.项目结构
3.代码
public class MybatisMain {
public static void main(String[] args) throws Exception {
TAccountUserMapper accountUserMapper = getMapper(TAccountUserMapper.class);
TAccountUser accountUser = accountUserMapper.selectByPrimaryKey(1);
}
//你也可以使用其它数据源,比较使用shardingJdbc框架的数据源...
private static DataSource getDataSource() throws Exception {
HashMap<String, String> dataSourceMap = new HashMap<>(8);
DruidDataSource dataSource = new DruidDataSource();
dataSource.setUrl("jdbc:mysql://xxxx:3306/db?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&rewriteBatchedStatements=true&useSSL=false&serverTimezone=Asia/Shanghai");
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUsername("dbUserName");
dataSource.setPassword("password");
//其它参数
dataSource.init();
return dataSource;
}
private static SqlSessionFactory getSqlSessionFactory() throws Exception {
//mybatis java api 获取sqlSessionFactory来操作sqlSession 参数mybatis官网
JdbcTransactionFactory jdbcTransactionFactory = new JdbcTransactionFactory();
Environment environment = new Environment("development",jdbcTransactionFactory,getDataSource());
Configuration configuration = new Configuration();
//设置mapper包路径
configuration.addMappers("com.mybatis.java.api.mapper");
configuration.setEnvironment(environment);
return new SqlSessionFactoryBuilder().build(configuration);
}
private static <T> T getMapper(Class<T> clazz) throws Exception {
SqlSession sqlSession = getSqlSessionFactory().openSession(true);
return sqlSession.getMapper(clazz);
}
}