1.pom.xml配置
druid:数据连接池
mybatis:数据库连接
mysql-connector-java
2.
在main文件下新建resources-mapping
在main文件下新建resources-application.properties(配置数据源)
server.port=8090
mybatis.mapper-locations=classpath:mapping/*.xml
spring.datasource.name=miaosha
spring.datasource.url=jdbc:mysql://localhost/miaosha
spring.datasource.username=root
spring.datasource.password=***
#使用druid数据源
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driverClassName=com.mysql.jdbc.Driver
在main文件下新建resources-mybatis-generator.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<context id="DB2Tables" targetRuntime="MyBatis3">
<!--数据库连接-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost/miaosha"
userId="root"
password="***">
</jdbcConnection>
<!--生成DataObject类存放位置-->
<javaModelGenerator targetPackage="com.miaoshaproject.dataobject" targetProject="src/main/java">
<!--是否对model添加构造函数-->
<property name="constructorBased" value="false"/>
<!--是否允许子包-->
<property name="enableSubPackages" value="true"/>
<!--建立的model对象是否不可变,也就是生成的model没有setter方法-->
<property name="immutable" value="false"/>
<property name="trimStrings" value="false"/>
</javaModelGenerator>
<!--生成映射文件存放位置-->
<sqlMapGenerator targetPackage="mapping" targetProject="src/main/resources">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!--生成Dao类存放位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.miaoshaproject.dao" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<!--生成与表对应的类名-->
<table tableName="user_info" domainObjectName="UserDO"></table>
<table tableName="user_password" domainObjectName="UserPasswordDO" ></table>
</context>
</generatorConfiguration>
运行mybatis-generator.xml文件生成dao接口文件,dataobject文件以及生成的xml映射文件在mapping中。
3.
1.dao内的接口是为了取数据使用,dataobject只是对数据库的一个映射。
2.分层思想
a、controller(控制层)@RestController
请求入口以及页面显示
b、dao(数据库接口)@Mapper @Repository
c、service(业务层)@Service
业务处理逻辑
d、utils(工具层)
@RequestMapping(请求映射)