发表于: 2017-12-25 21:53:23
1 624
1.JRE: Java Runtime Environment java运行环境。 包含java虚拟机,java基础类库。
JDK:Java Development Kit java开发者工具。 JDK中包含了JRE ,java源码编译器javac,还有其他一些调试分析工具。
如果只需要在电脑上运行java程序,只需要安装JRE即可。 如果要在电脑上开发java程序,需要安装JRE。
根据需求,应该下载JDK。
2.根据任务要求下载 Java Development Kit 7,并安装配置环境。
3.下载安装java集成开发环境软件 intellij IDEA。
4.查询Maven相关内容。
Maven是一个项目构建的工具,有依赖管理功能。暂时搞不懂,项目开始再深究。
5.数据库相关思考题的解答
1.为什么DB的设计中要使用Long来替换掉Date类型?
任务中的描述 ID(自增Long),create_at,update_at(所有的时间都用Long)。
ID为什么不用自增 INT? 这个不懂
create_at,创建时间点根据数据库基本类型应该用DATETIME类型。
update_at,更新时间使用TIMESTAMP(时间戳)有自动更新的功能,一行数据有任何修改,TIMESTAMP会自动更新。
为什么用LONG代替这些数据类型? 可能是为了方便和java数据对接?不懂。
2.自增ID有什么坏处?什么样的场景下不使用自增ID?
没有连续性, 如果有1,2,3条记录,我删除2,那么数据库中就只有1,3,如果再加入一条数据,那么就是1,3,4.。
不适合的场景,分布式。 大量数据同时写入的时候是写入分开的几个数据库,自增id不能保证主键的唯一性。
3.什么是DB的索引,多大的数据量下建索引会有性能的差别,什么样的情况下该对字段建索引?
增加索引可以提高查询效率。
主键,外键,经常查询使用的字段建索引。
4.唯一索引和普通索引的区别是什么,什么时候需要建唯一索引。
唯一索引,列中没有重复项,例如主键。
普通索引,可以有重复项.
唯一索引是普通索引加上唯一约束,插入数据时,唯一索引需要做重复判断,消耗更多时间。查询速度唯一索引大于普通索引。
唯一索引用于需要大量使用查询且不可重复的字段。
5.如果对学员QQ号做了一个唯一索引,在插入数据的时候,是否需要先判断这个QQ号已经存在了?
如果设置了唯一索引,数据库会自动查重,如果存在则报错。
6.CreateAt和UpdateAt的意义分别是创建时间和修改时间,这两个时间应该在什么情况下赋值?是否应该开放给外部调用的接口?
create_at和update_at都在数据第一次插入的时候赋值。
update_at开放调用,数据有修改即自动更改。
7.修真类型应该是直接存储Varchar,还是应该存储int?
修真类型是所有学员必填项,存在大量重复,应该设为外键,存储为int类型。
8.varchar类型的长度怎么确定?有什么样的原则,和Text和LongText的区别是什么?
varchar可变长度字符串,定义的长度只是限制最大长度,定义太长影响性能,尽量在满足需求的情况下小。
和text和longtext的区别还没查清楚。
9.怎么进行分页数据的查询,如何判断是否有下一页?
还没想好,之后再答
10.为什么不可以用Select * from table?
需要得到哪些列就写那些列,负责会影响查询效率。
11.什么是贫血模型,什么是充血模型?为什么我们会强制要求使用贫血模型?
还没想好,之后再答
明天计划:
1.了解一下java语法
收获:
1.关于数据库的思考题,对于数据库相关问题有了进一步理解。数据库是一个大块知识,后面还需要不断在用过程中学习。
2.学会了定义环境变量的方法。
评论