2021-05-26

day02
今天的内容
1、Maven的项目管理
2、Maven在idea工具中的使用
3、框架的简介
4、Mybatis入门案例

一、Maven的项目管理
(一)统一的版本管理
1、在单个项目中统一版本管理
如果项目中依赖的jar包有多个组件,比如spring的框架,我们在使用的时候需要用很多组件,在使用同一种依赖的时候,必须将所有的组件版本用一样的。

可以将版本号放在特定的地方来管理,而且修改版本的时候只需要修改版本管理的值就可以。
在properties标签中,除了自定义的标签页可以写一些特定的标签,来配置全局设置:比如:

2、多个项目使用版本统一管理
(1)pom项目的继承
pom项目,类似java中的接口,pom项目只有声明,其余什么也没有:
选择的时候选择pom项目:

项目创建后:如果在pom.xml中添加了依赖,项目也是什么都没有:

只有pom项目可以被继承,继承约束和java几乎是一样的
在pom项目中添加几个scope属性不是默认的测试:

创建一个新的项目,继承pom项目:

查看新项目对应的依赖:

无论scope属性是什么,都会被继承过来。
(2)实际工作中使用版本统一管理
在公司实现操作的时候会将可能会使用到的依赖都配置好,如果我们开发一个新的项目,里面只需要很少的依赖就可以了。就不能使用导入所有依赖的方式。
在pom项目中可以将所有的依赖设置为声明,作用:在项目被继承的时候不去使用。

看继承的项目:

如果继承项目后要使用某些依赖,在pom项目中复制要使用的依赖:

二、Maven在idea工具中的使用
(一)idea安装和配置
根据文档安装idea并破解。。。。。。。。
(二)在idea中创建maven项目
如果创建了idea的项目,在启动idea后就会自动进入到最后一个项目中,我们需要在项目中设置,将启动选择项目界面调处来。

打开配置后,找到开启界面:

重启idea,打开全局设置:

在配置中设置maven路径:

修改mavne配置文件地址:

可以设置idea提示的时候是否区分大小写:

创建maven的java项目:选择创建新项目:

选择java项目,不勾选模板:

修改项目名称,路径等设置创建项目:

创建项目后,可以在项目中创建类,测试:

测试类:

(三)将项目转化为web项目
在idea中java项目和web项目的区别,就是web项目多了一个web模块:
file中选择项目设置:

添加模块,选择web:

在添加的web模块中选择webapp的位置:

创建新的web目录:

修改web.xml的位置:

添加确认:

添加开发war包:

确认:

配置后,确保webapp文件夹上有蓝点

创建一个首页:名字必须是index.html

配置tomcat:
点开修改配置:

添加tomcat本地服务:

添加tomcat地址:

在选项中添加web项目:

修改访问地址:

修改服务中启动页面和热部署:

配置后启动项目:

启动后会自动打开首页:

(二)Maven项目的聚合*
聚合项目的关系图:

创建公共的项目,并将项目安装:

创建项目:

因为复制文件上传工具类要使用servlet依赖,在pom中导入对应的依赖:

javax.servlet
javax.servlet-api
4.0.1
provided

将工具类和实体类复制到项目中:

将当前的类安装到本地仓库:

在本地仓库查看:

创建pom管理项目:管理依赖和聚合:

创建项目后,添加pom标签:删除src文件夹

添加对应的依赖:



mysql
mysql-connector-java
5.1.47



commons-dbutils
commons-dbutils
1.7



com.mchange
c3p0
0.9.5.4



javax.servlet
javax.servlet-api
4.0.1
provided


javax.servlet
jsp-api
2.0
provided


jstl
jstl
1.2



com.fasterxml.jackson.core
jackson-databind
2.11.3

在聚合管理的项目中创建一个module

创建项目选择名称:

我们查看聚合管理项目,该项目的pom文件中会自动添加标签:

使用同样的方法创建service项目和dao项目:
创建后查看功能项目的pom文件:

设置三个项目之间的关系:
dao项目:

service项目和dao项目有关系:依赖关系:

web项目依赖service项目:

将项目代码一一的复制到聚合项目中:

如果要运行当前的项目。是不能直接运行的,必须将项目打包生成war包才可以的:

war包就可以直接放在tomcat中运行:

先启动tomcat

在将war包找到放入到webapps文件夹中:

访问项目:

如果在idea中启动项目:
在manager执行安装的命令:

在本地仓库中,在web项目下有对应的war包:

在idea中添加tomcat:选择导入资源,可以添加系统文件中的war包:

选取本地仓库安装的war包:

添加后启动项目:

三、框架的简介
(一)三层架构介绍
三层架构是软件开发中常用的一种架构模式,该模式为什么是常用的模式?因为该架构对项目有清晰的责任划分。三层包括:
表现层:控制层,一般来说表现层任务:接收表单数据,发送数据到页面,页面的分发转向。
一般在表现层不会出现业务逻辑的,如果有对应的业务逻辑会调用对应业务层来处理。
业务层:根据对应的需求完成业务逻辑的定义和实现,(程序员做的最多的层),因为改层基本上都是为上层服务的,所以该层叫service层。
持久层:主要完成和数据库交互的工作,对数据库进行CRUD的操作,数据库的数据改变是永久性的所以叫持久层。为什么叫dao date access object 简称dao。
三层之间的关系:
表现层调用业务层,业务层调用持久层。
(二)框架概念介绍
1、软件框架定义:

