串行化

struts2 + ajax(从后台获取json格式的数据返回到前端,然后前端用jquery对json数据进行解析)

风格不统一 提交于 2020-03-23 13:47:38
Web2.0的随波逐流,Ajax那是大放异彩,Struts2框架自己整合了对Ajax的原生支持(struts 2.1.7+,之前的版本可以通过 插件 实现),框架的整合只是使得JSON的创建变得异常简单,并且可以简单的融入到Struts2框架中,当然这只是在我们需要JSON的时候才会显得流光溢彩。 首先不谈Struts2的原生支持,我们自己写一个ajax示例,使用异步请求,直接请求action动作: InfoAction.java package cn.codeplus.action;import com.opensymphony.xwork2.ActionSupport;publicclass InfoAction extends ActionSupport { privatestaticfinallong serialVersionUID =1359090410097337654L; public String loadInfo() { return SUCCESS; }} InfoAction仅仅是简单的返回"success"。 index.jsp <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>获取<

Unity中采用二进制存档与读档

允我心安 提交于 2020-03-17 20:59:08
在Unity中首先创建一个Save脚本,用于保存游戏中相关的信息,在这里我存储的是游戏中怪物的位置以及类型、游戏射击总数量、游戏得分等数据,Save脚本的代码如下(这个脚本是不能挂在在场景中的游戏物体上,因为这个类没有继承自MonoBehaviour行为类): using System . Collections ; using System . Collections . Generic ; using UnityEngine ; //串行化,串行化是指存储和获取磁盘文件、内存或其他地方中的对象。 [ System . Serializable ] public class Save { public List < int > livingTargetPosition = new List < int > ( ) ; public List < int > livingMonsterTypes = new List < int > ( ) ; public int shootNum = 0 ; public int score = 0 ; } 然后再创建一个脚本GameManager,并放置以下的方法: //创建Save对象并存储当前游戏状态信息 private Save CreateSaveGO ( ) { //新建Save对象 Save save = new Save ( )

java类和对象:类的序列化

我们两清 提交于 2020-03-01 10:20:03
1、序列化介绍 Java 串行化技术可以使你将一个对象的状态写入一个Byte流里,并且可以从其它地方把该Byte 流里的数据读出来,重新构造一个相同的对象。这种机制允许你将对象通过网络进行传播,并可以随时把对象持久化到数据库、文件等系统里。Java的串行化机制是RMI、EJB等技术的技术基础。 用途:利用对象的串行化实现保存应用程序的当前工作状态,下次再启动的时候将自动地恢复到上次执行的状态。 序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。 序列化是为了解决在对对象流进行读写操作时所引发的问题。 2、串行化的特点 (1)如果某个类能够被串行化,其子类也可以被串行化。如果该类有父类,则分两种情况来考虑,如果该父类已经实现了可串行化接口。则其父类的相应字段及属性的处理和该类相同;如果该类的父类没有实现可串行化接口,则该类的父类所有的字段属性将不会串行化。 (2)声明为 static和transient类型的成员数据不能被串行化 。因为static代表类的状态, transient代表对象的临时数据; (3)相关的类和接口:在java.io包中提供的涉及对象的串行化的类与接口有ObjectOutput接口、ObjectOutputStream类、ObjectInput接口

数据库基础笔记(二)

。_饼干妹妹 提交于 2020-02-20 13:06:48
接上篇 文章目录 10 transaction-view-index事物-视图-索引: transaction定义,ACID,导致事物结束的两种情况:commit,rollback/回滚rollback:导致回滚的情况,解决方法/sql4个隔离层级isolated level,选择/事物序列化的定义,操作/view的定义,种类,声明,结合触发器的视图,基表更改引起实例化视图更改问题以及解决方法/index索引定义,声明,使用索引优化数据库查询tuning的优点,缺点 transaction定义,ACID,commit roll back:导致回滚的情况,解决方法 sql4个隔离层级isolated level,选择 视图的定义,两种类别,声明,结合触发器的视图,视图实例化,基表更改引起实例化视图更改问题的解决方法 index索引定义,声明,使用索引优化数据库查询tuning的优点,缺点 11 psm持久型存储模块(存储过程),pl与sql: psm定义,参量的三种类型,声明,invoke调用,语法:判断,循环,指针,return/动态SQL声明,调用 psm定义,参量,声明,invoke,3个基本种类及作用,语法:判断,循环,指针 动态SQL的声明,调用 12 grant授权: 语法:授权(操作权限,授权权限),撤销授权revoke,撤销授权的两种选项/授权图的点,边,AP,P*

