- eclipse搭建springBoot不通数据库
- 代码的自动生成类Eclipse,见[参考文档1]
- 代码的自动生成类idea,见[参考文档2]
- 参考demo
- 当https://start.spring.io/特别卡时,custom选项使用 阿里云构建:https://start.aliyun.com/
https://github.com/860277630/SpringBoot_HelloWorld.git
-
重要的事情:★★★★★★★★★★★★★★★
-
①idea社区版是无论如何都不支持jsp的,可以考虑使用eclipse或者使用idea收费版
-
②jsp在到了新的浏览器中运行,如果jsp失效,可以考虑清理一下缓存,因为浏览器缓存经常会导致jsp失效
-
③eclipse推荐使用

-
④关于eclipse修改springboot及其组建的版本在STS创建的最后一步

-
eclipse : SpringBoot+Mybatis + html
1.新建spring boot项目



-
完成后进行相应的配置文件修改,本人用mysql来做例子,要更改jar包版本,不然会报错
CLIENT_PLUGIN_AUTH is required,打开pom文件,并修改版本号,匹配自己的数组库版本(一般是5.1.18)

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 一定要改一下版本号,不然会报错 -->
<version>5.1.8</version>
<scope>runtime</scope>
</dependency>
- 然后创建表
数据库:
CREATE TABLE `user` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`userName` varchar(32) NOT NULL,
`passWord` varchar(50) NOT NULL,
`realName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
User.java
package com.example.demo.model;
public class User {
private Integer id;
private String userName;
private String passWord;
private String realName;
public Integer getId() {
return id;
}
public void setId(Integer 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;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
UserMapping.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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="Sel" resultMap="BaseResultMap" parameterType="Object">
select * from user where id = #{id}
</select>
</mapper>
UserMapper.java
package com.example.demo.dao;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.model.User;
@Mapper
public interface UserMapper {
User Sel(int id);
}
UserService.java
package com.example.demo.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.dao.UserMapper;
import com.example.demo.model.User;
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public User Sel(int id){
return userMapper.Sel(id);
}
}
UserController.java
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
/**
* @Author:wjup
* @Date: 2018/9/26 0026
* @Time: 14:42
*/
@Controller
@RequestMapping("/testBoot")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("getUser/{id}")
public String GetUser(@PathVariable int id,Model model){
User user = userService.Sel(id);
model.addAttribute("user", user);
System.out.println("xxxxxxxxxxxxxxxxxx"+user.toString());
return "index";
}
}
注意:启动类必须在执行类的同级甚至上面!!!
4. 完成相应配置文件的修改
将/src/main/resources/application.properties 下的配置文件改为application.yml文件,添加配置
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123888
driver-class-name: com.mysql.jdbc.Driver
mybatis:
#记住包名一定要这样写,而不要用点,直接拷贝路径复制过来就行
mapper-locations: classpath:com/example/demo/mapper/*.xml
type-aliases-package: com.example.demo.model
#日志打印配置 --新添加的,demo里面没有
logging:
level:
com.example.demo.dao: debug
启动类里面增加扫描:
@MapperScan("com.example.demo.dao")//是mapper接口,而不是映射文件
pom文件里面增加xml文件的位置,因为默认是resource文件夹下的,我们把它放在了src文件夹下

<resources>
<!-- mapper.xml文件在java目录下 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>mapper/*.xml</include>
</includes>
</resource>
<!-- mapper.xml文件在resources目录下 -->
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
在resources/templates文件夹📁下增加index.html文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table style = "border:2px solid #000000">
<tr><td>ID:</td><td th:text="${user.id}"></td></tr>
<tr><td>userName:</td><td th:text="${user.userName}"></td></tr>
<tr><td>passWord:</td><td th:text="${user.passWord}"></td></tr>
<tr><td>realName:</td><td th:text="${user.realName}"></td></tr>
</table>
</body>
</html>
- 配置好布局为:

6.访问:http://localhost:8080/testBoot/getUser/1,可以看到页面

- eclipse : SpringBoot+Mybatis + jsp
1.新建spring boot项目



- 完成后进行相应的配置文件修改,本人用mysql来做例子,要更改jar包版本,不然会报错
CLIENT_PLUGIN_AUTH is required,打开pom文件,并修改版本号,匹配自己的数组库版本(一般是5.1.18)

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 一定要改一下版本号,不然会报错 -->
<version>5.1.8</version>
<scope>runtime</scope>
</dependency>
- 然后创建表
数据库:
CREATE TABLE `user` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`userName` varchar(32) NOT NULL,
`passWord` varchar(50) NOT NULL,
`realName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
User.java
package com.example.demo.model;
public class User {
private Integer id;
private String userName;
private String passWord;
private String realName;
public Integer getId() {
return id;
}
public void setId(Integer 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;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
UserMapping.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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="Sel" resultMap="BaseResultMap" parameterType="Object">
select * from user where id = #{id}
</select>
</mapper>
UserMapper.java
package com.example.demo.dao;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.model.User;
@Mapper
public interface UserMapper {
User Sel(int id);
}
UserService.java
package com.example.demo.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.dao.UserMapper;
import com.example.demo.model.User;
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public User Sel(int id){
return userMapper.Sel(id);
}
}
UserController.java
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
/**
* @Author:wjup
* @Date: 2018/9/26 0026
* @Time: 14:42
*/
@Controller
@RequestMapping("/testBoot")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("getUser/{id}")
public String GetUser(@PathVariable int id,Model model){
User user = userService.Sel(id);
model.addAttribute("user", user);
System.out.println("xxxxxxxxxxxxxxxxxx"+user.toString());
return "index";
}
}
注意:启动类必须在执行类的同级甚至上面!!!
4. 完成相应配置文件的修改
将/src/main/resources/application.properties 下的配置文件改为application.yml文件,添加配置
server:
port: 8088
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123888
driver-class-name: com.mysql.jdbc.Driver
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
mybatis:
#记住包名一定要这样写,而不要用点,直接拷贝路径复制过来就行
mapper-locations: classpath:com/example/demo/mapper/*.xml
type-aliases-package: com.example.demo.model
#日志打印配置 --新添加的
logging:
level:
com.example.demo.dao: debug
启动类里面增加扫描:
@MapperScan("com.example.demo.dao")//是mapper接口,而不是映射文件
pom文件里面增加xml文件的位置,因为默认是resource文件夹下的,我们把它放在了src文件夹下

<resources>
<!-- mapper.xml文件在java目录下 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>mapper/*.xml</include>
</includes>
</resource>
<!-- mapper.xml文件在resources目录下 -->
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
然后添加相关JSP支持依赖
<!-- 添加servlet依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<!-- 添加jstl标签库依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!--添加tomcat依赖模块.-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<!-- 使用jsp引擎,springboot内置tomcat没有此依赖 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
创建webapp/WEB-INF/jsp文件夹📁




- 配置好布局为:

index.jsp内容
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table style = "border:2px solid #000000">
<tr><td>ID:</td><td>${user.id}</td></tr>
<tr><td>userName:</td><td >${user.userName}</td></tr>
<tr><td>passWord:</td><td >${user.passWord}</td></tr>
<tr><td>realName:</td><td >${user.realName}</td></tr>
</table>
</body>
</html>
6.访问:http://localhost:8080/testBoot/getUser/1,可以看到页面

- eclipse : SpringBoot+Mybatis + easyUI
这是JSP版本,和HTML的版本唯一的区别就是JSP和HTML的位置不一样,JS,CSS,图片等静态资源的位置不变
1.新建spring boot项目



- 完成后进行相应的配置文件修改,本人用mysql来做例子,要更改jar包版本,不然会报错
CLIENT_PLUGIN_AUTH is required,打开pom文件,并修改版本号,匹配自己的数组库版本(一般是5.1.18)

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 一定要改一下版本号,不然会报错 -->
<version>5.1.8</version>
<scope>runtime</scope>
</dependency>
- 然后创建表
数据库:
CREATE TABLE `user` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`userName` varchar(32) NOT NULL,
`passWord` varchar(50) NOT NULL,
`realName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
User.java
package com.example.demo.model;
public class User {
private Integer id;
private String userName;
private String passWord;
private String realName;
public Integer getId() {
return id;
}
public void setId(Integer 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;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
UserMapping.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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="Sel" resultMap="BaseResultMap" parameterType="Object">
select * from user where id = #{id}
</select>
</mapper>
UserMapper.java
package com.example.demo.dao;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.model.User;
@Mapper
public interface UserMapper {
User Sel(int id);
}
UserService.java
package com.example.demo.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.dao.UserMapper;
import com.example.demo.model.User;
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public User Sel(int id){
return userMapper.Sel(id);
}
}
UserController.java
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
/**
* @Author:wjup
* @Date: 2018/9/26 0026
* @Time: 14:42
*/
@Controller
@RequestMapping("/testBoot")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("getUser/{id}")
public String GetUser(@PathVariable int id,Model model){
User user = userService.Sel(id);
model.addAttribute("user", user);
System.out.println("xxxxxxxxxxxxxxxxxx"+user.toString());
return "index";
}
}
注意:启动类必须在执行类的同级甚至上面!!!
4. 完成相应配置文件的修改
将/src/main/resources/application.properties 下的配置文件改为application.yml文件,添加配置
server:
port: 8088
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123888
driver-class-name: com.mysql.jdbc.Driver
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
mybatis:
#记住包名一定要这样写,而不要用点,直接拷贝路径复制过来就行
mapper-locations: classpath:com/example/demo/mapper/*.xml
type-aliases-package: com.example.demo.model
#日志打印配置 --新添加的
logging:
level:
com.example.demo.dao: debug
启动类里面增加扫描:
@MapperScan("com.example.demo.dao")//是mapper接口,而不是映射文件
pom文件里面增加xml文件的位置,因为默认是resource文件夹下的,我们把它放在了src文件夹下

<resources>
<!-- mapper.xml文件在java目录下 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>mapper/*.xml</include>
</includes>
</resource>
<!-- mapper.xml文件在resources目录下 -->
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
然后添加相关JSP支持依赖
<!-- 添加servlet依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<!-- 添加jstl标签库依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!--添加tomcat依赖模块.-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<!-- 使用jsp引擎,springboot内置tomcat没有此依赖 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
创建webapp/WEB-INF/jsp文件夹📁




- 配置好布局为:

6.下载easyUI

7.在resources/static 文件夹下 创建 js 和 css文件夹📁



8.然后将下载的easyUI文件解压,将demo文件夹里的demo.css放入CSS文件夹📁中,将themes,及外面的JS放入js文件夹📁中


9.index.jsp的内部代码
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<c:set var="basePath" value="${pageContext.request.contextPath}"></c:set>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="0">
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="${basePath}/js/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="${basePath}/js/themes/icon.css">
<link rel="stylesheet" type="text/css" href="${basePath}/css/demo.css">
<script type="text/javascript" src="${basePath}/js/jquery.min.js"></script>
<script type="text/javascript" src="${basePath}/js/jquery.easyui.min.js"></script>
</head>
<body>
<div style="margin:20px 0;"></div>
<table id="dg" title="My Users" class="easyui-datagrid" style="width:550px;height:250px"
url="get_users.php"
toolbar="#toolbar"
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th data-options="field:'itemid',width:80">区域id</th>
<th data-options="field:'productid',width:100">上级区域id</th>
<th data-options="field:'listprice',width:80,align:'right'">区域名称</th>
<th data-options="field:'unitcost',width:80,align:'right'">区域编号</th>
</tr>
</thead>
<tbody>
<tr>
<td>${user.id }</td>
<td>${user.userName }</td>
<td>${user.passWord }</td>
<td>${user.realName }</td>
</tr>
</tbody>
</table>
</body>
</html>
10.布置结构如图

11,访问 http://localhost:8088/testBoot/getUser/1 结果如下

- idea: SpringBoot+Mybatis+html
idea 与 eclipse 最大的区别就是 mapper.xml文件 要创建在resource文件夹📁下面 其他的基本无差异
1.File→new→project →Spring initializr

2.next→选择对应的版本

3.选择对应的依赖

4.然后指定名字,完成。

5.完成后进行相应的配置文件修改,本人用mysql来做例子,要更改jar包版本,不然会报错CLIENT_PLUGIN_AUTH is required,打开pom文件,并修改版本号,匹配自己的数组库版本(一般是5.1.18)

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 一定要改一下版本号,不然会报错 -->
<version>5.1.8</version>
<scope>runtime</scope>
</dependency>
- 然后创建表
数据库:
CREATE TABLE `user` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`userName` varchar(32) NOT NULL,
`passWord` varchar(50) NOT NULL,
`realName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
User.java
package com.example.demo.model;
public class User {
private Integer id;
private String userName;
private String passWord;
private String realName;
public Integer getId() {
return id;
}
public void setId(Integer 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;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
UserMapping.xml(注意这里是resources文件夹下创建mapper文件夹📁)
<?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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="Sel" resultMap="BaseResultMap" parameterType="Object">
select * from user where id = #{id}
</select>
</mapper>
UserMapper.java
package com.example.demo.dao;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.model.User;
@Mapper
public interface UserMapper {
User Sel(int id);
}
UserService.java
package com.example.demo.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.dao.UserMapper;
import com.example.demo.model.User;
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public User Sel(int id){
return userMapper.Sel(id);
}
}
UserController.java
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
/**
* @Author:wjup
* @Date: 2018/9/26 0026
* @Time: 14:42
*/
@Controller
@RequestMapping("/testBoot")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("getUser/{id}")
public String GetUser(@PathVariable int id,Model model){
User user = userService.Sel(id);
model.addAttribute("user", user);
System.out.println("xxxxxxxxxxxxxxxxxx"+user.toString());
return "index";
}
}
注意:启动类必须在执行类的同级甚至上面!!!
6. 完成相应配置文件的修改
将/src/main/resources/application.properties 下的配置文件改为application.yml文件,添加配置
server:
port: 8088
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123888
driver-class-name: com.mysql.jdbc.Driver
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.example.demo.model
#idea配置文件默认不允许有中文注释
logging:
level:
com.example.demo.dao: debug
启动类里面增加扫描:
@MapperScan("com.example.demo.dao")//是mapper接口,而不是映射文件
在resources/templates文件夹📁下增加index.html文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table style = "border:2px solid #000000">
<tr><td>ID:</td><td th:text="${user.id}"></td></tr>
<tr><td>userName:</td><td th:text="${user.userName}"></td></tr>
<tr><td>passWord:</td><td th:text="${user.passWord}"></td></tr>
<tr><td>realName:</td><td th:text="${user.realName}"></td></tr>
</table>
</body>
</html>
- 配置好布局为:

