1、新建project
2、选择Spring Initializr,next
3、设置项目名
4、选择依赖,右侧的要全选,否则可能会引发错误
5、finish,等待依赖下载完成
6、pom.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.wquanxiu</groupId> <artifactId>carappserver</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>carappserver</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.1.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</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--引入Web模块--> <!-- 引入Web模块 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--引入swagger相关依赖--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.4.0</version> </dependency> <!--mybatis相关依赖--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!--session相关--> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> <!-- spring aop支持及AspectJ依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <!--json--> <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!--打包插件--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <useUniqueVersions>false</useUniqueVersions> <classpathPrefix>lib/</classpathPrefix> <mainClass>com.wquanxiu.carappserver.CarappserverApplication</mainClass> </manifest> </archive> </configuration> </plugin> </plugins> </build> </project>
7、配置文件application.properties
server.port=8095 #配置相关连接池和端口信息 spring.datasource.url=jdbc:mysql://localhost:3306/server?useSSL=false spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.max-active=20 spring.datasource.max-idle=8 spring.datasource.min-idle=8 spring.datasource.inittial-size=10 #加载mapper映射文件 mybatis.type-aliases-package=com.wquanxiu.carappserver.Entity mybatis.mapper-locations=classpath:/mapper/**.xml
8、业务分层:Controller控制层,Dao数据访问层,Entity实体层,Service服务层
9、Controller层代码,UserInfoController.java
package com.wquanxiu.carappserver.Controller; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import com.wquanxiu.carappserver.Service.UserInfoService; /** * Created by wangquanxiu at 2018/4/11 15:28 */ @RestController @RequestMapping("/userinfo") @ResponseBody public class UserInfoController { @Autowired UserInfoService userInfoService; @ApiOperation(value = "新增记录",httpMethod = "POST") @RequestMapping(value = "/addrecord/{username}/{password}") public int addRecord(@PathVariable("username") String username, @PathVariable("password") String password){ System.out.println("controller--request:user-register>>"+username+" "+password); return userInfoService.addRecord(username,password); } }
10、Dao层,UserInfoDao.java
package com.wquanxiu.carappserver.Dao; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; /** * Created by wangquanxiu at 2018/4/11 15:28 */ @Repository public interface UserInfoDao { //新增记录返回自增id int addRecord(@Param("username") String username, @Param("password") String password); }
11、添加Dao层的映射文件UserInfoDao.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.wquanxiu.carappserver.Dao.UserInfoDao"> <insert id="addRecord" parameterType="com.wquanxiu.carappserver.Entity.UserInfo" useGeneratedKeys="true"> INSERT INTO userinfo (username,password) VALUES (#{username}, #{password}) </insert> </mapper>
12、Entity层,UserInfo.java
package com.wquanxiu.carappserver.Entity; /** * Created by wangquanxiu at 2018/4/11 15:29 */ public class UserInfo { private int id; private String username; private String password; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
13、Service层,UserInfoService.java
package com.wquanxiu.carappserver.Service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.wquanxiu.carappserver.Dao.UserInfoDao; /** * Created by wangquanxiu at 2018/4/11 15:29 */ @Service public class UserInfoService { @Autowired UserInfoDao userInfoDao; //新增记录返回自增id public int addRecord(String username, String password){ return userInfoDao.addRecord(username,password); } }
14、Demo4Application.java应用入口
package com.wquanxiu.carappserver; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.EnableAspectJAutoProxy; import springfox.documentation.swagger2.annotations.EnableSwagger2; @SpringBootApplication @EnableSwagger2 @EnableAspectJAutoProxy @MapperScan("com.wquanxiu.carappserver.Dao")//指明映射文件的位置 public class CarappserverApplication { public static void main(String[] args) { SpringApplication.run(CarappserverApplication.class, args); } }
15、运行
16、访问http://localhost:8095/swagger-ui.html , 8095是端口号,在application.properties设置。
17、测试
查看本地数据库,记录已经插入