发表于: 2021-03-19 23:12:25
6 1315
一,今天完成的事情
完成任务一21-29
1,我代码中的连接池是在
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
然后最终和
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
一起使用
2,有索引和无索引,并且命令找的就是配置了key的效率测试。100万条数据。
name上无索引
加上name索引
删除name上的索引
100万条中间少了0.33秒查找时间。
3,Mybatis插入返回ID。主键,且是自增ID才能使用。
insert into中加入selectKey
dao
测试代码没setId
但是插入成功后,student对象有了id。成功
4,删除返回true false。
Mybatis删除有关的源码,返回值是影响的条数int。处理数值,java的int不论是转成boolean 还是Boolean都会报错。所以如下:
dao设置有返回值
@Delete("DELETE FROM student WHERE id = #{id}")
int deleteStudentBol(long id);
传到测试,运行根据数值判断真假
public boolean mainTestDeleteStudent(StudentDao studentDao) {
long id = 3L;
int bol = studentDao.deleteStudentBol(id);
Student getStudent = studentDao.getStudent(3L);
System.out.println("null student original: " + getStudent);
System.out.println("mainTestDeleteStudent: " + bol);
if( bol <=0 ) {
return false;
}
return true;
}
5,远程使用linux。我选用的是阿里云CentOS 8系统。CentOS资源多,一般会认为(我要我认为)适合做web服务器。
阿里云也自带可以在网页远程登录的工具。万一没有SHELL软件。
选用XSHELL登录。家庭版里面还有XFTP,FTP和远程服务器交互经常需要实用,果断也打钩,同意,下载,安装。
下载MySQL8,解压。
配置,安装MySQL,在配置的log文件中找到最开始的临时密码。登录成功
阿里云添加mysql接口
检查我远程服务器没有防火墙,不用再设置
我允许MySQL root也能被远程登录。自己用,不创造别的用户。
Navicat新建连接Mysql,主机是云服务器公网地址。填入云服务器用户名和密码。连接。之后也要使用Mysql账户名密码。
新建远程数据库,还是设置字符集。需要和本地运行过的jar包的数据库同名。
之后的报告才会把需要用的表上传。
二,今天问题:
写了单词“test”在日报的代码链接中。测试显示情况,不是提交。
最开始配置的MySQL,因为它是这次总共3个要配置的产品中可以配置的地方最多的。我MySQL想稍微多做配置,结果有时候没有看好当前位置,就用了命令,做了配置,第一次发现错了,不能运行。这种情况重装还更快。所以重新装了一次本服务器用的Linux系统。再装了一次MySQL。
三,今天的收获:
有索引和无索引,并且命令找的就是配置了key的效率,索引明显更快。
划算价格购入阿里云,配置。如果需要运行我带pom.xml的jar包,需要配置java环境至少是运行环境,maven环境,因为用的是MySQL,还需要在Linux配置MySQL。
今天配置好了的是MySQL。
选用的都是2018年及以后产品,不是最新版本,都已经稳定。高版本有更多功能,一般能兼容低版本。比如CentOS 8也是有生命周期的,使用的人不止我一个,如果遇到问题总能找到解决办法。
Release | Release date | End of life |
CentOS 8 | September 24, 2019 | May 31, 2029 |
多用pwd没有错。
本地Navicat连接远程linux上的数据库成功。
四,明天的计划:
继续完成任务一21-29。
评论