7.访问:http://localhost:8088/testBoot/getUser/1,可以看到页面

- idea: SpringBoot+Mybatis+jsp
1.File→new→project →Spring initializr

2.next→选择对应的版本

3.选择对应的依赖

4.然后指定名字,完成。

5.完成后进行相应的配置文件修改,本人用mysql来做例子,要更改jar包版本,不然会报错CLIENT_PLUGIN_AUTH is required,打开pom文件,并修改版本号,匹配自己的数组库版本(一般是5.1.18)

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 一定要改一下版本号,不然会报错 -->
<version>5.1.8</version>
<scope>runtime</scope>
</dependency>
- 然后创建表
数据库:
CREATE TABLE `user` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`userName` varchar(32) NOT NULL,
`passWord` varchar(50) NOT NULL,
`realName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
User.java
package com.example.demo.model;
public class User {
private Integer id;
private String userName;
private String passWord;
private String realName;
public Integer getId() {
return id;
}
public void setId(Integer 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;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
UserMapping.xml(注意这里是resources文件夹下创建mapper文件夹📁)
<?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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="Sel" resultMap="BaseResultMap" parameterType="Object">
select * from user where id = #{id}
</select>
</mapper>
UserMapper.java
package com.example.demo.dao;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.model.User;
@Mapper
public interface UserMapper {
User Sel(int id);
}
UserService.java
package com.example.demo.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.dao.UserMapper;
import com.example.demo.model.User;
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public User Sel(int id){
return userMapper.Sel(id);
}
}
UserController.java
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
/**
* @Author:wjup
* @Date: 2018/9/26 0026
* @Time: 14:42
*/
@Controller
@RequestMapping("/testBoot")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("getUser/{id}")
public String GetUser(@PathVariable int id,Model model){
User user = userService.Sel(id);
model.addAttribute("user", user);
System.out.println("xxxxxxxxxxxxxxxxxx"+user.toString());
return "index";
}
}
注意:启动类必须在执行类的同级甚至上面!!!
6. 完成相应配置文件的修改
将/src/main/resources/application.properties 下的配置文件改为application.yml文件,添加配置
server:
port: 8088
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123888
driver-class-name: com.mysql.jdbc.Driver
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.example.demo.model
#idea配置文件默认不允许有中文注释
logging:
level:
com.example.demo.dao: debug
启动类里面增加扫描:
@MapperScan("com.example.demo.dao")//是mapper接口,而不是映射文件
然后添加相关JSP支持依赖
<!-- 添加servlet依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>compile</scope>
</dependency>
<!-- 添加jstl标签库依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!--添加tomcat依赖模块.绝大部分情况不需要这个-->
<!-- <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>-->
<!-- 使用jsp引擎,springboot内置tomcat没有此依赖 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
创建webapp/WEB-INF/jsp文件夹📁 注意是main文件夹📁下

- 配置好布局为:

index.jsp内容
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table style = "border:2px solid #000000">
<tr><td>ID:</td><td>${user.id}</td></tr>
<tr><td>userName:</td><td >${user.userName}</td></tr>
<tr><td>passWord:</td><td >${user.passWord}</td></tr>
<tr><td>realName:</td><td >${user.realName}</td></tr>
</table>
</body>
</html>
6.访问:http://localhost:8080/testBoot/getUser/1,可以看到页面

- Idea SpringBoot+Mybatis 整合easyUI
1.File→new→project →Spring initializr

2.next→选择对应的版本

3.选择对应的依赖

4.然后指定名字,完成。

5.完成后进行相应的配置文件修改,本人用mysql来做例子,要更改jar包版本,不然会报错CLIENT_PLUGIN_AUTH is required,打开pom文件,并修改版本号,匹配自己的数组库版本(一般是5.1.18)

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 一定要改一下版本号,不然会报错 -->
<version>5.1.8</version>
<scope>runtime</scope>
</dependency>
- 然后创建表
数据库:
CREATE TABLE `user` (
`id` int(32) NOT NULL AUTO_INCREMENT,
`userName` varchar(32) NOT NULL,
`passWord` varchar(50) NOT NULL,
`realName` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
User.java
package com.example.demo.model;
public class User {
private Integer id;
private String userName;
private String passWord;
private String realName;
public Integer getId() {
return id;
}
public void setId(Integer 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;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
UserMapping.xml(注意这里是resources文件夹下创建mapper文件夹📁)
<?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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="userName" jdbcType="VARCHAR" property="userName" />
<result column="passWord" jdbcType="VARCHAR" property="passWord" />
<result column="realName" jdbcType="VARCHAR" property="realName" />
</resultMap>
<select id="Sel" resultMap="BaseResultMap" parameterType="Object">
select * from user where id = #{id}
</select>
<select id="selAll" resultMap="BaseResultMap" parameterType="Object">
select * from user LIMIT 0,10
</select>
</mapper>
UserMapper.java
package com.example.demo.dao;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.model.User;
import java.util.List;
@Mapper
public interface UserMapper {
User Sel(int id);
List<User> selAll();
}
UserService.java
package com.example.demo.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.dao.UserMapper;
import com.example.demo.model.User;
import java.util.List;
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public User Sel(int id){
return userMapper.Sel(id);
}
public List<User> SelAll(){
return userMapper.selAll();
}
}
UserController.java
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import com.example.demo.model.User;
import com.example.demo.service.UserService;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
/**
* @Author:wjup
* @Date: 2018/9/26 0026
* @Time: 14:42
*/
@Controller
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("index")
public String index(){
return "index";
}
@RequestMapping("getData")
@ResponseBody
public List<User> getDatas(){
return userService.SelAll();
}
}
注意:启动类必须在执行类的同级甚至上面!!!
6. 完成相应配置文件的修改
将/src/main/resources/application.properties 下的配置文件改为application.yml文件,添加配置
server:
port: 8088
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
username: root
password: 123888
driver-class-name: com.mysql.jdbc.Driver
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.example.demo.model
#idea配置文件默认不允许有中文注释
logging:
level:
com.example.demo.dao: debug
启动类里面增加扫描:
@MapperScan("com.example.demo.dao")//是mapper接口,而不是映射文件
然后添加相关JSP支持依赖
<!-- 添加servlet依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>compile</scope>
</dependency>
<!-- 添加jstl标签库依赖模块 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!--添加tomcat依赖模块.绝大部分情况不需要这个-->
<!-- <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>-->
<!-- 使用jsp引擎,springboot内置tomcat没有此依赖 -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
创建webapp/WEB-INF/jsp文件夹📁 注意是main文件夹📁下

6.下载easyUI

7.在resources/static 文件夹下 创建 js 和 css文件夹📁

8.然后将下载的easyUI文件解压,将demo文件夹里的demo.css放入CSS文件夹📁中,将themes,及外面的JS放入js文件夹📁中


9.jsp 文件夹下创建index.jsp的内部代码
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<c:set var="basePath" value="${pageContext.request.contextPath}"></c:set>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="0">
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="${basePath}/js/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="${basePath}/js/themes/icon.css">
<link rel="stylesheet" type="text/css" href="${basePath}/css/demo.css">
<script type="text/javascript" src="${basePath}/js/jquery.min.js"></script>
<script type="text/javascript" src="${basePath}/js/jquery.easyui.min.js"></script>
</head>
<body>
<div style="margin:20px 0;"></div>
<table id="dg" title="My Users" class="easyui-datagrid" style="width:550px;height:250px"
url="/getData"
toolbar="#toolbar"
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th data-options="field:'id',width:80">区域id</th>
<th data-options="field:'userName',width:100">上级区域id</th>
<th data-options="field:'passWord',width:80,align:'right'">区域名称</th>
<th data-options="field:'realName',width:80,align:'right'">区域编号</th>
</tr>
</thead>
<tbody>
<tr>
<td>${id }</td>
<td>${userName }</td>
<td>${passWord }</td>
<td>${realName }</td>
</tr>
</tbody>
</table>
</body>
</html>
10.布置结构如图

11,访问 http://localhost:8088/index 结果如下


本文详细介绍了如何在Eclipse和Idea中搭建SpringBoot+Mybatis项目,支持HTML、JSP和EasyUI。包括创建Spring Boot项目、配置数据库、修改POM文件、添加Mapper文件、处理JSP和EasyUI的静态资源,以及访问和测试。特别提示,Idea社区版不支持JSP,Eclipse推荐用于此类项目。

6635

被折叠的 条评论
为什么被折叠?



