注解积累

阅读: 评论:0

注解积累

注解积累

JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。

  1. //该注解可以将实体类中的null的属性自动忽略
    @JsonInclude(JsonInclude.Include.NON_NULL)
    该注解可以对实现进行注解,注解后该类中出现null的属性时,传递回页面的json中自动忽略在springboot这种也可以通过l配置文件中配置全局自动忽略spring: jackson: default-property-inclusion: non_null
    2。权限
    @RequiresAuthentication
    验证用户是否登录,等同于方法subject.isAuthenticated() 结果为true时。
    @RequiresUser
    验证用户是否被记忆,user有两种含义:
    一种是成功登录的(subject.isAuthenticated() 结果为true);
    另外一种是被记忆的(subject.isRemembered()结果为true)。
    @RequiresGuest
    验证是否是一个guest的请求,与@RequiresUser完全相反。
    换言之,RequiresUser == !RequiresGuest。
    此时Principal() 结果为null.
    @RequiresRoles
    例如:@RequiresRoles(“aRoleName”);
    void someMethod();
    如果subject中有aRoleName角色才可以访问方法someMethod。如果没有这个权限则会抛出异常AuthorizationException。
    @RequiresPermissions
    例如: @RequiresPermissions({“file:read”, “”} )
    void someMethod();
    要求subject中必须同时含有file:read和的权限才能执行方法someMethod()。否则抛出异常AuthorizationException。
    3.@JsonSerialize注解,可以实现date数据转换成long型数据等功能,该注解作用在属性的getter()方法上用于在序列化时嵌入我们自定义的代码,比如序列化一个double时在其后面限制两位小数点。因为在java中日期时期的时间戳是ms,我现在需要将ms转换为s,就需要将ms/1000package com.whf.utils.serializer;

import com.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import java.util.Date;
import java.io.IOException;
/**
*该类可以将data转换成long类型
*/
public class Data2LongSerizlizer extends JsonSerializer {
@Override
public void serialize(Date date, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
//将毫秒值转换成秒变成long型数据返回
jsonGenerator.Time()/1000);
}
//创建时间
@JsonSerialize(using = Data2LongSerizlizer.class )
private Date createTime;
//更新时间
@JsonSerialize(using = Data2LongSerizlizer.class )
private Date updateTime;这样就完成了时间戳13位到10位的转换

4.@JsonFormat注解
通常日期格式都是以时间戳的形式存放在数据库里,当前端页面通过接口查询时,我们会将一个对象的某些属性查出来返回给页面。
给这个对象实体类中的get方法加注解:@JsonFormat(pattern=”yyyy-MM-dd”,timezone=”GMT+8”)
依赖的jar包:jackson-annotations-2.8.5.jar
实例
@JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”, timezone = “GMT+8”)
public Timestamp getCreate_time() {
return create_time;
}

5.首先是controller层:它是负责在页面和程序之间传输数据的,还有作用是做页面跳转。调用具体逻辑层。把数据传入service层。Service层(业务逻辑层):负责的是对数据的处理。如果没有数据处理任务的话,此层只做单纯的数据传递作用,而后又到了DAO层。Mapper层(数据库操作层):负责对数据向数据库增删改查的操作。
在该注册的框架中,如果不使用Spring的话,每个层之间的数据传递都需要new一个调用该层数据的类的实例。而使用了Spring的话,需要做的就是把DAO层和Service层的每个类都写一个接口类,接口类里写实现类的方法,在调用的时候不new对象,直接用对象点(.)方法就可以,别忘了对每个对象加上set/get方法。

SpringBoot
(1)SpringBoot是伴随着Spring4.0诞生的,一经推出,引起了巨大的反向;
(2)从字面理解,Boot是引导的意思,因此SpringBoot帮助开发者快速搭建Spring框架;
(3)SpringBoot帮助开发者快速启动一个Web容器;
(4)SpringBoot继承了原有Spring框架的优秀基因;
(5)SpringBoot简化了使用Spring的过程;
(6)Spring Boot为我们带来了脚本语言开发的效率,但是Spring Boot并没有让我们意外的新技术,都是Java EE开发者常见的额技术。
5、服务器是如何实现一个session为一个用户浏览器服务的?
服务器创建session出来后,会把session的id号,以cookie的形式回写给客户机,这样,只要客户机的浏览器不关,再去访问服务器时,都会带着session的id号去,服务器发现客户机浏览器带session id过来了,就会使用内存中与之对应的session为之服务。
6、JDBC
SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范(接口),称之为JDBC。这套接口由数据库厂商去实现,这样,开发人员只需要学习jdbc接口,并通过jdbc加载具体的驱动,就可以操作数据库。

本文发布于:2024-01-28 16:41:45,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17064313068808.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:注解
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23