csdn_cover项目总结

来源:互联网 发布:掌阅软件下载 编辑:程序博客网 时间:2024/06/15 09:21

模仿csdn开发了一个博客网站,使用了servlet,jsp,jdbc,ajax等技术

总结下csdn_cover项目开发过程中遇到的各种小问题及注意的地方:
1.把项目部署在linux上之后,报错csdn_cover.User表找不到,是因为linux里表名大小写敏感,解决方法:
vi /etc/mysql/my.cnf (我的是树莓派的2017-04-10-raspbian-jessie-lite系统,不同系统的路径可能不同)
在[mysqld]下添加一行

lower_case_table_names=1

2.数据的自动删除与更新
本项目创建了4张表 article,user,comment,classfication
article创建外键约束,comment创建外键约束,classfication创建外键约束

alter table article add constraint fk_key foreign key(userId) references user(userId) on delete cascade on update cascade;alert table comment add constraint fk_key foreign key(articleId) references article(articleId) on delete cascade on update cascade;alert table classfication add constraint fk_key foreign key(articleId) references article(articleId) on delete cascade on update cascade;

3.java和mysql日期相互转换
java mysql
java.sql.Timestamp <> datetime
java.sql.Date <> date

DateFormat df = DateFormat.getDateTimeInstance();java.util.Date d = df.parse(" 2017-06-01 12:05:30".trim());Timestamp timestamp = new Timestamp(d.getTime());

4.java.lang.IllegalStateException: Cannot call sendRedirect() after the response has been committed
个人理解:<%…%>里面的内容属于tomcat生成的对应的class的一个方法,因此在执行完一个response.sendRedirect()方法后会接着执行下一个response.sendRedirect()方法,因此会报错,解决方法:
在每个response.sendRedirect()方法后添加return;
5.servlet生存周期
初始化阶段:servlet容器调用servlet的init()方法(该方法只调用一次),响应用户请求阶段:调用servlet的service()方法,终止阶段:应用关闭,调用servlet的destroy()方法

原创粉丝点击