注明:使用的工具是IDEA 2017.3;Jdk为1.8版本。
首先第一步是要创建一个springBoot项目,用IDEA自带的生成器spring initializr ;看下图
(提示:这里在勾选完web后还要选中SQL在勾选其中的 MySQL,JDBC, Mybatis 然后点击下一步)
到这之后呢一个springboot项目就创建好了,然后我们第一要做的就是配置,先修改application.properties文件,后缀改为图下
所示;然后写代码spring.datasource.username password url driver-class-name;然后再配置js(其中prefix指的是jsp页面所在的目录下--前缀,suffix值得是后缀),在配置mybatis,之后再pom.xml文件里添加这些依赖
<dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency>
<!-- jsp页面使用的jstl支持--> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.0</version> <scope>provided</scope> </dependency> <!-- json数据 使springMVC可以返回json值 ,视情况添加--> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.30</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.1</version> </dependency> <!--文件 上传--> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</version> </dependency>
第二步,我们要使springboot项目支持jsp页面,其实不难看出springboot项目是没有webapp目录的;
第一:在项目的main目录下创建一个Directory为webapp,然后鼠标移到项目名右键open Moduel settings
第一个找到自己新建的webapp目录,第二个是生成webapp里的WEB-INF文件及web.xml的,然后apply再ok;只要你的webapp目录图标中间出现一个蓝点就算成功了。然后这下面就可以写jsp页面了,当然页面的地址要跟.yml文件所写的地址一样不然扫描不到。
然后我们来配置整合Mybatis;
跟springmvc不一样的是,springboot整合mybatis的实体类,dao包,转换器等都得写到与springboot项目启动文件的同一个包下,
实体类:
package com.zking.springmybatisvue2.com.zking.entity; public class Person { private int pid; private String pname; private String page; public Person() { } public Person(int pid, String pname, String page) { this.pid = pid; this.pname = pname; this.page = page; } public int getPid() { return pid; } public void setPid(int pid) { this.pid = pid; } public String getPname() { return pname; } public void setPname(String pname) { this.pname = pname; } public String getPage() { return page; } public void setPage(String page) { this.page = page; } }Persondao
package com.zking.springmybatisvue2.com.zking.dao; import com.zking.springmybatisvue2.com.zking.entity.Person; import java.util.List; public interface PersonDao { //绑定 public List<Person> getall(); //添加 public void add(Person person); //删除 public void delete(int pid); //根据id获取对象 public Person getid(int pid); //修改 public void update(Person person); }controller类
package com.zking.springmybatisvue2.com.zking.controller; import com.alibaba.fastjson.JSON; import com.zking.springmybatisvue2.com.zking.dao.PersonDao; import com.zking.springmybatisvue2.com.zking.entity.Person; 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; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; import java.util.List; import java.util.Map; @Controller public class PersonController { @Autowired private PersonDao personDao; @ResponseBody @RequestMapping("usergetall") public Map<String,Object> getall(String name)throws Exception{ List<Person> list= personDao.getall(); System.out.println("拿数据了哦"); Map<String,Object> map=new HashMap<>(); map.put("data",list); map.put("size",list.size()); return map; } @ResponseBody @RequestMapping("userdel") public String del(HttpServletRequest request)throws Exception{ System.out.println("删除了"); personDao.delete(Integer.parseInt(request.getParameter("id"))); return "1"; } //增加 @ResponseBody @RequestMapping("adduser") public String adduser(HttpServletRequest request)throws Exception{ String str=request.getParameter("str"); Person user= JSON.parseObject(str,Person.class); personDao.add(user); return "1"; } @ResponseBody @RequestMapping("upduser") public String upduser(HttpServletRequest request)throws Exception{ String str=request.getParameter("str"); Person user= JSON.parseObject(str,Person.class); personDao.update(user); return "1"; } }在然后就在resources目录下创建一个mapping文件夹,然后新建一个xml文件,作为实体类的配置文件,
Person.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.zking.springmybatisvue2.com.zking.dao.PersonDao"> <!--得到全部对象--> <select id="getall" resultType="com.zking.springmybatisvue2.com.zking.entity.Person"> SELECT * from person </select> <!--删除一个对象--> <delete id="del" parameterType="int"> delete from Person where id=#{id} </delete> <!--添加一个对象--> <insert id="add" parameterType="com.zking.springmybatisvue2.com.zking.entity.Person" useGeneratedKeys="true" keyProperty="id"> insert into Person(pname,page)values(#{pname},#{page}) </insert> <!--修改一个对象--> <update id="upd" parameterType="com.zking.springmybatisvue2.com.zking.entity.Person" > update Person set pname=#{pname},page=#{page} where pid=#{pid} </update> </mapper>
时间也不早了,bootstrap跟vuejs下次再整合吧!