发表于: 2019-11-08 23:25:56

1 1179


今天完成的事情:

在jsp新增一个fmt标签

格式化数字

格式化时间

注意,此时,value必须是date类型的数据,不适合long转成date.

数据库里存储的是bigint型的时间,entity实体中存放的是long类型的标签,现在想输出到jsp页面,由于使用的是jstl标签,而要显示的是可读的时间类型,找来找去有个 fmt:formatDate可以转化,但是只能将String类型的转成date型,long型则不可以,觉得自定义标签比较靠谱,也不破环jsp页面这种标签结构,参考网上jstl标签编写方法,如下:

写一个类继承TagSupport,实现doStartTag() 方法。 

 编写tld文件,datetag.tld,放在/WEB-INF/tld/目录下:

在web.xml引用

jsp-config>
 <taglib>
   <taglib-uri>/tags</taglib-uri>
   <taglib-location>/WEB-INF/tld/datetag.tld</taglib-location>
 </taglib>
</jsp-config>

然后在jsp就可以使用了

运行结果

部署服务器

明天计划的事情:开始任务五
遇到的问题:使用C标签的if循环踩到坑,后直接改用了三个if循环来区分开发方向。。。前端的东西还是不太懂,稍微摆错一个标签就乱得不行
收获:

学会用Tag标签来处理时间的转换


任务四深度思考

1.JSP是什么?JSP中可否直接连接数据库?为什么现在不推荐使用%%来写JSP的代码,而是使用C标签?

JSP,Java服务器页面,相当于一个简化的servlet,可以理解为html(静态页面)和java代码(动态数据)的结合;

Jsp可以直接连接数据库,jsp中的java脚本块---就是java代码,在<%%>中进行连接;

mvc思想的出现,目的就是为了降低耦合性,将html代码和java代码分离;通过c标签和EL表达式,在结合mvc框架,可以实现java脚本块<%%>的作用;

2.Html有哪些常用的标签,CSS有几种引用方式,JS应该在顶部还是应该在底部加载? 

html常用标签: <h1>-<h6>、 <p>、 <a>、 <img>、 <form>( <input>)、<br/>、<ol><li>、<ul><li>

css:
(1)行内样式;直接跟在相应的标签中
(2)内部样式表(把css代码写在head部分中的style标签内);
(3)外部样式表( CSS代码保存在扩展名为.css的样式表中,通过链接式或导入式引入)

3.SEO是什么,后端在用JSP的方式输出页面时,可以做的SEO优化有哪些?

SEO(Search Engine Optimization)汉译为搜索引擎优化,利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名;
优化的内容:网站url、title信息、meta信息、图片alt、flash加注释信息
除了第一点,其他内容相当于将关键的内容,放在相应的位置,尽量通过文字信息加注释;
也就是后端主要是做一个网站url的优化

4.Tiles现在的版本是多少?Template,Attribute,Definition,ViewPreparer分别是什么? 

Tiles最新版本3.0.8,最后发布时间2017-10-31;
Template(模板),即页面布局,确定各个页面模块的分布;
Attribute(属性),Template中添加的内容
Definition(定义),通过xml文件,填入各部分具体的内容;
ViewPreparer,Tiles提供的公共接口,其中的execute方法会在defintion渲染之前执行;实现该接口的类为视图预备类;

5.Tiles有什么用处,为什么要用Tiles,如果不使用Tiles,可以实现公共部分的复用吗?

Tiles是一种JSP布局框架,主要目的是将复杂的jsp页面分隔成部分,然后将各个模块组合成一个完整的页面;便于对页面的各个机能的变更及维护,并且更容易实现代码的重用。
可以通过<c:import>标签引入页面、JSP的 include指令:包含其他文件

6.套页面的前后端协作方式中,怎么传递参数给前端JS?怎么控制页面之间的跳转?  

model和ModelAndView

拦截器拦截跳转请求

7.Velocity,Freemark是什么,和JSP的区别在哪里?推荐使用哪种模板语言?

Velocity、Freemark、Jsp同为java领域的表现层技术;其他两者的出现是在mvc思想出现之后,而产生的替代jsp的模板语言;本质上还是为套页面的开发方式而服务的。
最大的区别应该在于jsp由java脚本和html代码共同组成;其他两者实现严格的mvc分离。
还有jsp为官方标准、用户群广;毕竟出来的早,其他只是替代品,而且jsp也没有明显的缺点,再加上前后端分离的出现;重点可能不在这里。

8.EL表达式是什么?常用的EL表达式有哪些?

EL表达式(JSP表达式语言),目的替代java代码块访问JavaBean中的数据的功能,是jsp写起来更简单,mvc+jsp标签+EL表达式-----去替代jsp中的java代码部分。
语法规则${ } ;主要的使用还是通过EL中的隐含对象来获取对应的值

9.C标签又是什么?怎么写一个自定义的标签?自定义的标签通常有什么用处?

JSP标准标签库JSTL,一个jsp标签的集合;其中的核心标签就是c标签:主要功能包括循环、分支、表达式控制、URL操作(重定向等)
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
自定义标签:
(1)通过重写SimpleTagSupport中的doTag()方法(处理标签的java类,也就是要实现的功能);
通过.tld文件创建标签库
最后在jsp中,通过
<%@ taglib prefix="?" uri="WEB-INF/?.tld"%>引入使用。
(2) 自定义的函数,不需要重写doTag()方法,但类中的方法要为static;
自定义标签:通过自定义标签实现类来实现复杂的、可重复利用的功能。

10.套页面和前后端分离的方式有什么区别,应该在哪种情况下选用哪种解决方式?

套页面:前端写好页面,后端进行整合为jsp,
前后端分离:通过restful风格接口,传递json;后端只提供接口,前端进行整合调试
套页面得要前端把页面写出来后端才可工作,前后端是写好接口文档就开始同时按照接口文档工作。套页面的使用场景应该是在前端已经发布之后,需要修改部分功能,后端保证前端页面不变的情况下,通过套页面增加功能。前后端分离就是同时进行开发


个人脑图



返回列表 返回列表
评论

    分享到