前言: 由于在代码中使用注解编写sql 会导致后期难以维护和混乱, 这里使用的mybatis是 用xml 文件。连接的是oracle12c
步骤:
1:
填写: group , artifact , packaging 选war
选择:web
下一步:
创建后的目录是这样的:
红色目录删除: 我有强迫症, 所以我把它删了, 没有强迫症的可删可不删
在上面的目录删除后,
1:在test > java 下新建一个 test 包, 在包下建一个 BaseTest.class, 内容如下:这是测试类, 配置好就可以在里面写方法测试了, 注入接口,或者dao 都可以。
//获取启动类,加载配置,确定装载 Spring 程序的装载方法,它会去寻找 主配置启动类(@SpringBootApplication 注解)
@SpringBootTest(classes = Main.class)
//让Junit运行spring的测试环境, 获得Spring上下文的支持
@RunWith(SpringRunner.class)
//获取上下文支持
@WebAppConfiguration
public class BaseTest {
@Test
public void test1()
{
System.out.println("test1");
}
}
2: 将 com.test.demo 下的两个类: ServletInitializer , DemoApplication 移动到com.test下, 将demo包删除, 将DemoApplication ReName 为 Main.class
接下来启动一下:
出现 Tomcat started on port(s): 8080 就是启动成功了, 这个是tomcat 启动后的端口。
配置 pom.xml
1 改为: 1.0-SNAPSHOT
2: 删除
在 pom.xml dependencies 标签 中引入 以下包
org.springframework.boot
spring-boot-devtools
true
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.2.2
com.github.pagehelper
pagehelper-spring-boot-starter
1.2.7
com.alibaba
druid-spring-boot-starter
1.1.9
com.alibaba
fastjson
1.2.15
oracle.jdbc
ojdbc8
12.2.0.1
点击1 , 在点击2 下载包
配置 application.properties
#内置tomcat端口
server.port=8080
#配置字符编码
spring.http.encoding.force=true
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
server.tomcat.uri-encoding=UTF-8
#数据库连接地址
spring.datasource.url=jdbc:oracle:thin:@192.168.32.128:1521/orcl
#用户名
spring.datasource.username=dev
#密码
spring.datasource.password=dev
#连接驱动
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
#数据源类型
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
#mybatis配置
# 对应实体类的路径
mybatis.type-aliases-package=com.test.model
#一定要对应mapper映射xml文件的所在路径
mybatis.mapper-locations=classpath:mapper/*.xml
#分页设置
pagehelper.helperDialect=oracle
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
#日志配置 打印sql
logging.level.com.test.interfaces.dao = debug
创建 model 实体 和 mapper
创建 dao interface
创建 userService interface
创建 userServiceImpl 类
创建 controller class
配置 启动类:
1:扫描 dao层
2: 重写spring boot的json
/* *重写spring boot Json , 用的是阿里巴巴的 FastJson * 有两种方式 * 1:继承 ,重写 configureMessageConverters 这个方法, 推荐使用这一种, * 因为当对象有空值时, 空值不会返回 * 2: 注入bean的方式, 不推荐使用, 当对象有空值时, 空值也会返回json键值 */ @Override public void configureMessageConverters(List> converters) { super.configureMessageConverters(converters); FastJsonHttpMessageConverter fhc = new FastJsonHttpMessageConverter(); FastJsonConfig config = new FastJsonConfig(); config.setSerializerFeatures(SerializerFeature.PrettyFormat); fhc.setFastJsonConfig(config); converters.add(fhc); }
整个 demo的目录:
在 Main.class 启动类启动后 访问一下: localhost:8080/add
关于: 热部署, 只需要 以下引入 就可以热部署, 不需要其他配置,
热部署原理是: 两个classLoader, 一个classLoader监听修改的文件,重启应用,发生的时机的保存的时候。重启大概是5秒以内
打包要制定打包后的名字,在pom中添加:
打包:可以直接打包为 jar , 然后 java -jar demo.jar, 修改以下:将war改为jar就可以 打包成jar , 改为war 就可以打包为 war发布到tomcat
执行 clean install, 在目录下出现 target 下 demo.war ,将 demo.war 放置 tomcat > webapps 下, 启动 tomcat,
输入 tomcat所在ip : 8080/demo/add 就能成功访问。