搭建Spring boot+mybatis框架
开发环境说明:idea2017.2.6+jdk8+maven3.5+绿色版mysql+绿色版mysql客户端(或者用Navicat for MySQL)
1、用Intellij idea工具创建spring boot;
可以根据自己的喜好修改Group和Artifact中的内容,
然后点击Next下一步
根据自己的意愿选择,如果不勾选MySQL、jdbc、mybatis;在后面可以自己添加配置文件
然后点击下一步-->点击finish即可。
2、点击直接生成pow.xml文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.springbootkj</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>demo</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.2.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins>
</build> </project>
3、一次编写PO、Mapper、cotroller包下的java文件
MemberPO.java文件
MembersMapper接口
package com.example.demo.Mapper; import com.example.demo.PO.MembersPO; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository; @Repository public interface MembersMapper { @Select("SELECT id,openid,nickname,sex,prvoince,city,country,headimgurl,unionid,dengji,totime,priceID,create_time\n" + "FROM members\n" + "WHERE openid = #{openid}") MembersPO selectMembersinfoByOpenid(@Param("openid") String openid); }
MembersController.java文件
package com.springbootkj.demo.controller; import com.springbootkj.demo.PO.MembersPO; import com.springbootkj.demo.mapper.MembersMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/showResult") public class MembersController { @Autowired private MembersMapper membersMapper; @RequestMapping(value = "/show", method = {RequestMethod.GET,RequestMethod.POST}) public MembersPO showResult(String openid){ return membersMapper.selectMembersInfoByOpenid(openid); } }
4、看一下application.properties的配置
#设置Tomcat端口 ,默认8080 server.port=8080 #设置Tomcat编码 server.tomcat.uri-encoding=UTF-8 #设置视图解析器路径 spring.mvc.view.prefix=/WEB-INF/views/ #设置视图解析器后缀 spring.mvc.view.suffix=.jsp
spring.datasource.url=jdbc:mysql://localhost:3306/testTable?useUnicode=true&characterEncoding=UTF-8 spring.datasource.username=root spring.datasource.password=mysql spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#页面的热加载 spring.thymeleaf.cache = false
5、DataSourceConfig文件
package com.springbootkj.demo.config; import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.sql.DataSource; @Configuration @MapperScan(basePackages = "com.springbootkj.demo.mapper.MembersMapper", sqlSessionFactoryRef = "sqlSessionFactory") public class DataSourceConfig { @Bean @ConfigurationProperties(prefix = "spring.datasource.hikari") public DataSource initDataSource(){ return DataSourceBuilder.create().build(); } @Bean public SqlSessionFactory sqlSessionFactory() throws Exception { SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean(); factoryBean.setDataSource(initDataSource()); return factoryBean.getObject(); } public SqlSessionTemplate sqlSessionTemplate() throws Exception { // 使用上面配置的Factory SqlSessionTemplate sessionTemplate = new SqlSessionTemplate(sqlSessionFactory()); return sessionTemplate; } }
6、MySQL数据库的配置
8、接口访问:http://localhost:8080/showResult/show?openid=oFNc6s8Z7l0nBgrZQ
id 1
openid oFNc6s8Z7l0nBgrZQ
nickname .OLDZ%87S.sex 1
prvoince 辽宁
city 沈阳
country 中国
headimgurl httpss://wx.qlogo.cn/mmopen/PiajxOKDQffgHt5XiaZQMZqIAz/0
privilege 辽宁
unionid null
dengji 0
totime 0
priceID 8000
create_time 2018-06-12
到此Spring boot的框架的搭建基本完成。