项目二修改 IDEA创建Web项目
本次修改可能会耗费比较长的时间,我就是想把所有的交互都用Ajax来实现,并把以前的写法记录一下。还有一些有用的内容也会记录。我就偶尔有时间就来改改
以前项目用的是Eclipce,这次改为IDEA,因为之前SpringBoot的项目发觉用IDEA好用许多,以后也会一直用的。
再声明一遍IDEA加载WEB项目。
-
new project from existing Source...
-
项目右键进行设置(f12|f4),在Module中需要设置src的目录,并且添加一个facet,也就是WEB,然后需要制定当前项目的web路径在哪儿
-
Run EditConfiguration 添加Tomcat
-
我试了一下还真得设置Artifact,不然页面运行不了。Artifact我不知道有什么用,反正我就将它改为项目名,因为页面访问的时候需要在端口号后/加上项目名,再加你页面的名字。记得得在Tomcat中也添加上你已经设置好了的Artifact。
完事儿
越到要找工作的地步越紧张,因为感觉找工作不仅仅是自己实操的那部分,又需要刷面试题又需要会算法。所以这段时间不仅得学习后面的内容,还得试着去刷LeetCode还得刷面试题,挺头疼的,左顾右盼就停滞不前。
在我印象中,项目二单单用Servlet、JSP,其实是有很多麻烦的地方的,就比如传值,要传递着传值的时候该怎么办,还有就是一个页面显示多种情况的数据怎么办。
实际上,只要每个地方都能判空,给个默认值,就不会出现空参问题。就是如果思路不缜密,比较乱罢了
- 我们写的项目里用的大多是session,最后得在结尾处加一个session.removeAttribute(),其实不好
- 多种情况的数据只能用flag,但组员写的时候经常由于flag传递不当造成500,为空或者什么。就很麻烦
我这就记录一下JSON传递日期格式变形问题,还有Ajax分页
JSON传递日期格式变形
- 取出来的数据
![]()
- 转变为JSON格式后
![]()
- 传给前端
![]()
- 经过这个方法后就能变为正常的时间
function transferTime(cTime){
var jsonDate = new Date(parseInt(cTime));
Date.prototype.format = function (format){
var o = {
"y+": this.getFullYear(),
"M+": this.getMonth()+1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds()
};
if(/(y+)/.test(format)){
format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o){
if(new RegExp("("+k+")").test(format)){
format = format.replace(RegExp.$1, RegExp.$1.length == 1?o[k] : ("" + o[k]).substr("" + o[k].length));
}
}
return format;
};
var newDate = jsonDate.format("yyyy-MM-dd");
return newDate
}
- Ajax,for循环取出时间与事件类型,存入指定的JSON格式,日历只要按这种格式就能显示信息
![]()
Ajax分页
- Oracle用rownum,MySQL用limit
![]()
- Page类(也可以属性中加入一个总页码)
![]()
![]()
用于得到总页数(可能有欠缺的地方) - Servlet
![]()
- Ajax
![]()
![]()
我并没有判断最后一页什么的,加个判断就好了。也可以当最后一页时就让下一页消失掉。
知识离开了脑子,就只是一堆文字











浙公网安备 33010602011771号