团队作业(五):冲刺总结(二)
团队作业(五):冲刺总结(二)
项目:电子公文传输系统
今日任务安排:每个组员根据昨天所认领的任务,对各自模块深入学习,同时,在大家都有空的时间,共同展开windows sql,tomcat,eclipse软件的学习,互相指导帮助,在完成自己的学习任务至于,对其他成员的版块进行一定程度学习,着重于bootstrap架构及JDBC数据库处理,同时学习一些java语法,css样表语法等。
昨日任务完成情况如下:
姓名 | 任务 | 完成情况 |
---|---|---|
20191325施羿 | windows sql数据库 | 75% |
20191323王予涵 | serverlet学习,bootstrap学习 | 77% |
20191330雷清逸 | java script学习,bootstrap学习 | 89% |
20191304商苏赫 | JDBC学习 | 67% |
20191314徐汇仁 | serverlet学习 | 92% |
遇到的问题:
1.java通过JDBC连接MySql数据库方法
2.出现错误java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
注意sql语句如果是查询,用executeQuery(),要对表产生修改的话则使用executeUpdate()
3.选取前N条数据时,sqlserver数据库用select top n from table order by class desc,而mysql数据库使用select * from table order by class desc limit n
4.sum()求和函数,注意sum和括号之间不能有空格
5.将一张大表分割成几个小表:CREATE TABLE weibo1 SELECT * FROM weibo ORDER BY mid LIMIT 1,3000000;
出现错误:[Err] 3 - Error writing file 'C:\Windows\TEMP\MY29' (Errcode: 28)。解决方案参见:www.111cn.net/database/mysql/45657.htm。我的问题是因为C盘空间不足
6.向量的定义。向量初始化不能使用Vector
7.ArrayList和Vector的区别:Vector是同步的, 而ArrayList不是,因为Vector是同步的, 所以它是线程安全的。同样, 因为Vecotr是同步的, 所以他需要额外的开销来维持同步锁, 所以它要比ArrayList要慢.(理论上来说)
Vector允许用户设置capacityIncrement这样在每次需要扩充数组的size的时候, Vector会尝试按照预先设置的capacityIncrement作为增量来设置, 而ArrayList则会把数组的大小扩大一倍;如果capacityIncrement设为0或者负值, Vector就会做和ArrayList一样, 每次都将数组大小扩大一倍.
8.java.lang.OutOfMemoryError: Java heap space异常。因为要选择的表太大了,造成内存溢出。参考http://my.oschina.net/cimu/blog/175691。更改参数,在eclipse.ini中增加:
学习总结
serverlet
Servlet 生命周期
- Servlet 初始化后调用 init () 方法。
- Servlet 调用 service() 方法来处理客户端的请求。
- Servlet 销毁前调用 destroy() 方法。
init() 方法
init 方法被设计成只调用一次。它在第一次创建 Servlet 时被调用,在后续每次用户请求时不再调用。因此,它是用于一次性初始化,就像 Applet 的 init 方法一样。
service() 方法
- service() 方法是执行实际任务的主要方法。Servlet 容器(即 Web 服务器)调用 service() 方法来处理来自客户端(浏览器)的请求,并把格式化的响应写回给客户端。
- 每次服务器接收到一个 Servlet 请求时,服务器会产生一个新的线程并调用服务。service() 方法检查 HTTP 请求类型(GET、POST、PUT、DELETE 等),并在适当的时候调用 doGet、doPost、doPut,doDelete 等方法。
doGet() 方法
GET 请求来自于一个 URL 的正常请求,或者来自于一个未指定 METHOD 的 HTML 表单,它由 doGet() 方法处理。
doPost() 方法
POST 请求来自于一个特别指定了 METHOD 为 POST 的 HTML 表单,它由 doPost() 方法处理。
destroy() 方法
destroy() 方法只会被调用一次,在 Servlet 生命周期结束时被调用。destroy() 方法可以让您的 Servlet 关闭数据库连接、停止后台线程、把 Cookie 列表或点击计数器写入到磁盘,并执行其他类似的清理活动。
使用 Servlet 读取表单数据
Servlet 处理表单数据,这些数据会根据不同的情况使用不同的方法自动解析:
- getParameter():您可以调用 request.getParameter() 方法来获取表单参数的值。
- getParameterValues():如果参数出现一次以上,则调用该方法,并返回多个值,例如复选框。
- getParameterNames():如果您想要得到当前请求中的所有参数的完整列表,则调用该方法。
javascript
JavaScript中的数据类型其实都是一个个js对象,比如String、Data、Array等等,对象只是带有属性值和方法的数据类型。访问对象的属性值或者方法都只需要用这样的语句即可:var_name.memberName; 下面给出一些对象中的一些属性及其方法:
字符串对象:
字符串(String)使用长度属性length来计算字符串的长度。
字符串使用 indexOf() 来定位字符串中某一个指定的字符首次出现的位置,如果没找到对应的字符函数返回-1;
match()函数用来查找字符串中特定的字符,并且如果找到的话,则返回这个字符,如果没有找到则返回null。
replace() 方法在字符串中用某些字符替换另一些字符。
字符串大小写转换使用函数 toUpperCase() / toLowerCase()。
明日任务如下:
姓名 | 任务 |
---|---|
20191325施羿 | 数据库,JDBC |
20191323王予涵 | 前端设计,bootstrap,serverlet |
20191330雷清逸 | 前端设计,bootstrap,jsp |
20191304商苏赫 | 后端设计;JDBC;serverlet |
20191314徐汇仁 | 后端设计,接口整合 |