myEclipse 搭建 Spring boot+myBatis+maven 项目流程
1、新建一个工程
new-->maven project-->next-->next-->在filter中搜索webapp-->group id、Artifact id-->完成。
2、配置pom.xml文件
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.mg39.ssm</groupId>
<artifactId>test03</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>test03 Maven Webapp</name>
<url>http://maven.apache.org</url>
<!--第一步 spring官方的叫stater poms,它可以提供dependency management,
也就是依赖管理,引入以后在声明其它dependency的时候就不需要version了
但是mybatis需要?????-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.3.RELEASE</version>
</parent> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<!-- <version>4.0</version> -->
<scope>test</scope>
</dependency>
<!--第二步 官方解释spring-boot-start-web包含了spring webmvc和tomcat等web开发的特性-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> <!--添加MySQL的jar -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency> <!--添加mybatis的jar -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency> <!--添加模板框架thymeleaf -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency> <!--模板框架依赖的jar -->
<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
<!-- <version>1.9.22</version> -->
</dependency> </dependencies>
<build>
<finalName>test03</finalName> <!--第三步 如果我们要直接Main启动spring,那么以下plugin必须要添加,否则是无法启动的。如果使用maven的spring-boot:run的话就不需要此配置。-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin </artifactId>
</plugin>
</plugins> </build>
</project>
3、编写测试类(包名必须是其他包的父包,不然无法进入controller类)
测试类是程序的入口。写完项目后在此类右键-->Java Application就可以运行。
Test03.java
package cn.mg39.ssm; //此包是其他所有包的父包,也就是其他所有包都要以cn.mg39.ssm开头,如cn.mg39.ssm.dao import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; /**
* 添加注解
*/
@RestController
@SpringBootApplication
/**
* 测试类名随便写,Test03是因这是我第三个boot
* @author zhangzimu
*
*/
public class Test03 { /**
* 当项目运行起来时,在浏览器输入http://localhost:8080/login。页面就会有helloworld字样。
* @return
*/
@RequestMapping("/login")
public String login() {
return "HelloWorld";
} public static void main(String[] args) {
SpringApplication.run(Test03.class, args);
}
}
4、建实体类(SysGroup)
SysGroup.java
package cn.mg39.ssm.entity;
/**
* 分组实体
*
*/
public class SysGroup {
private Integer id; //分组id
private String name; //组名
private String remark; //备注 public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public SysGroup() {
super();
// TODO Auto-generated constructor stub
}
public SysGroup(Integer id, String name, String remark) {
super();
this.id = id;
this.name = name;
this.remark = remark;
}
public SysGroup(Integer id) {
super();
this.id = id;
}
@Override
public String toString() {
return "SysGroup [id=" + id + ", name=" + name + ", remark=" + remark + "]";
} }
5、Dao接口(SysGroupDao)
SysGroupDao.java
package cn.mg39.ssm.dao; import org.apache.ibatis.annotations.Mapper; import cn.mg39.ssm.entity.SysGroup; @Mapper
public interface SysGroupDao {
public Integer insert(SysGroup sysGroup);
}
6、配置mapper.xml(SysGroupDaoMapper.xml)
01、在main/resources文件夹下新建文件夹mapper用于管理mapper文件
02、在mapper下写SysGroupDaoMapper.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="cn.mg39.ssm.dao.SysGroupDao">
<insert id="insert" keyColumn="id" keyProperty="id"
parameterType="sysGroup">
insert into sys_group values(null,#{name},#{remark})
</insert>
</mapper>
7、service接口(SysGroupService)
SysGroupService.java
package cn.mg39.ssm.service; import cn.mg39.ssm.entity.SysGroup;
/**
*service接口
*/
public interface SysGroupService {
public Boolean add(SysGroup sysGroup);
}
8、service实现类(SysGroupServiceImpl)
SysGroupServiceImpl.java
package cn.mg39.ssm.service.impl; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import cn.mg39.ssm.dao.SysGroupDao;
import cn.mg39.ssm.entity.SysGroup;
import cn.mg39.ssm.service.SysGroupService; //<bean id="sysGroupService" class="cn.mg39.ssm.service.impl.SysGroupService">
@Service("sysGroupService") //实现的功能和上面这句相同
public class SysGroupServiceImpl implements SysGroupService { @Autowired //自动注入
private SysGroupDao sysGroupDao;
@Override
public Boolean add(SysGroup sysGroup) { return sysGroupDao.insert(sysGroup) > 0;
} }
9、编写controller类
SysGroupController.java
package cn.mg39.ssm.controller; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; import cn.mg39.ssm.entity.SysGroup;
import cn.mg39.ssm.service.SysGroupService; @Controller
public class SysGroupController {
@Autowired //自动注入SysGroupService
private SysGroupService sysGroupService; //浏览器地址栏端口后不写路径时显示index.html(前缀和后缀在application.yml中配置)
@RequestMapping("/")
public String index() {
return "index"; //classpath:/templates/index.html
} @RequestMapping("/addGroup") //index.html提交的数据传给addGroup,再判断跳转,跳转的网页原则和上面一样
public String addGroup(SysGroup sysGroup) { if (sysGroupService.add(sysGroup)) {
return "success";
}else {
return "fail";
} }
}
10、在resources下编写application.yml文件
application.yml(用于配置数据库连接需要的参数和mybatis)
#spring的配置 application.yml
#/templates/success.html
spring:
profiles:
active: dev #和xml格式差不多,相当于单标签
thymeleaf:
cache: false #开发时关闭缓存,不然没法看到实时页面
mode: LEGACYHTML5 #用非严格的 HTML
encoding: UTF-8
servlet:
content-type: text/html
prefix: classpath:/templates/ #controller中return中值的前缀
suffix: .html #后缀
datasource: #下面为连接数据库的相关参数
url: jdbc:mysql://localhost:3306/hr_oa?characterEncoding=utf8&useSSL=false
username: root
password: root
driver-class-name: com.mysql.jdbc.Driver mybatis: #myBatis的相关配置参数
type-aliases-package: cn.mg39.ssm.entity #扫描的包(忘记得差不多了)
mapper-locations: classpath:mapper/*.xml #CRUD的配置文件(在mapper下)
11、编写HTML文件
在main/resources下新建templates文件夹(因为前缀为templates),在里面写HTML
index.html
input的name和实体对应的属性值相同
success.html
fail.html
12、在测试类中运行
13、浏览器http://localhost:8080/
myEclipse 搭建 Spring boot+myBatis+maven 项目流程的更多相关文章
- spring Boot + MyBatis + Maven 项目,日志开启打印 sql
在 spring Boot + MyBatis + Maven 项目中,日志开启打印 sql 的最简单方法,就是在文件 application.properties 中新增: logging.leve ...
- Maven 搭建spring boot多模块项目(附源码),亲测可以,感谢原创
原创地址:https://segmentfault.com/a/1190000005020589 我的DEMO码云地址,持续添加新功能: https://gitee.com/itbase/Spring ...
- Maven 搭建spring boot多模块项目
Maven 搭建spring boot多模块项目 备注:所有项目都在idea中创建 1.idea创建maven项目 1-1: 删除src,target目录,只保留pom.xml 1-2: 根目录pom ...
- spring boot+mybatis+quartz项目的搭建完整版
1. 利用spring boot提供的工具(http://start.spring.io/)自动生成一个标准的spring boot项目架构 2. 因为这里我们是搭建spring boot+mybat ...
- idea搭建Spring Boot+Mybatis及使用教程
环境准备 idea 15 jDK tomcat maven 搭建方式 官网下载源码包解压缩 使用idea中的Spring initializr创建 这两种方法创建的项目完全相同,只是操作方式不一样 这 ...
- Maven搭建Spring+SpringMVC+Mybatis+Shiro项目详解
一. 环境搭建: 1. 开发工具:myeclipse 2014 / IDEA: 2. maven管理版本:apache-maven-3.0+: 3. jdk 1.7.0+4. Tomcat8.0 二: ...
- spring springmvc mybatis maven 项目整合示例-导航页面
spring原理 实践解析-简单的helloworld spring原理案例-基本项目搭建 01 spring framework 下载 官网下载spring jar包 spring原理案例-基本项目 ...
- IntelliJ IDEA 创建Spring+SpringMVC+mybatis+maven项目
参考自:https://www.cnblogs.com/hackyo/p/6646051.html 第一步: 创建maven项目 输入项目名和工程id 选择maven 默认就可以了 刚开始时间比较长, ...
- 一键生成Spring MVC + MyBatis + maven项目
首先创建一个新的maven项目,在src/main/java创建一个类Test 然后在Test复制以下代码: import java.io.*; import java.sql.Connection; ...
随机推荐
- 关于dom获取元素的几种方式
原文链接:https://blog.csdn.net/levinhax/article/details/71274456 获取元素DOM对象有很多种方法,以前一直在用getElementById和ge ...
- 【记录】Mybatis Generator生成数据对象Date/TimeStamp 查询时间格式化
Mybatis Generator是很好的工具帮助我们生成表映射关联代码,最近博主遇到一个问题,找了很久才解决, 就是用Mybatis Generator生成实体类的时候,Date 时间无法格式化输出 ...
- SHELL自动化--接口测试
#!/bin/bash fileNum=`ls /bin/testShell/apiCheck_shell/logs/ | grep $(date "+%Y-%m-%d") | w ...
- sigmoid 和 soft-max总结
1)sigmoid函数(也叫逻辑斯谛函数): 引用wiki百科的定义: A logistic function or logistic curve is a common “S” shape (si ...
- 线程监控ProcessMonitor
软件行为 在线监测 注册表 行为判断
- tomcat-性能优化参考
转摘 http://blog.csdn.net/lifetragedy/article/details/7708724. ###jdk1.6.未验证.仅供参考### linux环境下Tomcat调优 ...
- 转帖 java使用poi.3.10读取excel 2010
package poi; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; ...
- window杀死端口
获取端口的pid:netstat -aon|findstr "8382" 杀死pid : taskkill /pid [] -t -f
- 使用pytorch测试单张图片(test single image with pytorch)
以下代码实现使用pytorch测试一张图片 引用文章: https://www.learnopencv.com/pytorch-for-beginners-image-classification-u ...
- Java 设计模式-【单例模式】
单例解决了什么问题:为了节约系统资源,有时需要确保系统中某个类只有唯一一个实例,当这个唯一实例创建成功之后,我们无法再创建一个同类型的其他对象,所有的操作都只能基于这个唯一实例.为了确保对象的唯一性, ...