框架就是一个工具类,是很多程序员都可以使用的工具类。
框架写出来就是为了所有的程序员来使用的,所以框架不能将功能做的太完善,为了让所有的程序员都能使用工具类,所以框架就是一个半成品。
我们使用框架就需要在半成品的基础上继续精加工。

2、常见的框架介绍
框架出现的目的,就是解决某一类特定的问题的。框架在使用的时候也有层次对应的划分:
表现层的框架:springMVC、status2
业务层是没有框架的。
持久层框架:mybatis、hibernate
全栈式的框架:spring
我们三阶段学习的框架就是一套项目开发完整的解决方案:spring+springMVC+mybatis 简称SSM
四、Mybatis入门案例
(一)mybatis框架介绍

mybatis是一个持久层的框架,功能是代替JDBC。
1、ORM框架

mybatis是一个ORM框架:
O object 对象 --> Java中的对象
R relational 关系 -->数据库表
M mapping 映射 对象和数据库关系表建立映射关系 一个表对应一个实体类 表中的列对应对象的属性 表中的一行数据对应实体类的对象
mybatis 是一个半自动的ORM框架 hibernate 是一个全自动ORM框架

2、mybaits特点
(1)mybaits和jdbc相比,减少了50%的代码量
(2)mybatis是一个比较简单的持久层框架,小巧而灵活。
(3)mybaits是一个相当灵活的框架,所有的sql写在xml文件中,mybaits是一个非侵入式,使用或者不使用该框架对其他的层级不会造成影响。mybaits支持动态sql,可以根据不同的参数生成不同的sql。
(4)mybaits支持多对一resultMap,可以由用户定义映射关系。
(二)Mbatis入门案例
1、创建项目,导入依赖:

依赖:



org.mybatis
mybatis
3.5.3



mysql
mysql-connector-java
5.1.47



log4j
log4j
1.2.17

2、数据库创建person表
CREATE TABLE person (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) DEFAULT NULL,
sex varchar(255) DEFAULT NULL,
age int(11) DEFAULT NULL,
hobby varchar(255) DEFAULT NULL,
birthday date DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3、创建person对象

添加set、get方法 和tostring方法
使用alt+insert 快捷键
4、创建mybatis核心配置文件
在idea中 创建一个模板:
头信息:

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration

PUBLIC “-//mybatis.org//DTD Config 3.0//EN”
“http://mybatis.org/dtd/mybatis-3-config.dtd”>

在resources下面创建配置文件:

修改配置文件:

5、创建映射文件
添加一个映射文件的模板:

<?xml version="1.0" encoding="UTF-8" ?>

创建映射文件:

6、将映射文件配置到核心配置文件中

7、测试

如果要查看sql语句,添加log4j的配置:

添加配置文件后最好是使用maven更新下项目
结果:

查看数据库:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
2021-03-26 20:54:33,596 - Model - INFO - Epoch 1 (1/200): 2021-03-26 20:57:40,380 - Model - INFO - Train Instance Accuracy: 0.571037 2021-03-26 20:58:16,623 - Model - INFO - Test Instance Accuracy: 0.718528, Class Accuracy: 0.627357 2021-03-26 20:58:16,623 - Model - INFO - Best Instance Accuracy: 0.718528, Class Accuracy: 0.627357 2021-03-26 20:58:16,623 - Model - INFO - Save model... 2021-03-26 20:58:16,623 - Model - INFO - Saving at log/classification/pointnet2_msg_normals/checkpoints/best_model.pth 2021-03-26 20:58:16,698 - Model - INFO - Epoch 2 (2/200): 2021-03-26 21:01:26,685 - Model - INFO - Train Instance Accuracy: 0.727947 2021-03-26 21:02:03,642 - Model - INFO - Test Instance Accuracy: 0.790858, Class Accuracy: 0.702316 2021-03-26 21:02:03,642 - Model - INFO - Best Instance Accuracy: 0.790858, Class Accuracy: 0.702316 2021-03-26 21:02:03,642 - Model - INFO - Save model... 2021-03-26 21:02:03,643 - Model - INFO - Saving at log/classification/pointnet2_msg_normals/checkpoints/best_model.pth 2021-03-26 21:02:03,746 - Model - INFO - Epoch 3 (3/200): 2021-03-26 21:05:15,349 - Model - INFO - Train Instance Accuracy: 0.781606 2021-03-26 21:05:51,538 - Model - INFO - Test Instance Accuracy: 0.803641, Class Accuracy: 0.738575 2021-03-26 21:05:51,538 - Model - INFO - Best Instance Accuracy: 0.803641, Class Accuracy: 0.738575 2021-03-26 21:05:51,539 - Model - INFO - Save model... 2021-03-26 21:05:51,539 - Model - INFO - Saving at log/classification/pointnet2_msg_normals/checkpoints/best_model.pth 我有类似于这样的一段txt文件,请你帮我写一段代码来可视化这些训练结果
02-06

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值