野猪

不羁的心 提交于 2019-12-06 15:18:37
由于数据存储期间,可能发生错误、故障的点特别多,比如网络中断、磁盘写满等,面对这些复杂的情况,应用层应付起来非常困难。所以就有了事务的概念,说道事务,我们最先能想到的就是:可以一次事务中将很多读写入操作打包成一个逻辑操作单元,整个事务不成功(Committed)便成仁(Rollback)。如果失败,应用层可根据情况安全地重试,不用担心部分写入的问题。 总的来说,事务就是一层抽象,为简化应用层编程模型而生!当然,并非所有的数据库都支持事务,但是对关系型数据库而言,这个基本是标配;某些 NoSQL 数据库可能因为性能、可用性以及扩展性考虑,而放弃了对事务的支持。另外,分布式数据库下,事务的实现会更加困难,并且执行开销也很大,但并不代表它不能实现。典型的 分布式关系数据库如 TiDB 以及 Google Spanner 就提供了事务支持。 深入理解 ACID Atomicity(原子性) :将多个写操作纳入一个原子事务中,并在故障(进程崩溃、网络中断、磁盘故障)发生时能够及时中止事务,并将部分完成的写入全部丢弃。 Consistency(一致性) : 对数据有特定的状态预期,任何数据变更必须满足这些状态约束(或者恒等条件) 应用进程应该负责保证这种一致性,数据库只是存储 这个更多的是应用层属性 ,所以 C 原本不属于 ACID,只是作者 Joe Hellerstein

数据库·并发控制原理

北城余情 提交于 2019-12-05 07:50:04
ref: https://blog.csdn.net/whyangwanfu/article/details/1926675 可串行化 事务集并发执行产生的任何调度的执行效果等价于这些事务按某个串行顺序执行的结果。 可串行化可通过并发控制机制( 两阶段封锁协议 )来保证。 冲突可串行化 只考虑read(X)与write(X)操作。 若一个调度S通过一系列非冲突指令交换(交换两条连续的不冲突的指令)与一个串行调度冲突等价,则调度S是冲突可串行化的。 视图可串行化 比冲突可串行化宽松。 可恢复性 可恢复调度 对于每对事务Ti与Tj,Tj读取了Ti写的数据,则Ti先于Tj提交 无级联调度 对于每对事务Ti与Tj,Tj读取了Ti写的数据,则Ti先于Tj的 读取 前提交 级联调度会因一个事务故障导致一系列事务回滚 隔离性的实现 只产生 冲突可串行化或视图可串行化且无级联的调度 可串行化判定 冲突可串行化检测 以事务为顶点,构造有向图,判环 Ti 中的 read(X) 在Tj中的 write(X) 之前 Ti 中的 write(X) 在Tj中的 read(X) 之前 Ti 中的 write(X) 在Tj中的 write(X) 之前 满足以上任意一条则构造一条边,Ti -> Tj 视图可串行化检测 NP完全问题 并发控制 锁的授予 共享锁S,读锁 排他锁X,写锁 Q:如何避免申请排他锁的事务饿死

什么是java序列化,如何实现java序列化?或者请解释Serializable接口的作用。

六眼飞鱼酱① 提交于 2019-11-28 15:50:13
首先要明确序列化的目的: 1.无论何种类型的数据,都是以二进制的形式在网络上传送,为了由一个进程把Java对象发送给另一个进程,需要把其转换为字节序列才能在网络上传送,把JAVA对象转换为字节序列的过程就称为对象的序列化,将字节序列恢复成Java对象的过程称为对象的反序列化,(然后java.io.ObjectOutPutStream的writeObject(Object obj)的方法就可以 将参数指定的对象进行序列化 并且把得到的字节流写到一个目标输出流上去) 2.只有实现了 serializable和Externalizable接口的类的对象才能被序列化 后者是前者的子类 实现这个借口的类完全由自身来控制序列化的行为,而仅仅实现前者的类可以采用默认的序列化方式。实现这两个接口 标志着对象可以被序列化了。。。 摘要 Java 串行化技术可以使你将一个对象的状态写入一个Byte 流里,并且可以从其它地方把该Byte 流里的数据读出来,重新构造一个相同的对象。 Java 串行化技术可以使你将一个对象的状态写入一个Byte 流里,并且可以从其它地方把该Byte 流里的数据读出来,重新构造一个相同的对象。这种机制允许你将对象通过网络进行传播,并可以随时把对象持久化到数据库、文件等系统里。Java的串行化机制是RMI、EJB等技术的技术基础。用途