当前位置: 首页 > news >正文

做外贸有哪些网站平台最近文章 wordpress

做外贸有哪些网站平台,最近文章 wordpress,俄语网站推广,昆明网站建设方案优化#x1f3c6;作者简介#xff1a;哪吒#xff0c;CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家#x1f4aa; #xff0c;专注Java硬核干货分享#xff0c;立志做到Java赛道全网Top N。 #x1f3c6;本文收录于#xff0c;Java基础教程系… 作者简介哪吒CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家 专注Java硬核干货分享立志做到Java赛道全网Top N。 本文收录于Java基础教程系列目前已经700订阅CSDN最强Java专栏包含全部Java基础知识点、Java8新特性、Java集合、Java多线程、Java代码实例理论结合实战实现Java的轻松学习。 姐妹篇Java基础教程入门篇包含面向对象、基本数据类型、数组、继承和多态、泛型、枚举等Java基础知识点。 姐妹进阶篇Java基础教程进阶篇包含Java高并发、Spring、MySQL等Java进阶技术栈。 全部订阅可加入Java学习星球完成Java从入门、实战、进阶全方位的Java知识体系学习。 目录 一、前言 1、xml和注解的最佳实践 2、使用注解唯一需要注意的就是必须开启注解的支持 二、Spring的常用注解 1、给容器中注入组件 2、注入bean的注解 3、JsonIgnore 4、初始化和销毁方法 5、Java配置类相关注解 6、切面AOP相关注解 7、Bean的属性支持 8、Value注解 9、环境切换 10、异步相关 11、定时任务相关 12、Enable***注解说明 13、测试相关注解 14、EqualsAndHashCode 15、XmlAccessorType 16、SuppressWarnings 三、SpringMVC常用注解 1、EnableWebMvc 2、Controller 3、RequestMapping 4、ResponseBody 5、RequestBody 6、PathVariable 7、RestController 8、ControllerAdvice 9、ExceptionHandler 10、InitBinder 11、ModelAttribute 12、Transactional  四、其它注解 1、JsonIgnore 2、Schema 五、json常用注解 1、JsonIgnoreProperties 2、JsonIgnore 3、JsonFormat 4、JsonSerialize 5、JsonDeserialize 6、Transient 7、JsonIgnoreType 8、JsonProperty 9、只在序列化情况下生效的注解 10、在反序列化情况下生效的注解 一、前言 最近在看B站颜群老师的课程JavawebspringspringMVCmybatisspring高级一路走来跌跌撞撞发现spring也不过尔尔说白了spring就是想尽办法将new做的更简单更完美更可配置。 Spring的一个核心功能是IOC就是将Bean初始化加载到容器中Bean是如何加载到容器的可以使用Spring注解方式或者Spring XML配置方式。 Spring注解方式减少了配置文件内容更加便于管理并且使用注解可以大大提高了开发效率 注解本身是没有功能的和xml一样注解和xml都是一种元数据元数据即解释数据的数据也就是所谓的配置。 1、xml和注解的最佳实践 xml用来管理bean注解只负责完成属性的注入 2、使用注解唯一需要注意的就是必须开启注解的支持 ​context:component-scan base-packagecom.guo/context:component-scan context:annotation-config/ 二、Spring的常用注解 1、给容器中注入组件 1包扫描组件标注注解 Component泛指各种组件 Controller、Service、Repository都可以称为Component。 Controller控制层 Service业务层 Repository数据访问层 2Bean 导入第三方包里面的注解 3Import Import(要导入到容器中的组件) Import({Color.class, MyImportSelector.class, MyImportBeanDefinitionRegistrar.class}) public class MainConfig2 {Scope(prototype)Bean(person)public Person person() {System.out.println(我是Person);return new Person(素小暖,25);} } ImportSelector返回需要导入的组件的全类名数组 public class MyImportSelector implements ImportSelector {//返回值就是导入容器的组件全类目// AnnotationMetadata 当前标注Import注解的类的所有注解信息public String[] selectImports(AnnotationMetadata importingClassMetadata) {//importingClassMetadata.getreturn new String[]{com.atguigu.bean.Blue,com.atguigu.bean.Red};} } ImportBeanDefinitionRegistrar手动注册bean到容器中 public class MyImportBeanDefinitionRegistrar implements ImportBeanDefinitionRegistrar {/** AnnotationMetadata当前类的注解信息* BeanDefinitionRegistryBeanDefinition注册类* 把所有需要添加到容器中的bean调用BeanDefinitionRegistry.registerBeanDefinition手动注入** */public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {boolean definition registry.containsBeanDefinition(com.atguigu.bean.Red);boolean definition2 registry.containsBeanDefinition(com.atguigu.bean.Blue);if(definition definition2){//指定bean定义信息bean的类型bean的scopeRootBeanDefinition rootBeanDefinition new RootBeanDefinition(RainBow.class);//注册一个bean指定bean名registry.registerBeanDefinition(rainBow,rootBeanDefinition);}} } 4使用spring提供的FactoryBean工厂Bean 默认获取到的是工厂Bean调用getObject创建的对象要获取工厂Bean本身需要在id前面加一个 Bean public ColorFactoryBean colorFactoryBean(){return new ColorFactoryBean(); } //创建一个spring定义的FactoryBean public class ColorFactoryBean implements FactoryBeanColor {//返回一个Color对象并将Color添加到容器中public Color getObject() throws Exception {System.out.println(ColorFactoryBean,getObject());return new Color();}public Class? getObjectType() {return Color.class;}public boolean isSingleton() {return false;} } 2、注入bean的注解 Autowired由bean提供 Autowired可以作用在变量、setter方法、构造函数上有个属性为required可以配置为false Inject由JSR-330提供 Inject用法和Autowired一样。 Resource由JSR-250提供 Autowired、Inject是默认按照类型匹配的Resource是按照名称匹配的Autowired如果需要按照名称匹配需要和Qualifier一起使用Inject和Name一起使用。 Primary 让spring进行自动装配的时候默认使用首选的bean和Qualifier一个效果。 3、JsonIgnore 1作用 在json序列化时将java bean中的一些属性忽略掉序列化和反序列化都受影响。 2使用方法 一般标记在属性或者方法上返回的json数据即不包含该属性。 3注解失效 如果注解失效可能是因为你使用的是fastJson尝试使用对应的注解来忽略字段注解为JSONField(serialize false)使用方法一样。 4、初始化和销毁方法 1通过Bean(initMethodinit,destoryMethoddestory)方法 2通过bean实现InitializingBean来定义初始化逻辑DisposableBean定义销毁逻辑 3可以使用JSR250PostConstruct初始化方法PreDestory销毁方法。 4BeanPostProcessorbean的后置处理器在bean初始化前后进行一些处理工作 postProcessBeforeInitialization在初始化之前工作 postProcessAfterInitialization在初始化工作之后工作 5、Java配置类相关注解 Configuration 声明当前类为配置类 Bean 注解在方法上声明当前方法的返回值为一个bean替代xml中的方式 ComponentScan 用于对Component进行扫描 6、切面AOP相关注解 Spring AOP详细介绍 Spring支持AspectJ的注解式切面编程。 Aspect 声明一个切面 After 在方法执行之后执行方法上 Before 在方法执行之前执行方法上 Around 在方法执行之前与之后执行方法上 PointCut 声明切点 在java配置类中使用EnableAspectJAutoProxy注解开启Spring对AspectJ代理的支持 7、Bean的属性支持 Scope设置类型包括 设置Spring容器如何新建Bean实例方法上得有Bean ① Singleton 单例,一个Spring容器中只有一个bean实例默认模式, ② Protetype 每次调用新建一个bean, ③ Request web项目中给每个http request新建一个bean, ④ Session web项目中给每个http session新建一个bean, ⑤ GlobalSession 给每一个 global http session新建一个Bean实例 8、Value注解 1支持如下方式的注入 注入普通字符注入操作系统属性注入表达式结果注入其它bean属性注入文件资源注入网站资源注入配置文件 2Value三种情况的用法。 ${}是去找外部配置的参数将值赋过来#{}是SpEL表达式去寻找对应变量的内容#{}直接写字符串就是将字符串的值注入进去 9、环境切换 Profile 指定组件在哪个环境的情况下才能被注册到容器中不指定任何环境下都能注册这个组件。 Conditional 通过实现Condition接口并重写matches方法从而决定该bean是否被实例化。 10、异步相关 EnableAsync 配置类中通过此注解开启对异步任务的支持 Async 在实际执行的bean方法使用该注解来声明其是一个异步任务方法上或类上所有的方法都将异步需要EnableAsync开启异步任务 11、定时任务相关 EnableScheduling 在配置类上使用开启计划任务的支持类上 Scheduled 来申明这是一个任务包括cron,fixDelay,fixRate等类型方法上需先开启计划任务的支持 12、Enable***注解说明 这些注解主要是用来开启对xxx的支持 EnableAspectAutoProxy开启对AspectJ自动代理的支持EnableAsync开启异步方法的支持EnableScheduling开启计划任务的支持EnableWebMvc开启web MVC的配置支持EnableConfigurationProperties开启对ConfigurationProperties注解配置Bean的支持EnableJpaRepositories开启对SpringData JPA Repository的支持EnableTransactionManagement开启注解式事务的支持EnableCaching开启注解式的缓存支持 13、测试相关注解 RunWith 运行器Spring中通常用于对JUnit的支持 ContextConfiguration 用来加载配置配置文件其中classes属性用来加载配置类。 RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations {classpath*:/*.xml}) public class CDPlayerTest {} ContextConfiguration这个注解通常与RunWith(SpringJUnit4ClassRunner.class)联合使用用来测试。 ContextConfiguration括号里的locations {classpath*:/*.xml}就表示将classpath路径里所有的xml文件都包括进来自动扫描的bean就可以拿到此时就可以在测试类中使用Autowired注解来获取之前自动扫描包下的所有bean。 14、EqualsAndHashCode 任意类的定义都可以添加EqualsAndHashCode注解让lombok帮你生成equals(Object other)和hashCode()方法的实现。默认情况下会使用非静态和非transient型字段来生成但是你也通过在字段上添加 EqualsAndHashCode.Include 或者EqualsAndHashCode.Exclude 修改你使用的字段甚至指定各种方法的输出。或者你也可以通过在类上使用 EqualsAndHashCode(onlyExplicitlyIncluded true) 且在特定字段或特定方法上添加 EqualsAndHashCode.Include 来指定他们。 如果将EqualsAndHashCode添加到继承于另一个类的类上这个功能会有点棘手。一般情况下为这样的类自动生成equals和hashCode方法是一个坏思路因为超类也有定义了一些字段他们也需要equals/hashCode方法但是不会自动生成。通过设置callSupertrue可以在生成的equals和hashCode方法里包含超类的方法。对于hashCode·super.hashCode()·会被包含在hash算法内而对于equals如果超类实现认为它与传入的对象不一致则会返回false。注意并非所有的equals都能正确的处理这样的情况。然而刚好lombok可以若超类也使用lombok来生成equals方法那么你可以安全的使用它的equals方法。如果你有一个明确的超类, 你得在callSuper上提供一些值来表示你已经斟酌过要不然的话就会产生一条警告信息。 当你的类没有继承至任何类非java.lang.Object, 当然任何类都是继承于Object类的而你却将callSuer置为true, 这会产生编译错误译者注 java: Generating equals/hashCode with a supercall to java.lang.Object is pointless. 。因为这会使得生成的equals和hashCode方法实现只是简单的继承至Object类的方法只有相同的对象并且相同的hashCode才会判定他们相等。若你的类继承至另一个类又没有设置callSuper, 则会产品一个告警因为除非超类没有或者没有跟相等相关的字段否则lombok无法为你生成考虑超类声明字段的实现。 15、XmlAccessorType 类级别的注解 定义这个类中何种类型需要映射到XML。 XmlAccessType.FIELD映射这个类中的所有字段到XMLXmlAccessType.PROPERTY映射这个类中的属性get/set方法到XMLXmlAccessType.PUBLIC_MEMBER将这个类中的所有public的field或property同时映射到XML默认XmlAccessType.NONE不映射 16、SuppressWarnings Suppress  抑制镇压废止 Warnings警告  SuppressWarnings(resource)是J2SE 提供的一个批注。该批注的作用是给编译器一条指令告诉它对被批注的代码元素内部的某些警告保持静默。 SuppressWarnings 批注允许您选择性地取消特定代码段即类或方法中的警告。其中的想法是当您看到警告时您将调查它如果您确定它不是问题您就可以添加一个 SuppressWarnings 批注以使您不会再看到警告。 虽然它听起来似乎会屏蔽潜在的错误但实际上它将提高代码安全性因为它将防止您对警告无动于衷 — 您看到的每一个警告都将值得注意。 三、SpringMVC常用注解 1、EnableWebMvc 在配置类中开启Web MVC的配置支持。 2、Controller 3、RequestMapping 用于映射web请求包括访问路径和参数。 4、ResponseBody 支持将返回值放到response内而不是一个页面通常用户返回json数据。 5、RequestBody 允许request的参数在request体中而不是在直接连接的地址后面。放在参数前 6、PathVariable 用于接收路径参数比如RequestMapping(“/hello/{name}”)声明的路径将注解放在参数前即可获取该值通常作为Restful的接口实现方法。 7、RestController 该注解为一个组合注解相当于Controller和ResponseBody的组合注解在类上意味着该Controller的所有方法都默认加上了ResponseBody。 8、ControllerAdvice 全局异常处理全局数据绑定全局数据预处理 ControllerAdvice的常用场景 9、ExceptionHandler 用于全局处理控制器里的异常。 10、InitBinder 用来设置WebDataBinderWebDataBinder用来自动绑定前台请求参数到Model中。 11、ModelAttribute 1ModelAttribute注释方法  如果把ModelAttribute放在方法的注解上时代表的是该Controller的所有方法在调用前先执行此ModelAttribute方法。可以把这个ModelAttribute特性应用在BaseController当中所有的Controller继承BaseController即可实现在调用Controller时先执行ModelAttribute方法。比如权限的验证也可以使用Interceptor等。 2ModelAttribute注释一个方法的参数  当作为方法的参数使用指示的参数应该从模型中检索。如果不存在它应该首先实例化然后添加到模型中一旦出现在模型中参数字段应该从具有匹配名称的所有请求参数中填充。 hellorWord方法的userLogin参数的值来源于getUserLogin()方法中的model属性。 12、Transactional  Transactional 注解放在类级别时表示所有该类的公共方法都配置相同的事务属性信息。EmployeeService 的所有方法都支持事务并且是只读。当类级别配置了Transactional方法级别也配置了Transactional应用程序会以方法级别的事务属性信息来管理事务换言之方法级别的事务属性信息会覆盖类级别的相关配置信息。 Transactional(propagation Propagation.SUPPORTS,readOnlytrue) Service(value employeeService) public class EmployeeService Transactional 注解的属性信息 属性名说明name当在配置文件中有多个 TransactionManager , 可以用该属性指定选择哪个事务管理器。propagation事务的传播行为默认值为 REQUIRED。isolation事务的隔离度默认值采用 DEFAULT。timeout事务的超时时间默认值为-1。如果超过该时间限制但事务还没有完成则自动回滚事务。read-only指定事务是否为只读事务默认值为 false为了忽略那些不需要事务的方法比如读取数据可以设置 read-only 为 true。rollback-for用于指定能够触发事务回滚的异常类型如果有多个异常类型需要指定各类型之间可以通过逗号分隔。no-rollback- for 抛出 no-rollback-for 指定的异常类型不回滚事务。 四、其它注解 1、JsonIgnore 1作用 在json序列化时将java bean中的一些属性忽略掉序列化和反序列化都受影响。 2使用方法 一般标记在属性或者方法上返回的json数据即不包含该属性。 3注解失效 如果注解失效可能是因为你使用的是fastJson尝试使用对应的注解来忽略字段注解为JSONField(serialize false)使用方法一样。 2、Schema schema注解标注在class上表示此类对应的数据库表对应的schema。 可以用如下语句判断某个实体类上是否带有schema注解从而得到schema。 bean.getClass().isAnnotationPresent(Schema.class) 五、json常用注解 1、JsonIgnoreProperties 此注解是类注解作用是json序列化时将java bean中的一些属性忽略掉序列化和反序列化都受影响。 写法将此标签加在user类的类名上 可以多个属性也可以单个属性。 //生成json时将name和age属性过滤 JsonIgnoreProperties({name},{age}) public class user {private String name;private int age; } 2、JsonIgnore 此注解用于属性或者方法上最好是属性上作用和上面的JsonIgnoreProperties一样。 //生成json 时不生成age 属性 public class user {private String name;JsonIgnoreprivate int age; } 3、JsonFormat 此注解用于属性或者方法上最好是属性上可以方便的把Date类型直接转化为我们想要的模式比如 public class User{JsonFormat(pattern “yyyy-MM-dd HH-mm-ss”)private Date date; } 4、JsonSerialize 此注解用于属性或者getter方法上用于在序列化时嵌入我们自定义的代码比如序列化一个double时在其后面限制两位小数点。 5、JsonDeserialize 此注解用于属性或者setter方法上用于在反序列化时可以嵌入我们自定义的代码类似于上面的JsonSerialize 6、Transient 如果一个属性并非数据库表的字段映射就务必将其标示为Transient否则ORM框架默认其注解为Basic 7、JsonIgnoreType 标注在类上当其他类有该类作为属性时该属性将被忽略。 8、JsonProperty JsonProperty 可以指定某个属性和json映射的名称。例如我们有个json字符串为{“user_name”:”aaa”} 而java中命名要遵循驼峰规则则为userName这时通过JsonProperty 注解来指定两者的映射规则即可。这个注解也比较常用。 public class SomeEntity {JsonProperty(user_name)private String userName; } 9、只在序列化情况下生效的注解 JsonPropertyOrder 在将 java pojo 对象序列化成为 json 字符串时使用 JsonPropertyOrder 可以指定属性在 json 字符串中的顺序。 JsonInclude 在将 java pojo 对象序列化成为 json 字符串时使用 JsonInclude 注解可以控制在哪些情况下才将被注解的属性转换成 json例如只有属性不为 null 时。 JsonInclude(JsonInclude.Include.NON_NULL) 这个注解放在类头上返给前端的json里就没有null类型的字段即实体类与json互转的时候 属性值为null的不参与序列化。 另外还有很多其它的范围例如 NON_EMPTY、NON_DEFAULT等 10、在反序列化情况下生效的注解 JsonSetter JsonSetter 标注于 setter 方法上类似 JsonProperty 也可以解决 json 键名称和 java pojo 字段名称不匹配的问题。 作者简介哪吒CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家 专注Java硬核干货分享立志做到Java赛道全网Top N。 本文收录于Java基础教程系列目前已经700订阅CSDN最强Java专栏包含全部Java基础知识点、Java8新特性、Java集合、Java多线程、Java代码实例理论结合实战实现Java的轻松学习。 姐妹篇Java基础教程入门篇包含面向对象、基本数据类型、数组、继承和多态、泛型、枚举等Java基础知识点。 姐妹进阶篇Java基础教程进阶篇包含Java高并发、Spring、MySQL等Java进阶技术栈。 全部订阅可加入Java学习星球完成Java从入门、实战、进阶全方位的Java知识体系学习。 关注公众号回复1024获取Java学习路线思维导图 加入万粉计划交流群
http://www.w-s-a.com/news/21924/

