idea新建一个springboot+mybatis+mysql项目,以及遇到的问题分享。

 

   通过idea新建一个spring boot项目

1.第一步:把冰箱门打开(新建一个项目)

 

                               

2.第二步:选择spring Initializr 点击next(上面的Project sdk可以选择本地的)

3.第三步:填写项目的基本信息,命名。

4.选择需要导入的配置(如果这里没有忘记勾选,后面可以自己加上相应代码去在pom.xml中)

5.然后《一路向西》,next,设置项目名,在新窗口中打开。

6.打开后如下图,左上角是基本的文件路径,按ctrl+alt+s 打开设置,把maven换成本地安装的,如下下图,点击apply,点击ok,然后等右下角进度条走完后还会提示你 :maven需要重新导入,然后点击import changes。

下图是更换本地的maven:

7.编辑application.properties文件:

这里的数据库配置信息:需要填写你电脑本地的数据库信息,基本的用户名和密码。url后面的127.0.0.1和localhost是一样可以进行替换的,在自己的本地数据库中新建mytext数据库,在底下建表t_student,问号后面的是一些字符编码规范的设置,还有后面的class-name设置,com.mysql.jdbc.Driver 是 mysql-connector-java 5中的,com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6中的,这个就跟你的mysql-connector-java版本有关系,

#服务器端口
server.port=8091

#mysql数据库配置
spring.datasource.username=root
spring.datasource.password=admin
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mytext?roundRobinLoadBalance=true&characterEncoding=UTF-8&useSSL=true&serverTimezone=GMT
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

student表:

​
CREATE TABLE `t_student` (
   `id` int(11) NOT NULL,
   `name` varchar(20) DEFAULT NULL,
   `score` double DEFAULT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8

​

这时候启动项目,打开TestApplication.java主程序文件,点击运行。

我遇到过没有这个按钮的情况,就是idea的java环境没配置好,重新弄一下java环境就好了。

启动的时候如果报错如下:

这个就是端口被占用了,更改一下applicaton.properties文件中的server.port的值,更换别的端口号,再启动,我更换了8091端口。

8.接下来配置mysql的generatorConfig.xml自动生成实体和dao层接口和映射文件,在resources文件下新建generator文件下,在底下新建generatorConfig.xml文件内容如下:

generatorConfig.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>
    <!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包-->
    <classPathEntry  location="C:\mysql-connector-java-5.1.38.jar"/>
    <context id="DB2Tables"  targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="false"/>
        </commentGenerator>
        <!--数据库连接驱动类,URL,用户名、密码 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost/mytext?useSSL=true" userId="root" password="admin">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成(实体)模型的包名和位置-->
        <javaModelGenerator targetPackage="com.example.spring.test.entity" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成XML映射文件的包名和位置-->
        <sqlMapGenerator targetPackage="resources.mapper" targetProject="src/main">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!-- 生成DAO接口的包名和位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.spring.test.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
        <table tableName="t_student" domainObjectName="Tstudent" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
    </context>
</generatorConfiguration>

这块注意配置,配置成你自己的mysql-connection-java的包,你可以去maven下载的文件底下找,不知道maven下载的包的路径的,我用这个everything工具搜索一下,这两个底下都有对应的数据库驱动包,然后我放在c盘根目录下面了,接下来配置自己的数据库,配置自己需要生成的实体、dao层、xml文件对应的目录,然后设置自己需要映射的表名,和生成后的实体名称。

9.需要给pom.xml文件中添加代码:

<plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.5</version>
                <configuration>
           <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
                </configuration>
</plugin>

添加在

这个configurationFile设置成自己的generatorConfig.xml文件,然后然后点击Edit Configurations如下:

点击加号

选择Maven

然后在command line:中输入mybatis-generator:generate -e  。点击apply,点击ok。

然后点击运行按钮。

然后就生成了如下:

然后编辑controller层和service层文件,

service层:

TstudentService.java

package com.example.spring.test.services;

import com.example.spring.test.entity.Tstudent;
import com.example.spring.test.mapper.TstudentMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * @Description:
 * @Date: 2019/3/1
 * @Author
 * @Version 1.0
 */

@Service("tstudentService")
public class TstudentService {
    @Autowired
    private TstudentMapper tstudentMapper;

    /**
     * 通过主键查找实体
     * @param id
     * @return
     */
    public Tstudent getById(Integer id){
        return tstudentMapper.selectByPrimaryKey(id);
    }
}

TstudentController.java

package com.example.spring.test.controller;

import com.example.spring.test.entity.Tstudent;
import com.example.spring.test.services.TstudentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @Description:
 * @Date: 2019/3/1
 * @Author
 * @Version 1.0
 */

@Controller
@RequestMapping("/student")
public class TstudentController {
    @Autowired
    private TstudentService tstudentService;

    @RequestMapping("/getById")
    @ResponseBody
    public Tstudent getById(Integer id){
        return tstudentService.getById(id);
    }
}

目录文件位置:

然后在application.properties中添加:

#mybatis
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.example.spring.test.entity

如果项目启动提示mapper扫描不到,则给主类添加注解@MapperScan("com.example.spring.test.mapper")

然后重启项目,在浏览器中输入:http://localhost:8091/student/getById?id=1,结果如图:(数据库里需要添加数据)

 

这里就查出来主键为1的数据,这里一个spring项目已经搭建好了,谢谢阅读。写的不是很好,如果有地方不清楚的,可以评论,我及时的答复,如果您满意,可以点个赞哦,谢谢!

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值