Java(高级特性(并发+事务+消息服务+安全))

(一)并发编程Java 通过 Executor 提供四种线程池

              Executor框架是指 java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor、

Executors,ExecutorService,CompletionService,Future,Callable等

             并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个Executor执行,

Executor.execute(Runnalbe) ,Executor在执行时使用内部的线程池完成操作

                                  

 

(二)事务(JTA+JTS)

         事务是一组原子操作单元,从数据库角度说,就是一组SQL指令,要么全部执行成功,若因为某个原因其中一条指令执行

有错误,则撤销先前执行过的所有指令。更简答的说就是:要么全部执行成功,要么撤销不执行(解决数据安全操作)

        实际上,一个Java应用系统,如果要操作数据库,则通过JDBC来实现的。增加、修改、删除都是通过相应方法间接来实现

的,事务的控制也相应转移到Java程序代码中。因此,数据库操作的事务习惯上就称为Java事务

         Java 事务的类型有三种:JDBC事务、JTA(Java Transaction API)事务、容器事务

       1、JDBC事务

           JDBC 事务是用 Connection 对象控制的。JDBC Connection 接口( java.sql.Connection )提供了两种事务模式:自动

提交和手工提交。

           使用 JDBC 事务界定时,可以将多个 SQL 语句结合到一个事务中。JDBC 事务的一个缺点是事务的范围局限于一个数

据库连接。一个 JDBC 事务不能跨越多个数据库。

       2、JTA(Java Transaction API)事务(分布式事务处理)

          JTA是一种高层的,与实现无关的,与协议无关的API,应用程序和应用服务器可以使用JTA来访问事务

          JTA允许应用程序执行分布式事务处理——在两个或多个网络计算机资源上访问并且更新数据,这些数据可以分布在多个

数据库上。JDBC驱动程序的JTA支持极大地增强了数据访问能力。

       3、三种Java事务差异

           (1)JDBC事务控制的局限性在一个数据库连接内,但是其使用简单。

           (2)JTA事务的功能强大,事务可以跨越多个数据库或多个DAO,使用也比较复杂。

           (3)容器事务,主要指的是J2EE应用服务器提供的事务管理,局限于EJB应用使用。

       4、Java事务控制是构建J2EE应用不可缺少的一部分,合理选择应用何种事务对整个应用系统来说至关重要。一般说来,

在单个JDBC 连接连接的情况下可以选择JDBC事务,在跨多个连接或者数据库情况下,需要选择使用 JTA事务 ,如果用到了

EJB,则可以考虑使用EJB容器事务

 

(三)Java消息服务(JMS)

             JMS是一个用于提供消息服务的技术规范,制定了在整个消息服务提供过程中的所有数据结构和交互流程。而MQ则是

消息队列服务,是面向消息中间件(MOM)的最终实现,是真正的服务提供者(MQ的实现可以基于JMS,也可以基于其他规范

或标准

              MQ 全称为Message Queue,消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的

消息(针对应用程序的数据)来通信,而无需专用连接来链接它们(以管道的方式做消息传递

              MQ框架:RabbitMQ、ActiveMQ、ZeroMq 三者中,综合来看,RabbitMQ是首选

              (1)RabbitMQ:是用天生具有高并发、高可用的 Erlang 语言进行编写的。基于AMQP协议,Erlang是天然集群化的语言

              (2)ActiveMQ:是用 java 语言开发的,与java程序有天然的耦合性,基于STOMP协议

               

 

(四)安全机制

           Java的安全是目前的编程语言中最优秀的一种,Java技术之所以适用于网络就是因为有完备的、设计到其结构中

的安全模式


                                                    

              1、Java语言本身嵌入了安全特性,其中包括编译器/JVM对强数据类型的支持,自动的内存管理,字节代码的验证机制

以及独特的安全类加载方式

              2、密码体系

              3、JAAS

              4、安全通信

              5、PKI体系

              6、Java沙箱模型

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java-Base64算法_创新_防止表单重复提交 JAVA企业级基础课题(HashMap那些事) 企业架构师必备技能(JAVA核心技术反射) JavaWeb之基础(手写实现Tomcat服务器) java多线程编程 纯手写实现SpringIOC实现过程 JEE企业级开发(企业级项目开发权威指南) 网络爬虫之JAVA正则表达式 手写springMVC框架 老司机带你透析springMVC内部实现方式 打造高效代码结构(java性能优化) 新版本通俗易懂_观察者模式递进时讲解 ibatis连接数据库 高并发之单(多)生产者消费者线程 高并发复用数据库链接技术详解之数据库连接池 类载器的高级特性(自定义类器实现密解密) iBATIS开源主流框架(实现半自动化hibernate) 企业实用技能之详解(眼睛横纹模式验证码防止恶意登陆) 动态页面的静态化处理 图片上传技术 在springMVC中实现原始的Excel文件下载方式 企业级分布式缓存技术之(redis详解) 企业高并发基石(Tomcat服务器性能优化) spring事务处理 课程文档 高并发之基础数据MySql调优 mongodb 三级联动课程资料 应用架构之灵魂设计模式 应用架构之魂设计模式实战演练应用架构之魂设计模式实战演练 揭开springAOP神秘面纱(动态代理) Mysql性能优化之索引优化 写实现Tomcat服务器 移动后台端框架设计 公司级框架原理解析 解密公司内部框架开发(打造属于自己的专属框架) 手写Tomca之深度解析动态资源请求原理 深度解析springMVC实现原理(手写springMVC框架) Java验证码 正则黑名单爬虫系统 深入数据库连接池内部运转原理 分布式服务下的交易一致 企业必备技能之面向服务编程Web-Service详解 分布式服务下的交易一致性原理及解决 分布式服务框架(dubbo+zookpeer) WEB高级前后台分离思维-懒载无限级树形菜单 动态页面的静态化处理并发展示优化,动态页面的静态化 深入理解JDK动态代理本质 企业级高并发缓存解决方案 性能优化之Oracle语句优化雾区 前后台数据验证架构源码级解析 session跨域共享 JAVANIO原理详解 高并发数据库(Mysql数据库性能优化) 软件质量管控 企业常用框架springMVC基于注解+xml配置方式实现链接 WEB服务器优化之Tomcat7性能调优 JVM概述 Java开发技术之(项目工程的日志管理) 数据库连接池原理详解 Java企业级框架之核心技术(反射) Java-Base64算法(创新_防止表单重复提交) 揭开springAOP神秘面纱之动态代理 网络爬虫之JAVA正则表达式

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值