



检查maven插件

http://maven.apache.org/download.cgi
设置自己的maven地址

@RestController
表示接受前台请求
首次未设置pom中的 mybatis可以先注释其中的依赖部分
然后 import changes 即可

访问8080/hello 即可
package com.hzp.demo;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class hello {
@RequestMapping(value="/hello",method=RequestMethod.GET)
public String hello(){
return "rrr";
}
}
![]()
修改端口号
server.context-path=/demo必须加/demo/hello才能访问

使用sequel pro
CREATE TABLE tb_area (
area_id int(2) NOT NULL auto_increment,
area_name varchar(200) NOT NULL,
priority int(2) NOT NULL DEFAULT'0',
create_time datetime DEFAULT NULL,
last_edit_time datetime DEFAULT NULL,
PRIMARY KEY(area_id),
UNIQUE KEY UK_AREA(area_name)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

option+enter

自动提示倒入类

control+ N


为所有成员变量增加 getter setter 方法
现在取消pom中mybatis的注释
加入
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
因为之前设置了mysql表
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
加入多线程处理 线程池

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 全局属性 -->
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="useColumnLabel" value="true"/>
<setting name="useGeneratedKeys" value="true"/>
</settings>
</configuration>

option+command 或者 option +回车 设置红字
设置config.dao的包
设置链接数据库的代码
package com.hzp.demo.config.dao;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.springframework.context.annotation.Bean;
import java.beans.PropertyVetoException;
public class DateSourceConfiguration {
private String jdbcDriver;
private String jdbcUrl;
private String jdbcUsername;
private String jdbcPassword;
@Bean(name = "dataSource")
public ComboPooledDataSource createDateSource() throws PropertyVetoException {
ComboPooledDataSource dataSource=new ComboPooledDataSource();
dataSource.setDriverClass(jdbcDriver);
dataSource.setJdbcUrl(jdbcUrl);
dataSource.setUser(jdbcUsername);
dataSource.setPassword(jdbcPassword);
//关闭链接后不自动提交
dataSource.setAutoCommitOnClose(false);
return dataSource;
}
}
写入
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/dbName?useUnicode=true&characterEncoding=utf8&useSSL=false jdbc.username=root jdbc.password=root
同样在datasourceconfig引入变量 在前面加入 @Value("jdbc.$")
@Configuration@Value("jdbc.driver") private String jdbcDriver; @Value("jdbc.url") private String jdbcUrl; @Value("jdbc.username") private String jdbcUsername; @Value("jdbc.password") private String jdbcPassword;

/usr/local/opt/mysql@5.7/bin/mysql.server start
启动完成后,打开终端
alias mysql=/usr/local/mysql/bin/mysql
alias mysqladmin=/usr/local/mysql/bin/mysqladmin
mysqladmin -u root -p password root123

package com.hzp.demo.config.dao;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.beans.factory.annotation.Autowired;
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.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
import java.io.IOException;
@Configuration
public class SessionFactoryConfiguration {
@Value("${mybatis_config_file}")
private String mybatisConfigFilePath;
@Value("${mapperPath}")
private String mapperPath;
@Value("${entity_package}")
private String entityPackage;
@Autowired
@Qualifier("dataSource")
private DataSource dataSource;
@Bean("name=sqlSessionFactory")
public SqlSessionFactoryBean createSqlSessionFactoryBean() throws IOException {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setConfigLocation(new ClassPathResource(mybatisConfigFilePath));
PathMatchingResourcePatternResolver resolver= new PathMatchingResourcePatternResolver();
String packageSearchPath=PathMatchingResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + mapperPath;
sqlSessionFactoryBean.setMapperLocations(resolver.getResources(packageSearchPath));
sqlSessionFactoryBean.setDataSource(dataSource);
sqlSessionFactoryBean.setTypeAliasesPackage(entityPackage);
return sqlSessionFactoryBean;
}
}

#mybatis mybatis_config_file=mybatis-config.xml mapper_path=/mapper/**.xml entity_package=com.hzp.demo.entity

package com.hzp.demo.dao;
import com.hzp.demo.entity.Area;
import java.util.List;
public interface AreaDao {
List<Area> queryArea();
Area queryAreaById(int areaId);
int insertArea(Area area);
int updateArea(Area area);
int deleteArea(Area areaId);
}
本文详细介绍了如何在Spring Boot项目中集成MyBatis框架,包括配置数据源、设置MyBatis全局属性、创建SQL会话工厂、定义DAO接口及实现CRUD操作等关键步骤。
1898

被折叠的 条评论
为什么被折叠?