相关文章:

  • joomla网站模板一个人做网站的swot
  • 南京建设网站需要多少钱深圳专业网站建设制作价格
  • 天河建网站装修公司线上推广方式
  • 超市网站怎么做的目前最流行的拓客方法
  • 做文字logo的网站贵阳商城网站开发
  • 沧州有没有做网站的中国建筑设计
  • 建设网站 系统占用空间在线代理浏览网站
  • 做海报有什么参考的网站网站建设验收合同
  • 酒店网站制作wordpress文章评论设置
  • 造一个官方网站wordpress mysql类
  • 怎么做卡商网站河南做网站找谁
  • 网站建设招标方案模板上线啦 图谱智能网站
  • 龙口网站建设公司哪家好wordpress 上传类型
  • 做外贸主要看什么网站服务平台的宗旨
  • 宜昌营销型网站购买网站
  • 如何查询网站建设时间wordpress 框架解析
  • 网站建设年终总结网站建设公司顺义
  • 网页给别人做的 网站后续收费吗获取更多付费流量
  • 金融交易网站建设金融 网站建设
  • 长沙网站建设联系电话怎么做表格
  • 网站怎么做域名实名认证龙华网站 建设信科网络
  • 企业网站规划方案网站是做排行榜
  • 万维网网站个人申请网站
  • 我想做网站怎么做昆山网站建设 全是乱码
  • 单位做网站怎么做圣诞树html网页代码
  • 网页开发与网站开发企业网站托管服务常用指南
  • 一站式服务图片临沂做进销存网站
  • 鸣蝉智能建站标准物质网站建设模板
  • 电商网站建设技术员的工作职责商业网站制作价格
  • 网站html模板免费下载公司的网站建设费用入什么科目