发表于: 2017-07-22 21:11:06

2 1034


今天完成的事情:

1.把所有的System的输出全部改为log4j的日志

2. 重新设计数据库,试试看代码里要改什么

3.数据库中varchar和char的区别

4. 在什么地方加try,catch和注释

5. 为什么不用SELECT * 



明天计划的事情:

1.进行异常抓取

2.根据验收标准规范代码

3. Annotation方式去配置数据库

4.配置本地Host来配置DB连接文件

5.深度思考,收尾任务一


遇到的问题:

1.在引用类时,不需要实例化对象就可以用吗?

 不实例化对象调用的是静态方法,不属于类对象,属于类本身

2.数据库中create_at和update_at是交给数据库触发器来填充还是由代码来填充比较好?

   待解决



收获:

1. 把所有的System的输出全部改为log4j的日志

   关于日志的输出,在什么地方输出日志:

 控制台输出

  logger.info("\n\n测试查找");

关键对象(对象集合,单个对象)

List<StudentMod> studentList = studentMapper.studentName();
logger.info("List<StudentMod>:size" + studentList.size());

关键变量

int i = studentMapper.studyUpdate(studentMod4);
 logger.info("返回修改行数"+ i);

接入方法参数打印

studentMod = studentMapper.studySelect(studentMod);
logger.info("查询参数"+ studentMod.toString());


 2. 重新设计数据库,试试看代码里要改什么

 首先要改StudentMod的类成员变量和相关的set和get方法, 以及自定义的构造方法

 接口处传入的参数,和mybatis的sql语句中的插入语句

main中的Mod中的使用的set方法


3. 数据库中varchar和char的区别

char长度是固定的,而varchar长度是可变的
例如char(10)何varchar(10)
同样存储字符串“qwe”,本身为3个字节
char存储要占10个字节,3字节的字符和7字节的空字符
varchar则只需要3个字节和 存储信息长度

char的执行效率比varchar高,varchar比char省空间


什么时候用char,什么时候用varchar?
例如存储一些不经常改动或作为查询条件的属性用varcher(职业名称)
如果存储一些很短的字段,则用char,因为varchar加上 存储信息长度就比char占空间



4. 在什么地方加try,catch和注释

异常语句块
关键地方加

例如:

数据库的连接和sql执行和返回

cach(SQLException e){
logger. WARN(关键对象/参数:studentMod.toString())
  }

cach(IOException e{

})//文件读取异常

cach(Exception e){

}


关于注释,在以下地方加注释

常量://
类与方法/**
关键语句//




5. 为什么不用SELECT * 

数据库需要把 * 转化为表中的属性,查数据字典会增大开销

不需要的字段会增加数据传输的时间

大字段,例如很长的 text,当长度超过 728 字节的时候,会另外找地方存储数据

select * 数据库需要解析更多的 对象,字段,权限,属性,索引相关等



参考资料:

师兄的ppt:不用SELECT * 的八个原因




ps:任务一收尾要加快进度



返回列表 返回列表
评论

    分享到