1.創(chuàng)建 springboot+mybatis 應(yīng)用
2.pom 文件的編寫,需要配置相關(guān)數(shù)據(jù)庫(kù)連接
3.配置 mybatis-config 文件
4.配置 datasource?
@Configuration// 配置 mybatis mapper 的掃描路徑@MapperScan("com.qinmei.demo.dao")public class DataSourceConfiguration { @Value("${jdbc.driver}") private String jdbcDriver; @Value("${jdbc.url}") private String jdbcUrl; @Value("${jdbc.username}") private String jdbcPassword; @Value("${jdbc.password}") private String jdbcUsername; @Bean(name = "dataSource") public ComboPooledDataSource createDataSource() throws PropertyVetoException { // 數(shù)據(jù)庫(kù)連接池的配置 ComboPooledDataSource dataSource = new ComboPooledDataSource(); dataSource.setDriverClass(jdbcDriver); dataSource.setJdbcUrl(jdbcUrl); dataSource.setUser(jdbcUsername); dataSource.setPassword(jdbcPassword); // 關(guān)閉連接后不自動(dòng) commit提交 dataSource.setAutoCommitOnClose(false); return dataSource; }}
5.配置 sessionFactory
@Configurationpublic class SessionFactoryConfiguration { // mybatis-config.xml 配置文件的路徑 @Value("${mybatis_config_file}") private String mybatisConfigFilePath; // mybatis mapper 文件所在路徑 @Value("${mapper_path}") private String mapperPath; // 實(shí)體類所在的 package @Value("${entity_package}") private String entityPackage; @Autowired? //按照名稱加載 datasource @Qualifier("dataSource") private DataSource dataSource; @Bean(name = "sqlSessionFactory") public SqlSessionFactoryBean createSqlSessionFactoryBean() throws IOException { // 創(chuàng)建 sqlSession 工廠 SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setConfigLocation(new ClassPathResource(mybatisConfigFilePath)); PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); // mapper 文件存放的位置 String packageSearchPath = PathMatchingResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + mapperPath; // 設(shè)置屬性 sqlSessionFactoryBean.setMapperLocations(resolver.getResources(packageSearchPath)); sqlSessionFactoryBean.setDataSource(dataSource); sqlSessionFactoryBean.setTypeAliasesPackage(entityPackage); return sqlSessionFactoryBean; }}
6.配置文件
server.port=80server.context-path=/demo# 數(shù)據(jù)庫(kù)連接jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/demojdbc.username=rootjdbc.password=root#Mybatismybatis_config_file=mybatis-config.xmlmapper_path=/mapper/**.xmlentity_package=com.qinmei.demo.entity
7.dao層編寫接口
8.dao 層 mapper 編寫
9.dao 層測(cè)試
測(cè)試自動(dòng)注入時(shí)會(huì)報(bào)錯(cuò)计贰,找不到實(shí)例钦睡,修改 idea 配置即可
10.service 層事物配置
11.service 層編寫
12.conroller 層實(shí)現(xiàn)
13.統(tǒng)一異常處理
14.自定義異常類(擴(kuò)展)
a.編寫自定義異常類
b.異常處理進(jìn)行判斷
c.表單驗(yàn)證? ?
import javax.persistence.Entity;?
import javax.persistence.GeneratedValue;?
import javax.persistence.Id;?
import javax.validation.constraints.Min;
15.AOP攔截器
16.配置文件的 yml 格式
github 地址:https://github.com/shihengfei/springboot.git