发表于: 2017-11-18 23:13:28
1 685
今天完成的任务:
一、看看培宇大佬以前的视频
1.maven管理依赖的方法,怎么处理依赖冲突。
因为依赖包是有传递性的,所以某个依赖里面可能会包含几个不同的其他包,这些包在maven中又会重复引用,这样就会产生冲突。解决办法就是使用maven自带的digram,去排除掉冲突的依赖。
2需要掌握的工具。
maven,web容器,svn,linux,分布式等等。。。
二、开始回顾任务。
任务一:
数据库,mysql,除了常用的增删改查,一定还是要了解复杂的sql语句的,比如什么连表查询,等。还有一个重要的设计DB,需要自己想清楚表的结构,怎么去设计数据表。可能影响数据库效率的方法。索引的原理需要再去看看。
然后就是jdbc,mybatis,Spring,操作数据库实现增删改查,这一块还是很重要的,毕竟几乎每个项目都会用到数据库。
最后是服务器,学习使用linux系统。
任务二:
rest风格,学习使用springmvc,使用tomcat,jetty,postman工具。
这里面springmvc配置文件,监听器,过滤器,servlet执行的先后流程。
任务三:
学习使用linux系统,学会在服务器上使用不同的web容器,会写启动,发布的脚本,还有统计访问时间的脚本,学会使用nginx。
任务四:
动态界面,使用tiles来复用。
学习tiles几种不同的使用方法。
学会tag标签使用。
任务五:
cookie 和session的内容。
任务六:
压力测试要学会使用jmeter来测试项目的性能。
memcached,redis缓存。缓存的使用。
任务七:
第三方API的使用。主要是要学会去怎么看文档,怎么将API使用到项目里面?
任务八:
RMI框架。这里了解的还是不够,需要再去自己做加深记忆。
任务九:
tuscany框架怎么使用。怎么实分布式的项目。
回顾了一波任务,发现前面还是有一些知识自己没有掌握好的,还是需要继续学习,然后买的书也要看起来了。有空看一看官网上面的计算机网络视频啥的。基础知识还是要好好补补啊。。
三、复习一波sql语句。
分类 | sql语句 | 说明 |
创建表 | create table student ( id int(10) NOT NULL auto_increment primary key, name varchar (20) NOT NULL, age int(10) NOT NULL DEFAULT 1, sex varchar(10) NOT NULL ); | auto_increment 自增 primary key 主键 default 1 代表不输入值的话就默认使用1来作为值 |
插入数据 | insert into student (id,name,age,sex) values ("null","chenhao","10","男"); | 插入一条信息。 |
删除数据 | delete from student where id=1; | 删除一条数据 |
更新数据 | update student set name='chen',age=10; | 一定要有where 不然会更新整个表 |
简单查询 | select *from student ; | 从表中查询所有数据 |
select id,name from student; | 查询Id,name列(可以换成其他列) | |
对结果进行排序 | select id ,name from student ORDER BY id; | 根据id来排序查找到的数据。 |
select id ,name,age from student ORDER BY 2,3; | 根据选出来的2,3列进行排序。 | |
select id from student ORDER BY id DESC; | DESC表示降序排列 | |
select id,name,age from student ORDER BY id , name DECS; | 同时根据id升序排列,按姓名降序排列。 | |
上面的排序ORDER BY默认是升序的排列,使用降序需要用DESC。另外如果有两列在排序,那先按照第一列排,第一列排序后相同的部分再按照第二列排。 | ||
使用关键字来筛选 | select DISTINCT id from student | 查询id列,id相同的只返回一个。 |
select id from student where id=1; (id=1可以替换为id<10,id<>1, id!=1, is null) | 有条件的查询。 | |
select id from student where id BETWEEN 2 AND 10; | 查找id在2和10 之间的数据。 | |
select *from student where id=1 AND name='chen' AND age<10; | 使用AND连接几个条件查询 | |
select *from student where id=1 OR name='chen' OR age<10; | 使用OR达到“并”的效果。查找满足三个条件中任意一个的数据 | |
And比or优先级高。可以使用()来控制先后。 | ||
模糊查询,使用通配符 | select *from student where id IN(1,2); | 与OR的作用相同,但是查询速度更快 |
select *from student where name LIKE 'chen%'; | 查询以chen开头的数据,%写在前后中间都行。 | |
select *from student where name='_hen'; | 下划线代表匹配一个字符,可以写多个。 | |
select *from student where name like '[jm]'%; | 这句话是匹配所有以j或者m开头的数据,[]表示匹配括号中任意字符。 | |
上面[]否定的格式是[^jm]。另外因为使用通配符会影响查询的速度。所以自己权衡吧。 | ||
计算查询结果 | select AVG(age) as avgage from student; | 使用AVG()计算平均年龄。avgage是一个别名作为平均年龄 |
select COUNT(*) from student; | 查询到表中所有的行 | |
select COUNT(name) from student; | 查询表中name不为空的行数 | |
select MAX(age) from student; select MIN(age) from student; | 表里面年龄最大(最小)的一个。 | |
select COUNT(*) as num, MAX(age) as maxage, AVG(age) as avgage from student; | 可以组合起来一起使用。 | |
select age ,COUNT(*) AS agenum from student GROUP BY age; | 使用GROUP BY语句来查询出每一个年龄对应的学生人数。一般用在汇总计算时候 | |
联表查询 | select age from student where id IN (select id from studentbook where bookname='chinese'); | 使用IN来嵌套查询,首先查到有语文书学生的id,再根据id查到学生的年龄。实际上是执行了两条sql语句,然后也可以嵌套三个,但是为了查询效率,不要写太多 |
select name ,book_name ,prise from student,student_book where student.id=student_book.id; | 通过学生id来查询出两个表里面学生姓名对应的书名和价格。 这个查询也是可以使用上面提到的IN来完成。 |
明天计划:
看一下公司的框架是咋回事儿
看一下复盘项目有啥东西可以先开始的(可能还得等几天前端)。
遇到问题:
暂时没有。
收获:
复习了sql语句。
回顾了一下任务,找到了一些自己掌握不好的地方。每天抽点时间去补一下。。
评论